首页> 中国专利> 一种确定移动自组织网络中IP地址与MAC地址的方法

一种确定移动自组织网络中IP地址与MAC地址的方法

摘要

本发明属于移动自组织网络领域,具体涉及移动自组织网络所使用的网络层和数据链路层协议。本发明设计一种确定移动自组网中各节点对应的IP地址和MAC地址的方法,通过采集目标网络通信的数据包,对每个数据包进行追踪,找出每个数据包传送的路径,每个数据包的起点和终点都能确定发送方和接收方节点对应的MAC地址和IP地址。

著录项

  • 公开/公告号CN103945368A

    专利类型发明专利

  • 公开/公告日2014-07-23

    原文格式PDF

  • 申请/专利权人 电子科技大学;

    申请/专利号CN201410133316.8

  • 申请日2014-04-03

  • 分类号

  • 代理机构成都宏顺专利代理事务所(普通合伙);

  • 代理人李顺德

  • 地址 611731 四川省成都市高新区(西区)西源大道2006号

  • 入库时间 2023-12-17 01:29:34

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-03-22

    未缴年费专利权终止 IPC(主分类):H04W8/26 授权公告日:20170630 终止日期:20180403 申请日:20140403

    专利权的终止

  • 2017-06-30

    授权

    授权

  • 2014-08-20

    实质审查的生效 IPC(主分类):H04W8/26 申请日:20140403

    实质审查的生效

  • 2014-07-23

    公开

    公开

说明书

技术领域

本发明属于移动自组织网络领域,具体涉及移动自组织网络所使用的网络层和数据链路层协议。 

背景技术

MAC(Media Access Control)地址用来定义网络设备的位置,由数据链路层负责MAC地址。IP地址是给每个连接在Internet上的主机分配的一个地址,由网络层负责IP地址。当一台主机连接到Internet中,该主机就获得一个IP地址,该IP地址和MAC地址可以作为这台主机的标识。 

对目标无线网络侦察,可以获得目标网络中的包,但不能向目标网络发送ARP包,即不能通过ARP解析获得某个MAC地址对应的IP地址。通过对侦察获得的每个数据包进行追踪,可以获知每个数据包经过的路径,这有助于对移动自组网进行流量分析,同时也可以完善网络拓扑结构。本专利提出一种确定移动自组网中各节点对应的MAC地址与IP地址的方法。 

发明内容

本发明的目的在于提供一种确定移动自组网中各节点对应的MAC地址与IP地址的方法。 

本发明的目的通过如下步骤实现: 

S1、对目标网络进行数据包采集,对采集到的数据包进行筛选,舍弃目标网络中用于控制和管理的数据包,得到筛选后的数据包; 

S2、对S1所述的筛选后的数据包进行分析,提取每个筛选后的数据包的IP首部和数据链路层中的MAC地址放入结构体IPdata中,S1所述的数据包采集开始的前两分钟提取的数据存入链表IPheaderListbegin,S1所述的数据包采集结束前两分钟提取的数据存入链表IPheaderListend,S1所述的数据包采集剩下数据包提取的数据存入链表IPheaderList,其中,所述MAC地址包括MAC的源地址和目的地址; 

S3、取出S2中所述链表IPheaderList头指针P,P指向的节点记作IPDgn,其中,IPDgn为一次通信的源包,n为不为零的自然数; 

S4、取IPDgn的下一个数据包,记作IPDg(n+a),对IPDgn和IPDg(n+a)进行比较,若IPDgn和IPDg(n+a)代表同一个数据包,则执行S5,若IPDgn和IPDg(n+a)不为同一个数据包,则选取IPDg(n+a+1)重复执行S4,其中,数据包相同需要满足以下条件,条件包括:IPDgn中的目的MAC地址和IPDg(n+a)中的源MAC地址一致,IPDgn中的TTL值比IPDg(n+a)中的TTL值小,IPDgn中的源IP地址和IPDg(n+a)中的源IP地址一致, IPDgn中的目的IP地址和IPDg(n+a)中的目的IP地址一致,IPDgn中的检验和与IPDg(n+a)中的检验和相等,a为大于等于1的自然数,a小于链表长度; 

S5、认为IPDg是源包,IPDg(n+a)为终点包,则把IPDg中的源MAC地址和源IP地址作为地址对放入链表Addresses中,并把该地址对出现的次数加1,执行S3,若链表IPheaderList头指针指向链表尾,则结束。 

进一步地,S4所述检验和为IP首部检验和。 

进一步地,S4所述IPDgn和IPDg(n+a)不为同一个包,则抛弃IPDg(n+a)。 

进一步地,所述MAC地址可能对应一个或多个IP地址,认为出现次数最多的地址对是正确的。 

本发明的有益效果是:搜集移动自组织网络中通信的数据包,通过对每个包进行追踪,找出每个包经过的路径,根据经过的路径确定其数据包的起点和终点,由起点和终点的包确定节点对应的IP地址和MAC地址。 

附图说明

图1为IP协议首部字段。 

图2为一个基于AODV路由协议的移动自组网的拓扑图。 

图3为802.11协议帧格式中Frame control字段具体格式。 

具体实施方式

下面结合附图来说明本发明的具体实施方式: 

创建一个移动移动自组织网络,基于AODV路由协议实验平台,网络层采用IPv4协议,数据链路层采用802.11协议,通过互相发送ping命令产生数据。用Linux系统下Wireshark搜集数据,开启混杂模式(mon0),收集覆盖范围内的所有数据包。在Windows系统下,用Microsoft visual studio2008编写的程序对采集的数据进行分析。具体实施方式如下: 

步骤1、构建一个移动自组织网络,由四个节点组成直线型结构,见图2,采用基于AODV路由协议实验平台,网络层采用IPv4协议,数据链路层采用802.11协议,互相发送ping命令产生数据,用Linux系统下Wireshark搜集数据。 

步骤2、对收集的数据进行筛选。过滤掉目标网络中MAC帧是控制帧和管理帧,只保留MAC帧是Data类型或Data QoS类型、目的MAC地址是单播地址、目的IP地址是单播地址。在MAC帧头部Frame control字段(见图3)中,有种类和子类两部分,种类有控制帧(01),管理帧(00),数据帧(10)。Frame control字段低8位值记为macFrameType。若(macFrameType&0x0C)==0x08,则保留;否则都抛弃。 

步骤3、定义结构体IPdata,成员有:sourcemacaddress、destinationmacaddress、 version、headerlength、servicetype、totallength、identification、flag、fragmentoffset、TTL、protocol、checksum、sip、dip。定义链表IPmaptoMAC,每个元素成员有:macaddres、ipaddres、count。定义链表newIPmaptoMAC,成员有:MACaddress、IPaddress。提取筛选下来的数据包的IP首部和MAC地址(含源和目的),把所有字段分别放入结构体IPdata中,把该结构体作为一个元素存入链表IPheaderList中; 

步骤4、取链表IPheaderList的头结点,记为IPDg,令IPDg1=IPDg,把链表头指针pipdata移至下一位,且删除头结点。 

步骤5、若链表为空,执行步骤7;否则,读取表中下一个元素给IPDg2,有四个条件IPDg1.TTL比IPDg2.TTL大1、IPDg1.destinationmacaddress和IPDg2.sourcemacaddress相等、IPDg1.sip和IPDg2.sip相等、IPDg1.dip和IPDg2.dip相等,若其中有一个条件不满足,则跳转步骤5;否则,执行步骤6,。 

步骤6、用IPDg2.TTL替换IPDg1.TTL,根据IP首部校验和计算方法,重新计算IPDg1的检验和,记为sum。若sum≠IPDg2.checksum,则执行步骤5;否则,认为IPDg2为IPDg1的下一跳数据包,令IPDg1=IPDg2,并删除IPDg2这个节点,若IPDg2.TTL==0,则执行步骤7;否则,执行步骤5。 

步骤7、认为IPDg为源包,IPDg1为终点包。此时认为IPDg中源IP地址和源MAC地址是相对应的,IPDg1中目的IP地址和目的MAC地址是相对应的。把这两个地址对放入链表IPmaptoMAC中,若链表中已存在该地址对,则count++;若不存在,则count=1。若链表头指针pipdata指向空(NULL),则执行步骤8;否则,执行步骤4。 

步骤8、取链表IPmaptoMAC头结点,记为Address,并删除该节点。取链表IPmaptoMAC中所有与Address.macaddres相同的结点,认为count值最大时对应的链表元素中的地址对是正确的,记该链表元素为rightaddress。把rightaddress中的地址对放入链表newIPmaptoMAC中,并删除链表IPmaptoMAC中所有与Address.macaddres相同的结点。 

步骤9、若链表IPmaptoMAC为空,则结束;否则,执行步骤8。 

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号