CN101656722A - 动态主机配置协议窥探绑定信息的生成方法与装置 - Google Patents
动态主机配置协议窥探绑定信息的生成方法与装置 Download PDFInfo
- Publication number
- CN101656722A CN101656722A CN200910090564A CN200910090564A CN101656722A CN 101656722 A CN101656722 A CN 101656722A CN 200910090564 A CN200910090564 A CN 200910090564A CN 200910090564 A CN200910090564 A CN 200910090564A CN 101656722 A CN101656722 A CN 101656722A
- Authority
- CN
- China
- Prior art keywords
- mac
- address
- request message
- subclauses
- dhcp
- 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.)
- Granted
Links
Images
Landscapes
- Small-Scale Networks (AREA)
Abstract
本发明实施例公开了一种动态主机配置协议窥探绑定信息的生成方法与装置,其中,方法包括:接收DHCP服务器返回的ACK报文,其中包括目的MAC地址;查询与目的MAC地址对应的MAC条目;根据MAC条目中的第一标识位与第二标识位,若接收到报文discover与报文request,根据MAC条目中的输入端口信息生成DHCP窥探绑定信息,报文discover与报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应相同。本发明实施例可以避免由于MAC地址欺骗导致MAC表中MAC地址对应的端口会发生迁移,有效保证DHCP窥探绑定信息的正确性。
Description
技术领域
本发明涉及通信技术,尤其是一种动态主机配置协议(Dynamic HostConfigure Protocol,以下简称:DHCP)窥探绑定信息的生成方法与装置。
背景技术
在基于DHCP的DHCP网络系统中,可以通过DHCP窥探(SNOOPING)设备,对DHCP服务器的回应报文进行过滤,来阻止其对内部网络的攻击。图1为现有技术DHCP网络的一个拓扑结构示意图。在该图1所示的DHCP网络中,个人计算机(personal computer,以下简称:PC)从DHCP窥探设备获取的互联网协议(Internet Protocol,以下简称:IP)地址与DHCP服务器的地址在同一网段内,图2为现有技术DHCP网络的另一个拓扑结构示意图,在该图2所示的DHCP网络中,PC从DHCP窥探设备获取的IP地址与DHCP服务器的地址不在同一个网段,DHCP中继(Relay)对PC与DHCP服务器之间的DHCP报文进行中继。另外,在图1与图2所示的DHCP网络中,DHCP窥探设备通过将上联口设置为信任(trust)接口,对DHCP服务器的回应报文进行过滤,丢弃非信任接口接收到的DHCP服务器的回应报文。另外,DHCP窥探设备通过检测用户通过下联口发送的报文是否与DHCP窥探绑定信息来过滤非法报文,从而防止下联用户通过介质访问控制(MediaAccess Control,以下简称:MAC)地址欺骗对外部网络的攻击。其中,DHCP窥探绑定信息包括用户IP地址、虚拟局域网(Virtual Local Area Network,以下简称:VLAN)标识(identity,以下简称:ID)、端口(port)、租约时间、绑定类型等信息。具体地,DHCP窥探设备从DHCP服务器回应的确认(Acknowledge,以下简称:ACK)报文中获取输入VLAN ID、IP地址、租约时间等信息,并根据ACK报文中携带的MAC地址查询二层MAC表项,获取该MAC地址对应的端口信息,由该端口信息与ACK报文中携带的输入VLAN ID、IP地址、租约时间信息,以及选择的绑定类型生成DHCP窥探绑定信息。DHCP窥探设备中的动态地址解析协议(Address Resolution Protocol,以下简称:ARP)检测(dynamic arp inspection,以下简称:DAI)模块,接收到PC通过下联口发送的ARP报文时,检测该ARP报文是否与DHCP窥探绑定信息匹配,对与DHCP窥探绑定信息不匹配的ARP报文进行过滤。
网络中存在着MAC地址欺骗,假设第一MAC地址原先学习在第一端口上,当有MAC地址欺骗时,MAC表项中第一MAC地址对应的端口就会发生迁移,例如:第一端口迁移到第二端口。现有技术生成DHCP窥探绑定信息时,至少存在以下问题:DHCP报文交互过程中,在DHCP服务器向DHCP窥探设备回应ACK报文之前,若用户MAC地址被欺骗,则MAC表项中该MAC地址对应的端口会发生迁移,这样,在生成DHCP窥探绑定信息时,查找MAC表项获得的端口与实际端口不符,导致生成的DHCP窥探绑定信息错误。因此,无法通过下联口对用户发送的非法报文进行有效过滤,从而防止下联用户MAC地址欺骗对外部网络的攻击。
发明内容
本发明实施例的目的是:提供一种动态主机配置协议窥探绑定信息的生成方法与装置,避免由于MAC地址欺骗导致MAC表中MAC地址对应的端口会发生迁移,有效保证DHCP窥探绑定信息的正确性。
为实现上述目的,本发明实施例提供的一种动态主机配置协议窥探绑定信息的生成方法,包括:
接收动态主机配置协议DHCP服务器返回的确认ACK报文,该ACK报文中包括目的介质访问控制MAC地址;
查询MAC表中与所述目的MAC地址对应的MAC条目,该MAC条目中包括输入端口信息、第一标识位与第二标识位,所述第一标识位用于标识是否接收到第一互联网协议IP地址获取请求报文discover,所述第二标识位用于标识是否接收到第二IP地址获取请求报文request,所述第一IP地址获取请求报文discover与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入虚拟局域网标识VLAN ID分别对应相同;
根据所述第一标识位与所述第二标识位,若接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request,根据所述MAC条目中的输入端口信息生成DHCP窥探绑定信息。
本发明实施例提供的一种动态主机配置协议窥探绑定信息的生成装置,包括:
接收模块,用于接收DHCP服务器返回的ACK报文,该ACK报文中包括目的MAC地址;
第一查询模块,用于查询MAC表中与所述目的MAC地址对应的MAC条目,该MAC条目中包括输入端口信息、第一标识位与第二标识位,所述第一标识位用于标识是否接收到第一互联网协议IP地址获取请求报文discover,所述第二标识位用于标识是否接收到与第二IP地址获取请求报文request,所述第一IP地址获取请求报文discover与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应相同;
生成模块,用于根据所述第一标识位与所述第二标识位,若接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request,根据所述MAC条目中的输入端口信息生成DHCP窥探绑定信息。
本发明实施例提供的一种DHCP窥探设备,包括本发明上述实施例提供的DHCP窥探绑定信息的生成装置。
基于本发明实施例提供的DHCP窥探绑定信息的生成方法与装置,只有在接收到discover报文和request报文,且discover报文与request报文中的源MAC地址、输入端口信息、输入VLAN ID分别对应相同时,才根据MAC条目中的输入端口信息生成DHCP窥探绑定信息,与现有技术相比,可以有效避免在DHCP服务器向DHCP窥探设备回应ACK报文之前,由于MAC地址欺骗导致生成DHCP窥探绑定信息的端口发生迁移,保障通过下联口对用户发送的非法报文进行有效过滤,从而防止下联用户MAC地址欺骗对外部网络的攻击。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术DHCP网络的一个拓扑结构示意图;
图2为现有技术DHCP网络的另一个拓扑结构示意图;
图3为本发明DHCP窥探绑定信息的生成方法一个实施例的流程图;
图4为本发明DHCP窥探绑定信息的生成方法另一个实施例的流程图;
图5为本发明DHCP窥探绑定信息的生成方法又一个实施例的流程图;
图6为本发明DHCP窥探绑定信息的生成装置一个实施例的结构示意图;
图7为本发明DHCP窥探绑定信息的生成装置另一个实施例的结构示意图;
图8为本发明DHCP窥探绑定信息的生成装置又一个实施例的结构示意图;
图9为本发明DHCP窥探绑定信息的生成装置再一个实施例的结构示意图;
图10为本发明DHCP窥探绑定信息的生成装置还一个实施例的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图3为本发明DHCP窥探绑定信息的生成方法一个实施例的流程图。如图3所示,该实施例的DHCP窥探绑定信息的生成方法包括以下步骤:
步骤101,接收DHCP服务器返回的确认ACK报文,该ACK报文中包括目的MAC地址。
步骤102,查询MAC表中与目的MAC地址对应的MAC条目,该MAC条目中包括输入端口信息、第一标识位与第二标识位。
其中,第一标识位用于标识是否接收到第一IP地址获取请求报文discover,也称为:discover报文,第二标识位用于标识是否接收到第二IP地址获取请求报文request,也称为:request报文,第一IP地址获取请求报文discover与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应相同。
步骤103,根据第一标识位与第二标识位,若接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request,根据MAC条目中的输入端口信息生成DHCP窥探绑定信息。
PC向DHCP服务器发送DHCP请求报文,包括discover报文与request报文,接受DHCP服务器针对discover报文与request报文相应返回的回应报文,包括offer报文与ACK报文,PC向DHCP服务器之间通过discover、offer、request、ACK四个报文的交互后,PC从DHCP服务器获取由DHCP服务器分配的IP地址。
基于本发明上述实施例提供的DHCP窥探绑定信息的生成方法,只有在接收到discover报文和request报文,且discover报文与request报文中的源MAC地址、输入端口信息、输入VLAN ID分别对应相同时,才根据MAC条目中的输入端口信息生成DHCP窥探绑定信息,可以有效避免在DHCP服务器向DHCP窥探设备回应ACK报文之前,由于MAC地址欺骗导致生成DHCP窥探绑定信息的端口发生迁移,保障通过下联口对用户发送的非法报文进行有效过滤,从而防止下联用户MAC地址欺骗对外部网络的攻击。
图4为本发明DHCP窥探绑定信息的生成方法另一个实施例的流程图。该实施例的流程具体可以由DHCP窥探设备实现。如图4所示,该实施例的DHCP窥探绑定信息的生成方法包括以下步骤:
步骤201,接收第一IP地址获取请求报文discover,该第一IP地址获取请求报文discover可以由PC发送给同一DHCP网络中的所有DHCP服务器,请求分配IP地址,该第一IP地址获取请求报文discover中包括源MAC地址、输入端口信息与输入VLAN ID。
步骤202,在MAC条目中记录第一IP地址获取请求报文discover中的源MAC地址、端口信息、输入VLAN ID,并将该MAC条目中的第一标识位置为有效值,将第二标识位保持为无效值。MAC条目可以预先创建,若未预先创建MAC条目,可以根据实际需求临时创建。
根据本发明的一个具体实施例,可以通过设置第一标识位上的值是否为有效值,来标识是否接收到第一IP地址获取请求报文discover。例如:可以预先设定,1为有效值,0为无效值。第一标识位上的值为1时,可以知道接收到第一IP地址获取请求报文discover,第一标识位上的值为0时,可以知道未接收到第一IP地址获取请求报文discover。
之后,可以将第一IP地址获取请求报文discover转发给DHCP服务器,以及将可以为PC用户分配IP地址的DHCP服务器返回的offer回应报文转发给PC。PC接收到offer回应报文后,可以选择一个返回offer回应报文的DHCP服务器发送第二IP地址获取请求报文request,请求该DHCP服务器分配IP地址。
步骤203,接收第二IP地址获取请求报文request,该第二IP地址获取请求报文request可以由PC发送给DHCP服务器,请求该DJHCP服务器分配IP地址,该第二IP地址获取请求报文request中包括源MAC地址、输入端口信息与输入VLAN ID。
步骤204,查询MAC表中是否存在与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目。若MAC表中存在与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目,执行步骤206;否则,若MAC表中不存在与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目,执行步骤205。
步骤205,丢弃该第二IP地址获取请求报文request。之后,不再执行本实施例的后续流程。
步骤206,查询MAC条目中的第一标识位是否为有效值。若MAC条目中的第一标识位为有效值,执行步骤207;否则,若MAC条目中的第一标识位为无效值,执行步骤205。
步骤207,将第二标识位置为有效值。
之后,可以将第二IP地址获取请求报文request转发给DHCP服务器。DHCP服务器可以针对该第二IP地址获取请求报文request返回ACK报文。
步骤208,接收DHCP服务器返回的ACK报文,该ACK报文也称为:DHCP ACK回应报文,其中包括目的MAC地址,即:PC的MAC地址。
步骤209,查询MAC表中是否存在与ACK报文中的目的MAC地址对应的MAC条目。若MAC表中存在与ACK报文中的目的MAC地址对应的MAC条目,执行步骤211;否则,若MAC表中不存在与ACK报文中的目的MAC地址对应的MAC条目,执行步骤210。
步骤210,丢弃该ACK报文。之后,不再执行本实施例的后续流程。
步骤211,查询目的MAC地址对应的MAC条目中,第一标识位与第二标识位是否均为有效值,来识别是否接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request。若第一标识位与第二标识位均为有效值,执行步骤212;否则,若第一标识位与第二标识位均为有效值中只要有一个为无效值或者均为无效值,执行步骤210。
具体地,该步骤211中,也可以先识别第一标识位是否为有效值,在第一标识位为有效值时,再识别第二标识位是否为有效值;或者,也可以先识别第二标识位是否为有效值,在第二标识位为有效值时,再识别第一标识位是否为有效值。第一标识位与第二标识位都为有效值时,执行步骤212,第一标识位与第二标识位中只要有一个为无效值或者均为无效值,执行步骤210。
步骤212,从目的MAC地址对应的MAC条目中获取输入端口信息,并根据该输入端口信息生成DHCP窥探绑定信息。
本发明实施例的DHCP窥探绑定信息的生成方法中,在接收到discover报文与request报文且二者中的源MAC地址、输入端口信息与输入VLAN ID分别对应相同时,根据其中的输入端口信息生成DHCP窥探绑定信息,在此之前,即使存在MAC地址欺骗,也只能修改二层MAC表项,而无法对discover报文与request报文的全部信息进行一致性修改,因此,避免了在DHCP服务器向DHCP窥探设备回应ACK报文之前,由于MAC地址欺骗导致生成DHCP窥探绑定信息的端口发生迁移,保障了生成DHCP窥探绑定信息的端口信息的正确性,以便通过下联口对用户发送的非法报文进行有效过滤,从而防止下联用户MAC地址欺骗对外部网络的攻击。
图5为本发明DHCP窥探绑定信息的生成方法又一个实施例的流程图。该实施例的流程具体也可以由DHCP窥探设备实现。如图5所示,该实施例的DHCP窥探绑定信息的生成方法包括以下步骤:
步骤301,接收第一IP地址获取请求报文discover,该第一IP地址获取请求报文discover可以由PC发送给同一DHCP网络中的所有DHCP服务器,请求分配IP地址,该第一IP地址获取请求报文discover中包括源MAC地址、输入端口信息与输入VLAN ID。
步骤302,查询预先设置的防端口欺骗功能标识位,识别该防端口欺骗功能标识位是否有效。若该防端口欺骗功能标识位有效,说明开启了防端口欺骗功能,执行步骤303;否则,若该防端口欺骗功能标识位无效,说明未开启防端口欺骗功能,不再执行本实施例的后续流程,具体地,可以按照现有技术流程向DHCP服务器转发该第一IP地址获取请求报文discover,可以直接由DHCP窥探设备直接向DHCP服务器转发该第一IP地址获取请求报文discover,也可以通过DHCP中继向DHCP服务器转发该第一IP地址获取请求报文discover。
可以预先设置防端口欺骗功能标识位,该防端口欺骗功能标识位可以基于端口设置,确定是否在该端口上开启防端口欺骗功能,增加了防端口欺骗功能的灵活性。
步骤303,在MAC条目中记录第一IP地址获取请求报文discover中的源MAC地址、端口信息、输入VLAN ID,并将该MAC条目中的第一标识位置为有效值,将第二标识位保持为无效值。若不存在MAC条目,可以根据实际需求创建。
根据本发明的一个具体实施例,可以通过设置第一标识位上的值是否为有效值,来标识是否接收到第一IP地址获取请求报文discover。例如:可以预先设定,1为有效值,0为无效值。第一标识位上的值为1时,可以知道接收到第一IP地址获取请求报文discover,第一标识位上的值为0时,可以知道未接收到第一IP地址获取请求报文discover。
之后,可以将第一IP地址获取请求报文discover转发给DHCP服务器,以及将可以为PC用户分配IP地址的DHCP服务器返回的offer回应报文转发给PC。PC接收到offer回应报文后,可以选择一个返回offer回应报文的DHCP服务器发送第二IP地址获取请求报文request,请求该DHCP服务器分配IP地址。
步骤304,接收第二IP地址获取请求报文request,该第二IP地址获取请求报文request可以由PC发送给DHCP服务器,请求该DJHCP服务器分配IP地址,该第二IP地址获取请求报文request中包括源MAC地址、输入端口信息与输入VLAN ID。
步骤305,查询预先设置的防端口欺骗功能标识位,识别该防端口欺骗功能标识位是否有效。若该防端口欺骗功能标识位有效,说明开启了防端口欺骗功能,执行步骤306;否则,若该防端口欺骗功能标识位无效,说明未开启防端口欺骗功能,不再执行本实施例的后续流程,具体地,可以按照现有技术流程向DHCP服务器转发该第二IP地址获取请求报文request,可以直接由DHCP窥探设备直接向DHCP服务器转发该第二IP地址获取请求报文request,也可以通过DHCP中继向DHCP服务器转发该第二IP地址获取请求报文request。
步骤306,查询MAC表中是否存在与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目。若MAC表中存在与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目,执行步骤308;否则,若MAC表中不存在与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目,执行步骤307。
步骤307,丢弃该第二IP地址获取请求报文request。之后,不再执行本实施例的后续流程。
步骤308,查询MAC条目中的第一标识位是否为有效值。若MAC条目中的第一标识位为有效值,执行步骤309;否则,若MAC条目中的第一标识位为无效值,执行步骤307。
步骤309,将第二标识位置为有效值。
之后,可以将第二IP地址获取请求报文request转发给DHCP服务器。DHCP服务器可以针对该第二IP地址获取请求报文request返回ACK报文。
步骤310,接收DHCP服务器返回的ACK报文,该ACK报文也称为:DHCP ACK回应报文,其中包括目的MAC地址,即:PC的MAC地址。
步骤311,查询MAC表中是否存在与ACK报文中的目的MAC地址对应的MAC条目。若MAC表中存在与ACK报文中的目的MAC地址对应的MAC条目,执行步骤313;否则,若MAC表中不存在与ACK报文中的目的MAC地址对应的MAC条目,执行步骤312。
步骤312,丢弃该ACK报文。之后,不再执行本实施例的后续流程。
步骤313,查询目的MAC地址对应的MAC条目中,第一标识位与第二标识位是否均为有效值,来识别是否接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request。若第一标识位与第二标识位均为有效值,执行步骤314;否则,若第一标识位与第二标识位均为有效值中只要有一个为无效值或者均为无效值,执行步骤312。
具体地,该步骤313中,也可以先识别第一标识位是否为有效值,在第一标识位为有效值时,再识别第二标识位是否为有效值;或者,也可以先识别第二标识位是否为有效值,在第二标识位为有效值时,再识别第一标识位是否为有效值。第一标识位与第二标识位都为有效值时,执行步骤314,第一标识位与第二标识位中只要有一个为无效值或者均为无效值,执行步骤312。
步骤314,从目的MAC地址对应的MAC条目中获取源MAC地址、输入端口信息、输入VLAN ID,并根据该源MAC地址、输入端口信息、输入VLAN ID生成DHCP窥探绑定信息。
另外,在本发明上述实施例的DHCP窥探绑定信息的生成方法中,创建MAC条目后,可以按照预设时间监测该MAC条目,若在预设时间内未接收到该MAC条目相关的DHCP报文,则可以删除MAC条目。若接收到该MAC条目相关的DHCP报文,则利用该DHCP报文更新MAC条目,并在更新完成后重新按照预设时间监测。其中,MAC条目相关的DHCP报文具体可以为第一IP地址获取请求报文discover、第一IP地址获取请求报文discover的回应报文offer、第二IP地址获取请求报文request、或ACK报文。
设置预设时间,并在预设时间内未接收到MAC条目相关的DHCP报文时,删除相应的MAC条目,这样可以避免过期的MAC条目占用有效的存储空间,释放内存,提高存储空间的利用效率。
图6为本发明DHCP窥探绑定信息的生成装置一个实施例的结构示意图,该实施例的DHCP窥探绑定信息的生成装置可用于实现本发明上述实施例的DHCP窥探绑定信息的生成方法。如图6所示,该实施例的DHCP窥探绑定信息的生成装置包括接收模块401、第一查询模块402与生成模块403。其中,接收模块401用于接收DHCP服务器返回的ACK报文,该ACK报文中包括目的MAC地址。第一查询模块402用于查询MAC表中与ACK报文中的目的MAC地址对应的MAC条目,该MAC条目中包括输入端口信息、第一标识位与第二标识位。其中,第一标识位用于标识是否接收到第一IP地址获取请求报文discover,第二标识位用于标识是否接收到与第二IP地址获取请求报文request,第一IP地址获取请求报文discover与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应相同。生成模块403用于根据第一标识位与第二标识位,若接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request,根据MAC条目中的输入端口信息生成DHCP窥探绑定信息。
图7为本发明DHCP窥探绑定信息的生成装置另一个实施例的结构示意图,该实施例的DHCP窥探绑定信息的生成装置可用于实现本发明图4与图5所示实施例中的相应流程。如图7所示,与图6所示的实施例相比,该实施例的DHCP窥探绑定信息的生成装置还包括第一存储模块404与第一记录模块405。其中,接收模块401还用于接收第一IP地址获取请求报文discover,该第一IP地址获取请求报文discover中包括源MAC地址、输入端口信息与输入VLAN ID。第一存储模块404用于存储MAC表,该MAC表包括MAC地址与MAC条目之间的对应关系。相应的,第一记录模块405用于在第一存储模块404的MAC条目中记录由接收模块401接收到的第一IP地址获取请求报文discover中的源MAC地址、输入端口信息与输入VLAN ID,并将该MAC条目中的第一标识位置为有效值,将第二标识位保持为无效值。第一查询模块402具体从第一存储模块404中查询MAC表中与ACK报文中的目的MAC地址对应的MAC条目。
图8为本发明DHCP窥探绑定信息的生成装置又一个实施例的结构示意图,该实施例的DHCP窥探绑定信息的生成装置可用于实现本发明图5所示实施例中的相应流程。如图8所示,与图7所示的实施例相比,该实施例的DHCP窥探绑定信息的生成装置还包括第二存储模块406与识别模块407。其中,第二存储模块406用于存储防端口欺骗功能标识位,该防端口欺骗功能标识位有效时,在该端口开启防端口欺骗功能。识别模块407用于在接收模块401接收到第一IP地址获取请求报文discover时,识别第二存储模块406中的防端口欺骗功能标识位是否有效。相应的,第一记录模块405具体根据识别模块407的识别结果,在该防端口欺骗功能标识位有效时,在第一存储模块404的MAC条目中记录第一IP地址获取请求报文discover中的源MAC地址、输入端口信息与输入VLAN ID,并将第一标识位置为有效值,将第二标识位保持为无效值。
图9为本发明DHCP窥探绑定信息的生成装置再一个实施例的结构示意图,该实施例的DHCP窥探绑定信息的生成装置可用于实现本发明图4与图5所示实施例中的相应流程。如图9所示,与图7或图8所示的实施例相比,该实施例的DHCP窥探绑定信息的生成装置还包括第二查询模块408、第三查询模块409与第二记录模块410。该实施例中,接收模块401还用于接收第二IP地址获取请求报文request,该第二IP地址获取请求报文request中包括源MAC地址、输入端口信息与输入VLAN ID。第二查询模块408用于查询第一存储模块404中是否存在与接收模块401接收到的第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目。第三查询模块409用于根据第二查询模块408的查询结果,在第一存储模块404中存在与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目时,查询该MAC条目中的第一标识位是否为有效值。第二记录模块410用于根据第三查询模块409的查询结果,在MAC条目中的第一标识位为有效值时,将该MAC条目中的第二标识位置为有效值。
另外,为实现图4与图5中的相应流程,图9所示实施例的DHCP窥探绑定信息的生成装置中,识别模块407还可用于在接收模块401接收到接收第二IP地址获取请求报文request时,识别第二存储模块406中存储的防端口欺骗功能标识位是否有效。相应的,第二查询模块408具体根据识别模块407的识别结果,在该防端口欺骗功能标识位有效时,查询第一存储模块404中是否存在与接收模块401接收到的第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目。
进一步地,生成模块403具体可以根据MAC条目中的第一标识位与第二标识位,在接收模块401接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request时,从MAC条目中获取源MAC地址、输入端口信息、输入VLAN ID,并根据该源MAC地址、输入端口信息、输入VLANID生成DHCP窥探绑定信息。
图10为本发明DHCP窥探绑定信息的生成装置还一个实施例的结构示意图,与图7、图8或图9所示的实施例相比,该实施例的DHCP窥探绑定信息的生成装置还包括监测模块411与更新模块412。其中,监测模块411用于按照预设时间监测第一存储模块404中存储的MAC条目。更新模块412用于根据监测模块411的监测结果,在预设时间内未接收到MAC条目相关的DHCP报文时,删除该MAC条目,若接收模块401在预设时间内接收到该MAC条目相关的DHCP报文,在利用该DHCP报文更新MAC条目后,监测模块411在更新完成后重新按照预设时间监测。其中,MAC条目相关的DHCP报文为第一IP地址获取请求报文discover、第一IP地址获取请求报文discover的回应报文offer、第二IP地址获取请求报文request、或ACK报文。
设置预设时间,并在接收模块在预设时间内未接收到MAC条目相关的DHCP报文时,删除相应的MAC条目,这样可以避免过期的MAC条目占用有效的存储空间,释放内存,提高存储空间的利用效率。
本发明实施例还提供了一种DHCP窥探设备,该DHCP窥探设备可以包括本发明上述任一实施例的DHCP窥探绑定信息的生成装置。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例提供的DHCP窥探绑定信息的生成方法与装置,只有在接收到discover报文和request报文,且discover报文与request报文中的源MAC地址、输入端口信息、输入VLAN ID分别对应相同时,才根据MAC条目中的输入端口信息生成DHCP窥探绑定信息,与现有技术相比,可以有效避免在DHCP服务器向DHCP窥探设备回应ACK报文之前,由于MAC地址欺骗导致生成DHCP窥探绑定信息的端口发生迁移,保障通过下联口对用户发送的非法报文进行有效过滤,从而防止下联用户MAC地址欺骗对外部网络的攻击。
最后所应说明的是:以上实施例仅用以说明本发明的技术方案,而非对本发明作限制性理解。尽管参照上述较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解:其依然可以对本发明的技术方案进行修改或者等同替换,而这种修改或者等同替换并不脱离本发明技术方案的精神和范围。
Claims (15)
1、一种动态主机配置协议窥探绑定信息的生成方法,其特征在于,包括:
接收动态主机配置协议DHCP服务器返回的确认ACK报文,该ACK报文中包括目的介质访问控制MAC地址;
查询MAC表中与所述目的MAC地址对应的MAC条目,该MAC条目中包括输入端口信息、第一标识位与第二标识位,所述第一标识位用于标识是否接收到第一互联网协议IP地址获取请求报文discover,所述第二标识位用于标识是否接收到第二IP地址获取请求报文request,所述第一IP地址获取请求报文discover与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入虚拟局域网标识VLAN ID分别对应相同;
根据所述第一标识位与所述第二标识位,若接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request,根据所述MAC条目中的输入端口信息生成DHCP窥探绑定信息。
2、根据权利要求1所述的方法,其特征在于,所述接收DHCP服务器返回的ACK报文之前,还包括:
接收所述第一IP地址获取请求报文discover,该第一IP地址获取请求报文discover中包括源MAC地址、输入端口信息与输入VLAN ID;
在MAC条目中记录所述第一IP地址获取请求报文discover中的源MAC地址、输入端口信息与输入VLAN ID,并将所述第一标识位置为有效值,所述第二标识位保持为无效值。
3、根据权利要求2所述的方法,其特征在于,还包括:
查询预先设置的防端口欺骗功能标识位;
在该防端口欺骗功能标识位有效时,在MAC条目中记录所述第一IP地址获取请求报文discover中的源MAC地址、端口信息、输入VLAN ID,并将所述第一标识位置为有效值,所述第二标识位保持为无效值。
4、根据权利要求2或3所述的方法,其特征在于,将所述第一标识位置为有效值之后,还包括:
接收第二IP地址获取请求报文request,该第二IP地址获取请求报文request中包括源MAC地址、输入端口信息与输入VLAN ID;
查询所述MAC表中是否存在与所述第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目;
所述MAC表中存在与所述第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目时,查询所述MAC条目中的第一标识位是否为有效值;
在所述MAC条目中的第一标识位为有效值时,将所述第二标识位置为有效值。
5、根据权利要求4所述的方法,其特征在于,还包括:
查询预先设置的防端口欺骗功能标识位;
在该防端口欺骗功能标识位有效时,查询所述MAC表中是否存在与所述第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目。
6、根据权利要求5所述的方法,其特征在于,根据所述MAC条目中的输入端口信息生成DHCP窥探绑定信息包括:
从所述MAC条目中获取源MAC地址、输入端口信息、输入VLAN ID,并根据该源MAC地址、输入端口信息、输入VLAN ID生成DHCP窥探绑定信息。
7、根据权利要求1、2或3所述的方法,其特征在于,还包括:
监测所述MAC表中的MAC条目,若在预设时间内未接收到所述MAC条目相关的DHCP报文,删除所述MAC条目,所述MAC条目相关的DHCP报文为所述第一IP地址获取请求报文discover、所述第一IP地址获取请求报文discover的回应报文offer、所述第二IP地址获取请求报文request、或所述ACK报文。
8、一种动态主机配置协议窥探绑定信息的生成装置,其特征在于,包括:
接收模块,用于接收DHCP服务器返回的ACK报文,该ACK报文中包括目的MAC地址;
第一查询模块,用于查询MAC表中与所述目的MAC地址对应的MAC条目,该MAC条目中包括输入端口信息、第一标识位与第二标识位,所述第一标识位用于标识是否接收到第一互联网协议IP地址获取请求报文discover,所述第二标识位用于标识是否接收到与第二IP地址获取请求报文request,所述第一IP地址获取请求报文discover与第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应相同;
生成模块,用于根据所述第一标识位与所述第二标识位,若接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request,根据所述MAC条目中的输入端口信息生成DHCP窥探绑定信息。
9、根据权利要求8所述的装置,其特征在于,所述接收模块还用于接收所述第一IP地址获取请求报文discover,该第一IP地址获取请求报文discover中包括源MAC地址、输入端口信息与输入VLAN ID;
所述装置还包括:
第一存储模块,用于存储MAC表,所述MAC表包括MAC地址与MAC条目之间的对应关系;
第一记录模块,用于在所述第一存储模块的MAC条目中记录所述第一IP地址获取请求报文discover中的源MAC地址、输入端口信息与输入VLANID,并将所述第一标识位置为有效值,所述第二标识位保持为无效值。
10、根据权利要求9所述的装置,其特征在于,还包括:
第二存储模块,用于存储防端口欺骗功能标识位;
识别模块,用于在所述接收模块接收到所述第一IP地址获取请求报文discover时,识别所述防端口欺骗功能标识位是否有效;
所述第一记录模块具体根据所述识别模块的识别结果,在该防端口欺骗功能标识位有效时,在所述第一存储模块的MAC条目中记录所述第一IP地址获取请求报文discover中的源MAC地址、输入端口信息与输入VLAN ID,并将所述第一标识位置为有效值,所述第二标识位保持为无效值。
11、根据权利要求9或10所述的装置,其特征在于,所述接收模块还用于接收第二IP地址获取请求报文request,该第二IP地址获取请求报文request中包括源MAC地址、输入端口信息与输入VLAN ID;
所述装置还包括:
第二查询模块,用于查询所述第一存储模块中是否存在与所述第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目;
第三查询模块,用于根据所述第二查询模块的查询结果,在所述第一存储模块中存在与所述第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目时,查询所述MAC条目中的第一标识位是否为有效值;
第二记录模块,用于根据所述第三查询模块的查询结果,在所述MAC条目中的第一标识位为有效值时,将所述第二标识位置为有效值。
12、根据权利要求11所述的装置,其特征在于,所述识别模块还用于在所述接收模块接收到所述接收第二IP地址获取请求报文request时,识别所述防端口欺骗功能标识位是否有效;
第二查询模块具体根据所述识别模块的识别结果,在该防端口欺骗功能标识位有效时,查询所述第一存储模块中是否存在与所述第二IP地址获取请求报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应的MAC条目。
13、根据权利要求12所述的装置,其特征在于,所述生成模块具体根据所述第一标识位与所述第二标识位,在接收到第一IP地址获取请求报文discover与第二IP地址获取请求报文request时,从所述MAC条目中获取源MAC地址、输入端口信息、输入VLAN ID,并根据该源MAC地址、输入端口信息、输入VLAN ID生成DHCP窥探绑定信息。
14、根据权利要求9或10所述的装置,其特征在于,还包括:
监测模块,用于按照预设时间监测所述第一存储模块中存储的MAC条目;
更新模块,用于根据所述监测模块的监测结果,在预设时间内未接收到所述MAC条目相关的DHCP报文时,删除所述MAC条目,所述MAC条目相关的DHCP报文为所述第一IP地址获取请求报文discover、所述第一IP地址获取请求报文discover的回应报文offer、所述第二IP地址获取请求报文request、或所述ACK报文。
15、一种动态主机配置协议窥探设备,其特征在于,包括权利要求8至14任意一项所述的动态主机配置协议窥探绑定信息的生成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910090564A CN101656722B (zh) | 2009-08-27 | 2009-08-27 | 动态主机配置协议窥探绑定信息的生成方法与装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910090564A CN101656722B (zh) | 2009-08-27 | 2009-08-27 | 动态主机配置协议窥探绑定信息的生成方法与装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101656722A true CN101656722A (zh) | 2010-02-24 |
CN101656722B CN101656722B (zh) | 2012-09-05 |
Family
ID=41710813
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910090564A Expired - Fee Related CN101656722B (zh) | 2009-08-27 | 2009-08-27 | 动态主机配置协议窥探绑定信息的生成方法与装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101656722B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102638390A (zh) * | 2012-01-18 | 2012-08-15 | 神州数码网络(北京)有限公司 | 基于dhcp snooping的三层交换装置及方法 |
CN103096300A (zh) * | 2013-01-16 | 2013-05-08 | 大唐移动通信设备有限公司 | 基站虚拟局域网识别号自动获取方法及系统 |
CN105229972A (zh) * | 2013-05-15 | 2016-01-06 | 联发科技股份有限公司 | 增强的动态主机配置协议方法 |
CN109831330A (zh) * | 2019-01-30 | 2019-05-31 | 新华三技术有限公司 | 一种堆叠配置方法及装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101141304B (zh) * | 2007-09-18 | 2010-11-24 | 杭州华三通信技术有限公司 | Acl规则的管理方法和设备 |
KR100942719B1 (ko) * | 2007-10-22 | 2010-02-16 | 주식회사 다산네트웍스 | 동적 호스트 설정 프로토콜 스누핑 기능을 구비한 장치 |
CN101179566B (zh) * | 2007-11-24 | 2012-08-15 | 华为技术有限公司 | 一种防御arp报文攻击的方法和装置 |
-
2009
- 2009-08-27 CN CN200910090564A patent/CN101656722B/zh not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102638390A (zh) * | 2012-01-18 | 2012-08-15 | 神州数码网络(北京)有限公司 | 基于dhcp snooping的三层交换装置及方法 |
CN103096300A (zh) * | 2013-01-16 | 2013-05-08 | 大唐移动通信设备有限公司 | 基站虚拟局域网识别号自动获取方法及系统 |
CN105229972A (zh) * | 2013-05-15 | 2016-01-06 | 联发科技股份有限公司 | 增强的动态主机配置协议方法 |
CN109831330A (zh) * | 2019-01-30 | 2019-05-31 | 新华三技术有限公司 | 一种堆叠配置方法及装置 |
CN109831330B (zh) * | 2019-01-30 | 2021-08-24 | 新华三技术有限公司 | 一种堆叠配置方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101656722B (zh) | 2012-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8767737B2 (en) | Data center network system and packet forwarding method thereof | |
CN107733670B (zh) | 一种转发策略配置方法和装置 | |
US7339895B2 (en) | Gateway device and control method for communication with IP and IPV6 protocols | |
CN101465889B (zh) | 网络地址转换设备及其响应地址解析协议请求的方法 | |
EP3451592B1 (en) | Packet transmission between vxlan domains | |
US9548923B2 (en) | System and method for utilizing a unique identifier while registering a device in a network | |
CN101883090A (zh) | 一种客户端的接入方法、设备及系统 | |
TWI448127B (zh) | 取得遠端網路位址的方法及其網路協定系統 | |
CN110505621B (zh) | 一种终端迁移的处理方法及装置 | |
CN105245629A (zh) | 基于dhcp的主机通信方法及装置 | |
CN109194525A (zh) | 一种网络节点配置方法及管理节点 | |
CN103441932A (zh) | 一种主机路由表项生成方法及设备 | |
CN103024028A (zh) | 一种云计算中虚拟机ip地址探测系统及方法 | |
CN105162702A (zh) | 一种ac引流方法及装置 | |
CN101325553B (zh) | Iscsi数据穿越nat的方法和内网存储系统 | |
CN104144095A (zh) | 终端认证方法及交换机 | |
CN106464745A (zh) | Dns的服务器、客户端及数据同步方法 | |
CN105959188B (zh) | 一种控制用户终端上线的方法和装置 | |
CN110572365A (zh) | 多协议服务器管理方法、系统、终端设备及存储介质 | |
CN101656722B (zh) | 动态主机配置协议窥探绑定信息的生成方法与装置 | |
CN104660597A (zh) | 三层认证方法、装置及三层认证交换机 | |
CN101729314A (zh) | 动态表项的回收方法、装置及动态主机分配协议侦听设备 | |
CN103503413A (zh) | 传输网络信息的方法及装置 | |
CN106571968A (zh) | 一种业务切换方法和系统 | |
CN102143050A (zh) | 用于IPv6网络的网络连接处理方法及其装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120905 Termination date: 20150827 |
|
EXPY | Termination of patent right or utility model |