CN105245639A - 一种主机及其ip地址冲突预防方法 - Google Patents
一种主机及其ip地址冲突预防方法 Download PDFInfo
- Publication number
- CN105245639A CN105245639A CN201510802564.1A CN201510802564A CN105245639A CN 105245639 A CN105245639 A CN 105245639A CN 201510802564 A CN201510802564 A CN 201510802564A CN 105245639 A CN105245639 A CN 105245639A
- Authority
- CN
- China
- Prior art keywords
- address
- arp
- request
- mac address
- gateway
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5046—Resolving address allocation conflicts; Testing of addresses
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明实施例提供一种主机及其IP地址冲突预防方法,其中预防方法包括:主机获取自身IP地址和自身MAC地址,根据自身IP地址和自身MAC地址建立ARP请求包,其中,该ARP请求包中接收方IP地址设置为自身IP地址,将该ARP请求包广播至网络上的所有主机,判定是否接收到该网络上其他主机返回的目的ARP响应包,若接收到,则根据该目的ARP响应包确定目的主机,向网关发送IP地址修改请求,请求网关将该目的主机的IP地址设置为0。保证了主机IP地址的唯一性,有效预防了主机因为IP地址冲突而无法正常访问网络情况的发生。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种主机及其IP地址冲突预防方法。
背景技术
随着高科技时代的到来,网络成为了人们不可或缺的一部分,人们的工作学习和生活都离不开网络,通过网络可以使得世界两端的人进行沟通交流、共享经验。在网络世界中,每台主机均应具有唯一的IP(InternetProtocol,网络之间互连的协议)地址,如果一台主机其具有的IP地址不唯一(IP地址冲突),将会导致该主机无法正常访问网络。因此,保证每台主机具有唯一的IP地址,避免IP地址冲突十分重要。
发明内容
有鉴于此,本发明实施例提供一种主机及其IP地址冲突预防方法,以保证每台主机具有唯一的IP地址,避免IP地址冲突。
为实现上述目的,本发明实施例提供如下技术方案:
一种IP地址冲突预防方法,包括:
获取自身IP地址和自身MAC地址,根据所述自身IP地址和自身MAC地址建立ARP请求包,其中,所述ARP请求包中接收方IP地址设置为所述自身IP地址;
将所述ARP请求包广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包;
若接收到,则根据所述目的ARP响应包确定目的主机,向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0。
其中,所述根据所述自身IP地址和自身MAC地址建立ARP请求包包括:
建立物理帧头,将所述物理帧头中发送方MAC地址设置为所述自身MAC地址,将所述物理帧头中接收方MAC地址设置为空;
建立ARP帧,将所述ARP帧中发送方MAC地址设置为所述自身MAC地址,将所述ARP帧中接收方MAC地址设置为空,并将所述ARP帧中发送方IP地址和接收方IP地址均设置为所述自身IP地址。
其中,所述建立物理帧头,将所述物理帧头中发送方MAC地址设置为所述自身MAC地址,将所述物理帧头中接收方MAC地址设置为空后还包括:
设置所述物理帧头中硬件类型字段、协议类型字段、硬件地址长度、协议地址长度和操作字段。
其中,所述判断是否接收到所述网络上其他主机返回的目的ARP响应包包括:
判断是否接收到ARP响应包;
若接收到,则根据所述ARP响应包获取发送所述ARP响应包的主机的MAC地址,判断所述MAC地址与所述自身MAC地址是否相同;
若不同,则判定接收到所述网络上其他主机返回的ARP响应包。
其中,所述根据所述目的ARP响应包确定目的主机包括:
对所述目的ARP包进行解析,提取所述目的ARP响应包中的发送方MAC地址,得到所述目的主机的MAC地址。
其中,所述向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0后还包括:
将所述ARP请求包再次广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包;
若接收到,则重新向所述网关发送IP地址修改请求,直至不再接收到所述网络上其他主机返回的目的ARP响应包。
其中,所述向网关发送IP地址修改请求后还包括:
从零开始累计向所述网关发送IP地址修改请求的次数;
若所述次数大于预设数值,则输出错误信息,停止重新向所述网关发送IP地址修改请求,将所述次数归零。
一种主机,包括:请求包建立模块、广播判断模块和请求发送模块;其中,
所述请求包建立模块,用于获取自身IP地址和自身MAC地址,根据所述自身IP地址和自身MAC地址建立ARP请求包,其中,所述ARP请求包中接收方IP地址设置为所述自身IP地址;
所述广播判断模块,用于将所述ARP请求包广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包;
所述请求发送模块,用于当所述广播判定模块判定接收到所述网络上其他主机返回的目的ARP响应包时,根据目的ARP响应包确定目的主机,向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0。
其中,所述请求包建立模块包括:帧头建立单元和帧建立单元;其中,
所述帧头建立单元,用于建立物理帧头,将所述物理帧头中发送方MAC地址设置为所述自身MAC地址,将所述物理帧头中接收方MAC地址设置为空;
所述帧建立单元,用于建立ARP帧,将所述ARP帧中发送方MAC地址设置为所述自身MAC地址,将所述ARP帧中接收方MAC地址设置为空,并将所述ARP帧中发送方IP地址和接收方IP地址均设置为所述自身IP地址。
其中,所述主机,还包括:广播请求模块和计数模块;其中,
所述广播请求模块,用于在所述请求发送模块向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0后,将所述ARP请求包再次广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包,若接收到,则重新向所述网关发送IP地址修改请求,直至不再接收到所述网络上其他主机返回的目的ARP响应包;
所述计数模块,用于从零开始累计向所述网关发送IP地址修改请求的次数,若所述次数大于预设数值,则输出错误信息,控制所述广播请求模块停止重新向所述网关发送IP地址修改请求。
基于上述技术方案,本发明实施例提供的主机及其IP地址冲突预防方法,获取自身IP地址和自身MAC地址,并根据自身IP地址和自身MAC地址建立ARP请求包,其中,将该建立的ARP请求包中接收方IP地址设置为自身IP地址,然后将该建立的ARP请求包广播至网络上的所有主机,判断是否接收到该网络上其他主机返回的目的ARP响应包,若接收到,则根据该目的ARP响应包确定目的主机,然后向网关发送IP地址修改请求,请求该网关将该目的主机的IP地址设置为0。在访问网络前,主机可通过建立将接收方IP地址设置为自身IP地址的ARP请求包,并向全网广播该ARP请求包,判断是否接收到网络上其他主机返回的目的ARP响应包,来判断网络中是否存在与其自身IP地址相同的其他主机,若判定接收到网络上其他主机返回的目的ARP响应包,即可判定该网络中存在与该主机自身IP地址相同的其他主机,即判定存与该主机自身IP地址冲突的目的主机,则通过向网关发送IP地址修改请求来将该目的主机的IP地址设置为0,来将该目的主机的IP地址修改为与本主机不同,从而保证了该主机自身IP地址的唯一性,有效预防了该主机因为IP地址冲突而无法正常访问网络情况的发生。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的IP地址冲突预防方法的流程图;
图2为本发明实施例提供的IP地址冲突预防方法中根据自身IP地址和自身MAC地址建立ARP请求包的方法流程图;
图3为本发明实施例提供的IP地址冲突预防方法中判断是否接收到网络上其他主机返回的目的ARP响应包的方法流程图;
图4示出了本发明实施例提供的IP地址冲突预防方法中根据目的ARP响应包确定目的主机的方法流程图;
图5示出了本发明实施例提供的IP地址冲突预防方法中重新向网关发送IP地址修改请求的方法流程图;
图6示出了本发明实施例提供的IP地址冲突预防方法中停止重新向网关发送IP地址修改请求的方法流程图;
图7为本发明实施例提供的主机的系统框图;
图8示出了本发明实施例提供的主机中请求包建立模块的结构框图;
图9示出了本发明实施例提供的主机的另一系统框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的IP地址冲突预防方法的流程图,主机通过建立将接收方IP地址设置为自身IP地址的ARP请求包,并向全网广播该ARP请求包,来判断网络中是否存在与其自身IP地址相同的其他主机,若判定存在,则向网关发送IP地址修改请求来将该目的主机的IP地址设置为0,将该目的主机的IP地址修改为与本主机不同,从而保证了该主机IP地址的唯一性,有效预防了该主机因为IP地址冲突而无法正常访问网络情况的发生;参照图1,该IP地址冲突预防方法可以包括:
步骤S100:获取自身IP地址和自身MAC地址,根据所述自身IP地址和自身MAC地址建立ARP请求包,其中,所述ARP请求包中接收方IP地址设置为所述自身IP地址;
其中,IP(InternetProtocol,网络之间互连的协议)地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址。MAC(MediaAccessControl或者MediumAccessControl,媒体访问控制)地址,也叫物理地址,用来定义网络设备的位置。MAC地址是网卡决定的,因此,一台主机对应一个MAC地址,而每个网络位置会有一个专属于它的IP地址。因此,每台访问网络的主机均具有其对应的IP地址和MAC地址,即具有自身IP地址和自身MAC地址。
可选的,可以通过建立物理帧头,将该物理帧头中发送方MAC地址设置为主机自身MAC地址,将该物理帧头中接收方MAC地址设置为空,建立ARP帧,将该ARP帧中发送方MAC地址设置为主机自身MAC地址,将该ARP帧中接收方MAC地址设置为空,并将该ARP帧中发送方IP地址和接收方IP地址均设置为主机自身IP地址,来建立ARP(AddressResolutionProtocol,地址解析协议)请求包。
其中,在建立物理帧头后,除将该物理帧头中发送方MAC地址设置为主机自身MAC地址,将该物理帧头中接收方MAC地址设置为空外,还可相应得设置物理帧头中硬件类型字段、协议类型字段、硬件地址长度、协议地址长度和操作字段。
步骤S110:将所述ARP请求包广播至网络上的所有主机;
将建立的ARP请求包中接收方IP地址设置为主机自身IP地址,当将该ARP请求包广播至网络上的所有主机上后,若该网络中存在与该主机具有相同IP地址的其他主机,即目的主机,则该目的主机将会向该主机返回一个ARP响应包,该ARP响应包中将包括该目的主机的MAC地址。
步骤S120:判断是否接收到所述网络上其他主机返回的目的ARP响应包;
可选的,因为主机将其建立的ARP请求包广播至网络上的所有主机后,该主机可能会接收到自己发送给自己的ARP响应包,因此,在将建立的ARP请求包广播至网络上的所有主机后,可以通过先判断是否接收到ARP响应包,当接收到ARP响应包时,根据接收的ARP响应包获取发送该ARP响应包的主机的MAC地址,再通过判断发送该ARP响应包的主机的MAC地址是否与该主机自身MAC地址是否相同,来判断是否接收到网络上其他主机返回的目的ARP响应包。
若判定发送该ARP响应包的主机的MAC地址与该主机自身MAC地址不相同,则判定接收到网络上其他主机返回的目的ARP响应包,反之,若判定发送该ARP响应包的主机的MAC地址与该主机自身MAC地址相同,则判定未接收到网络上其他主机返回的目的ARP响应包,该ARP响应包为该主机自己发送。
可选的,为防止等待ARP相应包的时间过长,可预先设置等待时间,在将ARP请求包广播至网络上的所有主机后,若在该预设等待时间内接收到网络上其他主机返回的目的ARP响应包,则根据所述目的ARP响应包确定目的主机,继续后续操作;若在将ARP请求包广播至网络上的所有主机后,没有在该预设等待时间内接收到网络上其他主机返回的目的ARP响应包,则认为无目的ARP响应包返回,终止后续操作。
步骤S130:若接收到,则根据所述目的ARP响应包确定目的主机,向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0。
若接收到网络上其他主机返回的目的ARP响应包,则根据该目的ARP响应包确定目的主机,即确定发送该目的ARP响应包的主机,在确定目的主机后,向网关发送IP地址修改请求,该网关在接收到该IP地址修请求后,将会将该目的主机的IP地址设置为0,来将该目的主机的IP地址修改为与本主机不同。
可选的,在接收到目的ARP响应包后,可以通过对该目的ARP包进行解析,提取该目的ARP响应包中的发送方MAC地址,得到该目的主机的MAC地址,因为MAC地址是网卡决定的,一台主机对应一个MAC地址,因此,可以通过该目的主机的MAC地址确定该目的主机。
可选的,为了进一步地保证确定的目的主机的正确性,还可通过该目的主机的MAC地址和该目的主机的IP地址(该IP地址与主机自身IP地址相同)来共同确定目的主机。
可选的,也可以通过向网关发送ARP请求包的方式来向该网关发送IP地址修改请求。
可选的,为了确认目的主机的IP地址修改是否成功,可以在该主机向网关发送IP地址修改请求,请求该网关将目的主机的IP地址设置为0后,再次将建立的ARP请求包广播至网络上的所有主机,通过判断是否接收到该网络上其他主机返回的目的ARP响应包,来判断该目的主机的IP地址修改是否成功。
若没有接收到该网络上其他主机返回的目的ARP响应包,则说明该该目的主机的IP地址修改成功;反之,若接收到该网络上其他主机返回的目的ARP响应包,则说明未能成功修改该目的主机的IP地址。
可选的,可以在判定未能成功修改该目的主机的IP地址后,重新向该网关发送IP地址修改请求,并再次判断是否接收到该网络上其他主机返回的目的ARP响应包,直至不再接收到该网络上其他主机返回的目的ARP响应包,即直至该目的主机的IP地址修改成功。
可选的,为避免反复向网关发送IP地址修改请求,可以在向网关发送IP地址修改请求后,从零开始累计向该网关发送IP地址修改请求的次数,若向该网关发送IP地址修改请求的次数大于预设数值,则认为该目的主机IP地址修改失败,或该目的主机IP地址不可修改,输出错误信息,停止重新向该网关发送IP地址修改请求,并将累计的次数归零,以便于下次统计。
基于上述技术方案,本发明实施例提供的主机及其IP地址冲突预防方法,获取自身IP地址和自身MAC地址,并根据自身IP地址和自身MAC地址建立ARP请求包,其中,将该建立的ARP请求包中接收方IP地址设置为自身IP地址,然后将该建立的ARP请求包广播至网络上的所有主机,判断是否接收到该网络上其他主机返回的目的ARP响应包,若接收到,则根据该目的ARP响应包确定目的主机,然后向网关发送IP地址修改请求,请求该网关将该目的主机的IP地址设置为0。在访问网络前,主机可通过建立将接收方IP地址设置为自身IP地址的ARP请求包,并向全网广播该ARP请求包,判断是否接收到网络上其他主机返回的目的ARP响应包,来判断网络中是否存在与其自身IP地址相同的其他主机,若判定接收到网络上其他主机返回的目的ARP响应包,即可判定该网络中存在与该主机自身IP地址相同的其他主机,即判定存与该主机自身IP地址冲突的目的主机,则通过向网关发送IP地址修改请求来将该目的主机的IP地址设置为0,来将该目的主机的IP地址修改为与本主机不同,从而保证了该主机自身IP地址的唯一性,有效预防了该主机因为IP地址冲突而无法正常访问网络情况的发生。
可选的,图2示出了本发明实施例提供的IP地址冲突预防方法中根据自身IP地址和自身MAC地址建立ARP请求包的方法流程图,参照图2,该根据自身IP地址和自身MAC地址建立ARP请求包的方法可以包括:
步骤S200:建立物理帧头,将所述物理帧头中发送方MAC地址设置为所述自身MAC地址,将所述物理帧头中接收方MAC地址设置为空;
其中,在建立物理帧头后,除将该物理帧头中发送方MAC地址设置为主机自身MAC地址,将该物理帧头中接收方MAC地址设置为空外,还可相应得设置物理帧头中硬件类型字段、协议类型字段、硬件地址长度、协议地址长度和操作字段。
其中,硬件类型字段指明了发送方想知道的硬件接口类型,其中,以太网的值为1,协议类型字段指明了发送方提供的高层协议类型,硬件地址长度和协议地址长度分别指明了硬件地址和高层协议地址的长度,设置以上内容后,该ARP数据包便可在任意硬件和任意协议的网络中进行使用。而操作字段用来表示该ARP数据包的类型,其中,ARP请求包的操作字段值为1,ARP响应包的操作字段值为2。
步骤S210:建立ARP帧,将所述ARP帧中发送方MAC地址设置为所述自身MAC地址,将所述ARP帧中接收方MAC地址设置为空,并将所述ARP帧中发送方IP地址和接收方IP地址均设置为所述自身IP地址。
将建立的ARP请求包中接收方IP地址设置为主机自身IP地址,当将该ARP请求包广播至网络上的所有主机上后,若该网络中存在与该主机具有相同IP地址的其他主机,即目的主机,则该目的主机将会向该主机返回一个ARP响应包,该ARP响应包中将包括该目的主机的MAC地址。
可选的,图3示出了本发明实施例提供的IP地址冲突预防方法中判断是否接收到网络上其他主机返回的目的ARP响应包的方法流程图,参照图3,该判断是否接收到网络上其他主机返回的目的ARP响应包的方法可以包括:
步骤S300:判断是否接收到ARP响应包;
可选的,在接收到ARP数据包后,可根据接收的ARP数据包的操作字段是否为2来判断该接收的ARP数据包是否为ARP响应包。
若接收的ARP数据包的操作字段为2,则判定该接收的ARP数据包为ARP响应包,若接收的ARP数据包的操作字段不为2,则判定该接收的ARP数据包不为ARP响应包。
步骤S310:若接收到,则根据所述ARP响应包获取发送所述ARP响应包的主机的MAC地址;
步骤S320:判断所述MAC地址与所述自身MAC地址是否相同;
因为主机将其建立的ARP请求包广播至网络上的所有主机后,该主机可能会接收到自己发送给自己的ARP响应包,即接收的ARP响应包可能并非网络中其中主机发送的ARP响应包,因此,在接收到ARP响应包后,可根据接收的ARP响应包获取发送该ARP响应包的主机的MAC地址,通过判断发送该ARP响应包的主机的MAC地址是否与该主机自身MAC地址是否相同,来判断是否接收到网络上其他主机返回的目的ARP响应包。
步骤S330:若不同,则判定接收到所述网络上其他主机返回的ARP响应包。
若判定发送该ARP响应包的主机的MAC地址与该主机自身MAC地址不相同,则判定接收到网络上其他主机返回的目的ARP响应包,反之,若判定发送该ARP响应包的主机的MAC地址与该主机自身MAC地址相同,则判定未接收到网络上其他主机返回的目的ARP响应包,该ARP响应包为该主机自己发送。
可选的,图4示出了本发明实施例提供的IP地址冲突预防方法中根据目的ARP响应包确定目的主机的方法流程图,参照图4,该根据目的ARP响应包确定目的主机的方法可以包括:
步骤S400:对所述目的ARP包进行解析;
步骤S410:提取所述目的ARP响应包中的发送方MAC地址,得到所述目的主机的MAC地址。
目的ARP响应包为目的主机(与主机具有相同IP地址的主机)发送,因此,该ARP响应包中的发送方MAC地址即为该目的主机的MAX地址。因为MAC地址是网卡决定的,一台主机对应一个MAC地址,因此,可以通过该目的主机的MAC地址确定该目的主机。
可选的,为了进一步地保证确定的目的主机的正确性,还可通过该目的主机的MAC地址和该目的主机的IP地址(该IP地址与主机自身IP地址相同)来共同确定目的主机。
可选的,图5示出了本发明实施例提供的IP地址冲突预防方法中重新向网关发送IP地址修改请求的方法流程图,参照图5,该重新向网关发送IP地址修改请求的方法可以包括:
步骤S500:将所述ARP请求包再次广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包;
为了确认目的主机的IP地址修改是否成功,可以在该主机向网关发送IP地址修改请求,请求该网关将目的主机的IP地址设置为0后,再次将建立的ARP请求包广播至网络上的所有主机,通过判断是否接收到该网络上其他主机返回的目的ARP响应包,来判断该目的主机的IP地址修改是否成功。
步骤S510:若接收到,则重新向所述网关发送IP地址修改请求,直至不再接收到所述网络上其他主机返回的目的ARP响应包。
若接收到该网络上其他主机返回的目的ARP响应包,则说明未能成功修改该目的主机的IP地址。可以在判定未能成功修改该目的主机的IP地址后,重新向该网关发送IP地址修改请求,并再次判断是否接收到该网络上其他主机返回的目的ARP响应包,直至不再接收到该网络上其他主机返回的目的ARP响应包,即直至该目的主机的IP地址修改成功
可选的,图6示出了本发明实施例提供的IP地址冲突预防方法中停止重新向网关发送IP地址修改请求的方法流程图,参照图6,该停止重新向所述网关发送IP地址修改请求的方法可以包括:
步骤S600:从零开始累计向所述网关发送IP地址修改请求的次数;
步骤S610:判断所述次数大于预设数值;
步骤S620:若大于,则输出错误信息,停止重新向所述网关发送IP地址修改请求,将所述次数归零。
为避免反复向网关发送IP地址修改请求,可以在向网关发送IP地址修改请求后,从零开始累计向该网关发送IP地址修改请求的次数,若向该网关发送IP地址修改请求的次数大于预设数值,则认为该目的主机IP地址修改失败,或该目的主机IP地址不可修改,输出错误信息,停止重新向该网关发送IP地址修改请求,并将累计的次数归零,以便于下次统计。
本发明实施例提供的IP地址冲突预防方法,主机通过建立将接收方IP地址设置为自身IP地址的ARP请求包,并向全网广播该ARP请求包,来判断网络中是否存在与其自身IP地址相同的其他主机,若判定存在,则向网关发送IP地址修改请求来将该目的主机的IP地址设置为0,将该目的主机的IP地址修改为与本主机不同,从而保证了该主机自身IP地址的唯一性,有效预防了该主机因为IP地址冲突而无法正常访问网络情况的发生。
下面对本发明实施例提供的主机进行介绍,下文描述的主机与上文描述的IP地址冲突预防方法可相互对应参照,可通过上文描述的IP地址冲突预防有效预防自身IP地址冲突情况的发生。
图7为本发明实施例提供的主机的系统框图,参照图7,还主机可以包括:请求包建立模块100、广播判断模块200和请求发送模块300;其中,
请求包建立模块100,用于获取自身IP地址和自身MAC地址,根据所述自身IP地址和自身MAC地址建立ARP请求包,其中,所述ARP请求包中接收方IP地址设置为所述自身IP地址;
广播判断模块200,用于将所述ARP请求包广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包;
请求发送模块300,用于当所述广播判定模块判定接收到所述网络上其他主机返回的目的ARP响应包时,根据目的ARP响应包确定目的主机,向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0。
可选的,图8示出了本发明实施例提供的主机中请求包建立模块100的结构框图,参照图8,该请求包建立模块100可以包括:帧头建立单元110和帧建立单元120;其中,
帧头建立单元110,用于建立物理帧头,将所述物理帧头中发送方MAC地址设置为所述自身MAC地址,将所述物理帧头中接收方MAC地址设置为空;
其中,帧头建立单元110在建立物理帧头,将所述物理帧头中发送方MAC地址设置为所述自身MAC地址,将所述物理帧头中接收方MAC地址设置为空后,还用于设置所述物理帧头中硬件类型字段、协议类型字段、硬件地址长度、协议地址长度和操作字段。
帧建立单元120,用于建立ARP帧,将所述ARP帧中发送方MAC地址设置为所述自身MAC地址,将所述ARP帧中接收方MAC地址设置为空,并将所述ARP帧中发送方IP地址和接收方IP地址均设置为所述自身IP地址。
可选的,图9示出了本发明实施例提供的主机的另一系统框图,参照图9,还主机还可以包括:广播请求模块400和计数模块500;其中,
广播请求模块400,用于在所述请求发送模块向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0后,将所述ARP请求包再次广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包,若接收到,则重新向所述网关发送IP地址修改请求,直至不再接收到所述网络上其他主机返回的目的ARP响应包;
计数模块500,用于从零开始累计向所述网关发送IP地址修改请求的次数,若所述次数大于预设数值,则输出错误信息,控制所述广播请求模块停止重新向所述网关发送IP地址修改请求。
本发明实施例提供的主机,通过建立将接收方IP地址设置为自身IP地址的ARP请求包,并向全网广播该ARP请求包,来判断网络中是否存在与其自身IP地址相同的其他主机,若判定存在,则向网关发送IP地址修改请求来将该目的主机的IP地址设置为0,将该目的主机的IP地址修改为与本主机不同,从而保证了该主机IP地址的唯一性,有效预防了该主机因为IP地址冲突而无法正常访问网络情况的发生。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种IP地址冲突预防方法,其特征在于,包括:
获取自身IP地址和自身MAC地址,根据所述自身IP地址和自身MAC地址建立ARP请求包,其中,所述ARP请求包中接收方IP地址设置为所述自身IP地址;
将所述ARP请求包广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包;
若接收到,则根据所述目的ARP响应包确定目的主机,向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0。
2.根据权利要求1所述的IP地址冲突预防方法,其特征在于,所述根据所述自身IP地址和自身MAC地址建立ARP请求包包括:
建立物理帧头,将所述物理帧头中发送方MAC地址设置为所述自身MAC地址,将所述物理帧头中接收方MAC地址设置为空;
建立ARP帧,将所述ARP帧中发送方MAC地址设置为所述自身MAC地址,将所述ARP帧中接收方MAC地址设置为空,并将所述ARP帧中发送方IP地址和接收方IP地址均设置为所述自身IP地址。
3.根据权利要求2所述的IP地址冲突预防方法,其特征在于,所述建立物理帧头,将所述物理帧头中发送方MAC地址设置为所述自身MAC地址,将所述物理帧头中接收方MAC地址设置为空后还包括:
设置所述物理帧头中硬件类型字段、协议类型字段、硬件地址长度、协议地址长度和操作字段。
4.根据权利要求1所述的IP地址冲突预防方法,其特征在于,所述判断是否接收到所述网络上其他主机返回的目的ARP响应包包括:
判断是否接收到ARP响应包;
若接收到,则根据所述ARP响应包获取发送所述ARP响应包的主机的MAC地址,判断所述MAC地址与所述自身MAC地址是否相同;
若不同,则判定接收到所述网络上其他主机返回的ARP响应包。
5.根据权利要求1所述的IP地址冲突预防方法,其特征在于,所述根据所述目的ARP响应包确定目的主机包括:
对所述目的ARP包进行解析,提取所述目的ARP响应包中的发送方MAC地址,得到所述目的主机的MAC地址。
6.根据权利要求1所述的IP地址冲突预防方法,其特征在于,所述向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0后还包括:
将所述ARP请求包再次广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包;
若接收到,则重新向所述网关发送IP地址修改请求,直至不再接收到所述网络上其他主机返回的目的ARP响应包。
7.根据权利要求6所述的IP地址冲突预防方法,其特征在于,所述向网关发送IP地址修改请求后还包括:
从零开始累计向所述网关发送IP地址修改请求的次数;
若所述次数大于预设数值,则输出错误信息,停止重新向所述网关发送IP地址修改请求,将所述次数归零。
8.一种主机,其特征在于,包括:请求包建立模块、广播判断模块和请求发送模块;其中,
所述请求包建立模块,用于获取自身IP地址和自身MAC地址,根据所述自身IP地址和自身MAC地址建立ARP请求包,其中,所述ARP请求包中接收方IP地址设置为所述自身IP地址;
所述广播判断模块,用于将所述ARP请求包广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包;
所述请求发送模块,用于当所述广播判定模块判定接收到所述网络上其他主机返回的目的ARP响应包时,根据目的ARP响应包确定目的主机,向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0。
9.根据权利要求8所述的主机,其特征在于,所述请求包建立模块包括:帧头建立单元和帧建立单元;其中,
所述帧头建立单元,用于建立物理帧头,将所述物理帧头中发送方MAC地址设置为所述自身MAC地址,将所述物理帧头中接收方MAC地址设置为空;
所述帧建立单元,用于建立ARP帧,将所述ARP帧中发送方MAC地址设置为所述自身MAC地址,将所述ARP帧中接收方MAC地址设置为空,并将所述ARP帧中发送方IP地址和接收方IP地址均设置为所述自身IP地址。
10.根据权利要求8所述的主机,其特征在于,还包括:广播请求模块和计数模块;其中,
所述广播请求模块,用于在所述请求发送模块向网关发送IP地址修改请求,请求所述网关将所述目的主机的IP地址设置为0后,将所述ARP请求包再次广播至网络上的所有主机,判断是否接收到所述网络上其他主机返回的目的ARP响应包,若接收到,则重新向所述网关发送IP地址修改请求,直至不再接收到所述网络上其他主机返回的目的ARP响应包;
所述计数模块,用于从零开始累计向所述网关发送IP地址修改请求的次数,若所述次数大于预设数值,则输出错误信息,控制所述广播请求模块停止重新向所述网关发送IP地址修改请求。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510802564.1A CN105245639A (zh) | 2015-11-19 | 2015-11-19 | 一种主机及其ip地址冲突预防方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510802564.1A CN105245639A (zh) | 2015-11-19 | 2015-11-19 | 一种主机及其ip地址冲突预防方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105245639A true CN105245639A (zh) | 2016-01-13 |
Family
ID=55043135
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510802564.1A Pending CN105245639A (zh) | 2015-11-19 | 2015-11-19 | 一种主机及其ip地址冲突预防方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105245639A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681490A (zh) * | 2016-03-29 | 2016-06-15 | 上海斐讯数据通信技术有限公司 | 一种基于软件定义网络的防ip地址冲突方法 |
CN105939403A (zh) * | 2016-03-31 | 2016-09-14 | 杭州迪普科技有限公司 | 一种地址冲突检测方法及装置 |
CN106487946A (zh) * | 2016-10-12 | 2017-03-08 | 重庆金美通信有限责任公司 | 一种大规模通信网络ip资源冲突检测方法、系统和设备 |
CN106936944A (zh) * | 2017-03-31 | 2017-07-07 | 苏州科达科技股份有限公司 | 一种检测及处理网络地址冲突的方法及装置 |
CN107257393A (zh) * | 2017-06-29 | 2017-10-17 | 捷开通讯(深圳)有限公司 | 网络协议地址的获取方法、装置及计算机可读存储介质 |
CN107835264A (zh) * | 2016-09-09 | 2018-03-23 | 鸿富锦精密电子(天津)有限公司 | Ip地址自动分配系统、方法及客户端 |
CN110445887A (zh) * | 2019-08-12 | 2019-11-12 | 北京百佑科技有限公司 | 重复ip识别方法、装置及智能对讲设备 |
CN114285826A (zh) * | 2021-12-28 | 2022-04-05 | 威创集团股份有限公司 | 分布式设备配置ip地址且检测冲突的方法、系统、设备及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040052216A1 (en) * | 2002-09-17 | 2004-03-18 | Eung-Seok Roh | Internet protocol address allocation device and method |
CN1614942A (zh) * | 2003-11-06 | 2005-05-11 | 北京佳讯飞鸿电气有限责任公司 | 网络通信中解决ip地址冲突的方法 |
CN101141325A (zh) * | 2007-09-29 | 2008-03-12 | 华为技术有限公司 | 一种网元标识冲突的检测方法和装置 |
CN102143229A (zh) * | 2011-03-31 | 2011-08-03 | 中兴通讯股份有限公司 | 一种终端批量升级的方法及系统 |
CN102143248A (zh) * | 2011-02-28 | 2011-08-03 | 华为数字技术有限公司 | 一种ip地址冲突检测方法和设备 |
CN102546849A (zh) * | 2010-12-30 | 2012-07-04 | 华为技术有限公司 | Ip地址冲突检测方法及网络设备 |
CN103024851A (zh) * | 2012-11-23 | 2013-04-03 | 福建星网锐捷网络有限公司 | 基于无线网络的报文传输方法、装置及网络设备 |
-
2015
- 2015-11-19 CN CN201510802564.1A patent/CN105245639A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040052216A1 (en) * | 2002-09-17 | 2004-03-18 | Eung-Seok Roh | Internet protocol address allocation device and method |
CN1614942A (zh) * | 2003-11-06 | 2005-05-11 | 北京佳讯飞鸿电气有限责任公司 | 网络通信中解决ip地址冲突的方法 |
CN101141325A (zh) * | 2007-09-29 | 2008-03-12 | 华为技术有限公司 | 一种网元标识冲突的检测方法和装置 |
CN102546849A (zh) * | 2010-12-30 | 2012-07-04 | 华为技术有限公司 | Ip地址冲突检测方法及网络设备 |
CN102143248A (zh) * | 2011-02-28 | 2011-08-03 | 华为数字技术有限公司 | 一种ip地址冲突检测方法和设备 |
CN102143229A (zh) * | 2011-03-31 | 2011-08-03 | 中兴通讯股份有限公司 | 一种终端批量升级的方法及系统 |
CN103024851A (zh) * | 2012-11-23 | 2013-04-03 | 福建星网锐捷网络有限公司 | 基于无线网络的报文传输方法、装置及网络设备 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105681490A (zh) * | 2016-03-29 | 2016-06-15 | 上海斐讯数据通信技术有限公司 | 一种基于软件定义网络的防ip地址冲突方法 |
CN105681490B (zh) * | 2016-03-29 | 2019-10-22 | 上海斐讯数据通信技术有限公司 | 一种基于软件定义网络的防ip地址冲突方法 |
CN105939403A (zh) * | 2016-03-31 | 2016-09-14 | 杭州迪普科技有限公司 | 一种地址冲突检测方法及装置 |
CN107835264A (zh) * | 2016-09-09 | 2018-03-23 | 鸿富锦精密电子(天津)有限公司 | Ip地址自动分配系统、方法及客户端 |
CN106487946A (zh) * | 2016-10-12 | 2017-03-08 | 重庆金美通信有限责任公司 | 一种大规模通信网络ip资源冲突检测方法、系统和设备 |
CN106487946B (zh) * | 2016-10-12 | 2019-11-19 | 重庆金美通信有限责任公司 | 一种大规模通信网络ip资源冲突检测方法、系统和设备 |
CN106936944A (zh) * | 2017-03-31 | 2017-07-07 | 苏州科达科技股份有限公司 | 一种检测及处理网络地址冲突的方法及装置 |
CN107257393A (zh) * | 2017-06-29 | 2017-10-17 | 捷开通讯(深圳)有限公司 | 网络协议地址的获取方法、装置及计算机可读存储介质 |
CN110445887A (zh) * | 2019-08-12 | 2019-11-12 | 北京百佑科技有限公司 | 重复ip识别方法、装置及智能对讲设备 |
CN114285826A (zh) * | 2021-12-28 | 2022-04-05 | 威创集团股份有限公司 | 分布式设备配置ip地址且检测冲突的方法、系统、设备及介质 |
CN114285826B (zh) * | 2021-12-28 | 2023-04-21 | 威创集团股份有限公司 | 分布式设备配置ip地址且检测冲突的方法、系统、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105245639A (zh) | 一种主机及其ip地址冲突预防方法 | |
CN112911027B (zh) | 用于建立媒体会话的方法和装置 | |
US6424654B1 (en) | Network system and DHCP server selection method | |
JP2679613B2 (ja) | ネットワークアドレス自動設定回路 | |
US11405314B2 (en) | Packet processing method and apparatus | |
WO2020011152A1 (zh) | Pfcp连接处理方法、装置、网元、系统及存储介质 | |
CN103795632A (zh) | 一种数据报文传输方法及相关设备、系统 | |
US20150341205A1 (en) | Method for guaranteeing service continuity in a telecommunication network and system thereof | |
CN110855804A (zh) | 网络接入方法、无线终端接入设备以及下接设备 | |
EP3896927A1 (en) | Packet transmission method, apparatus, and system | |
US10680930B2 (en) | Method and apparatus for communication in virtual network | |
KR20160118813A (ko) | 이동통신망을 통해 원격 서버와 연결되는 게이트웨이 장치 및 그것의 ip관리 방법 | |
EP2345230B1 (en) | Method and apparatus for allocating network resources from one address realm to clients in a different address realm | |
CN106130863B (zh) | 局域网协议报文的传送方法、装置以及系统 | |
KR102367707B1 (ko) | 다중 경로 구축 방법 및 장치 | |
JPH10334027A (ja) | クライアント・サーバシステム | |
WO2021031092A1 (zh) | 报文处理方法及网络设备 | |
US20220141153A1 (en) | Server communication method, broadband access server, and system | |
WO2015096734A1 (zh) | 一种业务数据的下行传输方法及分组数据网关 | |
CN113411228B (zh) | 一种网络状况的确定方法及服务器 | |
CN112449366B (zh) | 报文转发方法、装置、无线ap设备及存储介质 | |
CN105099987B (zh) | 终端的业务接入方法、装置及系统 | |
KR101374487B1 (ko) | 홈 게이트웨이에서 가상 ip를 이용한 멀티미디어 서비스 제공 시스템 및 방법 | |
KR101777812B1 (ko) | 네트워크의 데이터 처리 속도 측정 방법 및 장치 | |
CN109561170A (zh) | 地址池创建方法、装置、地址池管理系统及储存介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160113 |