本发明专利技术提供了一种获取MAC地址的方法,包括以下步骤:基于操作系统内核中VLAN模块获取到网络数据帧;通过所述网络数据帧获取VLAN Tag和数据包来源并将MAC地址记录下来;将上述获取的VLAN Tag进行标记并记录对应的MAC地址,本发明专利技术可以方便获取LAN口对应的IPC的MAC地址,以及不通过VLAN网卡也可以和VLAN中的IPC正常进行网络通讯。
【技术实现步骤摘要】
一种获取MAC地址的方法
本专利技术涉及网络配置管理领域,具体涉及一种获取MAC地址的方法。
技术介绍
网络设备的配置管理包括一组对辨别、定义、控制和监视组成一个通信网络的对象所必要的相关功能。辨别、监视网络设备则一般基于网络设备的探测。网络录像机(NVR)需要管理不同类型和不同IP地址的网络摄像机(IPC)并能够获取音视频流和录像,首先需要能够探测各种摄像机。对于带交换机功能的网络录像机,则需要知道每个交换机端口(LAN口)对应的IPC的MAC地址,通过MAC地址获取IPC的相关信息,从而可以将IPC和NVR的通道关联起来,进行IPC的配置、音视频的获取、显示、录像等操作。交换机端口和录像机通道的关联一般通过两种方案来实现:1、交换机自带MAC记录功能,通过交换机配置功能获取IPC的MAC地址。2、交换机无MAC记录,通过虚拟局域网(VLAN)技术获取IPC的MAC地址。第一种方案需要的交换机芯片硬件成本较高,因此目前大多数NVR多采用第二种方案。基于VLAN方案的NVR与IPC的交互示意图如图1所示。虚拟局域网即VLAN(VirtualLocalAreaNetwork),是一种通过将局域网内的设备逻辑地而不是物理地划分成一个个网段的技术。VLAN技术允许网络管理者将一个物理的LAN逻辑地划分成不同的广播域(或称虚拟LAN,即VLAN),每一个VLAN都包含一组有着相同需求的计算机工作站,与物理上形成的LAN有着相同的属性。VLAN是为解决以太网的广播问题和安全性而提出的,它在以太网帧的基础上增加了VLAN头,用VLANTag把用户划分为更小的工作组,每个工作组就是一个虚拟局域网。虚拟局域网的好处是能够形成虚拟工作组,动态管理网络。将LAN口划入到不同的VLAN,IPC接入LAN口后,IPC的数据包经过交换机时自动为数据包加上VLAN帧头,VLAN帧头中包含了VLANTag。CPU接收到到带VLAN帧头的数据包之后自动转发到相应的虚拟网卡。以图1中为例,应用程序从VLAN1对应虚拟网eth0:1收到的数据就必定来自IPC1,通过解析数据包中的来源MAC地址就可以知道IPC的MAC地址。进而通过MAC地址进行IPC的IP设置等操作,设置IPC的IP与虚拟网卡在同一网段时,就可以通过IPC的IP对IPC进行一系列管理操作了。目前采用虚拟网卡技术方案获取IPC的MAC地址并和IPC通讯的主要问题有:(1)虚拟网卡的管理较为复杂。需要通过虚拟网卡专用配置工具在操作系统中添加或者删除虚拟网卡。每个虚拟网卡需要配置不同的IP段和子网掩码,当系统需要变更自身的IP时,则所有的虚拟网卡的IP和子网掩码都需要变更,如果管理不当容易出现各虚拟网卡所属的子网出现冲突导致与摄像机的通讯出现问题。(2)探测设备时需要向所有的虚拟网卡发送数据包并检测回应包,一般需要多线程实现,增加了对系统资源消耗。(3)修改摄像机的IP时需要明确摄像机和虚拟网卡的对应关系,否则需要向所有虚拟网卡发送管理包。以上问题导致基于虚拟网卡的NVR网络配置管理复杂度较高,研发成本增加。而采用自带MAC记录功能的交换机硬件成本也较高。现有的技术中带交换机功能的NVR对IPC的MAC地址的记录一般有以下步骤:(1)、网络录像机将交换机的每个LAN口放到不同的VLAN中,并设置不同的VLANTag,设置后交换机对收到的数据包自动加上VLAN帧头。VLAN帧头(4个字节)的格式表1所示:表1PRI:帧优先级。CFI:规范标识位。TAG:VLANID。(2)、录像机自身创建多个虚拟网卡对应不同的VLAN,从而对应到相应的LAN口,即从某个虚拟网卡收到的数据包一定是从相应的LAN口接入的摄像机发出的;(3)、网络录像机向所有的虚拟网卡即所有的LAN口通过广播的形式发送探测数据包;(4)、网络摄像机收到的探测包之后,通过广播、组播或者单播的形式发送该对应的回应包到发送探测包的网络录像机;(5)、网络录像机在每个虚拟网卡上收取探测回应包并解析出相应的摄像机信息,从而将摄像机和虚拟网卡对应起来,并根据(2)中所述的虚拟网卡和LAN口的对应关系推导出摄像机MAC地址与LAN口的关系。对于带交换机功能的网络录像机,各通道与LAN口是一一对应关系,通过探测确定了IPC的MAC地址与LAN口的对应关系之后,就明确了NVR各通道与IPC的关系,将IPC与NVR的各通道绑定,就达到了方便管理摄像机的目的,可以较容易的实现摄像机的自动化管理。参照图2所示,现有技术方案的获取IPCMAC地址流程,导致现有方案比较复杂的原因在于必须使用虚拟网卡才能从内核中收到各VLAN的数据包。因此应用程序需要管理各VLAN网卡,并对各网卡分别进行数据读写操作。
技术实现思路
为了解决上述不足的缺陷,本专利技术提供了一种获取MAC地址的方法,可直接通过内核查询到VLAN对应IPC的MAC地址,其中获取IPC的MAC地址为一其中的一种实施方式,但是包括但不限于IPC,基本上以太网设备都可以实现。本专利技术提供了一种获取MAC地址的方法,包括以下步骤:基于操作系统内核中VLAN模块获取到网络数据帧;通过所述网络数据帧获取VLANTag和数据包来源并将MAC地址记录下来;将上述获取的VLANTag进行标记并记录对应的MAC地址。上述的方法,其中,所述将上述获取的VLANTag进行标记并记录对应的MAC地址的步骤中,应用程序通过上述的VLANTag标记可直接向内核查询到VLAN模块对应IPC的MAC地址。上述的方法,其中,所述将上述获取的VLANTag进行标记并记录对应的MAC地址的步骤中,将VLANTag设置为0。上述的方法,其中,所述基于操作系统内核中VLAN模块获取到网络数据帧的步骤包括:网络录像机将交换机的每个LAN口放到不同的VLAN模块中,并设置不同的VLANTag,设置后交换机对收到的数据包自动加上VLAN帧头。本专利技术具有以下优点:(1)可以方便获取LAN口对应的IPC的MAC地址。(2)不通过VLAN网卡也可以和VLAN中的IPC正常进行网络通讯。附图说明通过阅读参照以下附图对非限制性实施例所作的详细描述,本专利技术及其特征、外形和优点将会变得更明显。在全部附图中相同的标记指示相同的部分。并未刻意按照比例绘制附图,重点在于示出本专利技术的主旨。图1为现有技术中带交换机功能的NVR的VLAN示意图。图2为现有技术中获取各LAN口对应的的MAC的流程图。图3为本专利技术获取IPCMAC地址的流程图。具体实施方式在下文的描述中,给出了大量具体的细节以便提供对本专利技术更为彻底的理解。然而,对于本领域技术人员而言显而易见的是,本专利技术可以无需一个或多个这些细节而得以实施。在其他的例子中,为了避免与本专利技术发生混淆,对于本领域公知的一些技术特征未进行描述。为了彻底理解本专利技术,将在下列的描述中提出详细的步骤以及详细的结构,以便阐释本专利技术的技术方案。本专利技术的较佳实施例详细描述如下,然而除了这些详细描述外,本专利技术还可以具有其他实施方式。参照图1-图3所示,本专利技术提供了一种获取MAC地址的方法,包括以下步骤:步骤S1:基于操作系统内核中VLAN模块获取到网络数据帧,其中包括,基于操作系统内核中VLAN模块获取到网络数据帧的步骤包括:网本文档来自技高网...
【技术保护点】
一种获取MAC地址的方法,其特征在于,包括以下步骤:基于操作系统内核中VLAN模块获取到网络数据帧;通过所述网络数据帧获取VLAN Tag和数据包来源并将MAC地址记录下来;将上述获取的VLAN Tag进行标记并记录对应的MAC地址。
【技术特征摘要】
1.一种获取MAC地址的方法,其特征在于,包括以下步骤:基于操作系统内核中VLAN模块获取到网络数据帧;通过所述网络数据帧获取VLANTag和数据包来源并将MAC地址记录下来;将上述获取的VLANTag进行标记并记录对应的MAC地址。2.如权利要求1所述的一种获取MAC地址的方法,其特征在于,所述将上述获取的VLANTag进行标记并记录对应的MAC地址的步骤中,应用程序通过上述的VLANTag标记可直接向内核查询到VLAN模块对...
【专利技术属性】
技术研发人员:喻坤,操勇,张林,
申请(专利权)人:武汉卓威视讯科技有限公司,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。