动态主机配置协议窥探绑定信息的生成方法与装置的制作方法

文档序号:7702003阅读:107来源:国知局
专利名称:动态主机配置协议窥探绑定信息的生成方法与装置的制作方法
技术领域
本发明涉及通信纟支术,尤其是一种动态主冲几配置协-汉(Dynamic Host Configure Protocol,以下简称DHCP )窥探绑定信息的生成方法与装置。
背景技术
在基于DHCP的DHCP网络系统中,可以通过DHCP窥探(SNOOPING) 设备,对DHCP服务器的回应报文进行过滤,来阻止其对内部网络的攻击。 图1为现有技术DHCP网络的一个拓朴结构示意图。在该图1所示的DHCP 网络中,个人计算4几(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窺 探绑定信息来过滤非法报文,从而防止下联用户通过介质访问控制(Media Access Control,以下简称MAC)地址欺骗对外部网络的攻击。其中,DHCP 窥才笨绑定信息包括用户IP地址、虚拟局fe戈网(Virtual Local Area Network,以 下简称VLAN)标识(identity,以下简称ID)、端口 ( port)、牙且约时间、 绑定类型等信息。具体地,DHCP窥探设备从DHCP服务器回应的确认 (Acknowledge,以下简称ACK)报文中获取输入VLAN ID 、 IP地址、租约时间等信息,并根据ACK报文中携带的MAC地址查询二层MAC表项, 获取该MAC地址对应的端口信息,由该端口信息与ACK报文中携带的输入 VLANID、 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地址#夂骗对外部网络的攻击。

发明内容
本发明实施例的目的是提供一种动态主机配置协议窥探绑定信息的生
口会发生迁移,有效保证DHCP窺探绑定信息的正确性。
为实现上述目的,本发明实施例提供的一种动态主机配置协议窥4冢绑定 信息的生成方法,包括
接收动态主机配置协议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报文中包括目的MACi也址;
第 一查询才莫块,用于查询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窥探绑定信息的端口发生迁移,保障通过下联口对用户发送的非法净艮文进行有效过滤,从而防止下if关用户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地址获取请求报文rcquest中的源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 4艮文,且discover才艮文与request才艮文中的源MAC地址、llT入端口信息、输入VLAN ID分别对应相同时,才根据MAC条目中的输入端口信息生成DHCP窥探绑定信息,可以有效避免在DHCP服务器向DHCP窥探设备回应ACK报文之前,由于MAC地址欺骗导致生成DHCP窥探绑定信息的端口发生迁移,保障通过下联口对用户发送的非法报文进行有效过滤,/人而防止下联用户MAC地址欺骗对外部网络的攻击。
图4为本发明DHCP窥探绑定信息的生成方法另一个实施例的流程图。该实施例的流程具体可以由DHCP窥探设备实现。如图4所示,该实施例的DHCP窥探绑定信息的生成方法包括以下步骤
步骤201 ,接收第一 IP地址获取请求"f艮文discover,该第一 IP地址获取请求报文discover可以由PC发送给同一 DHCP网络中的所有DHCP服务器,请求分配IP地址,该第一 IP地址获取请求报文discover中包括源MAC地址、输入端口信息与输入VLAN ID。
步骤202,在MAC条目中记录第一 IP地址获取请求报文discover中的源MAC地址、端口信息、输入VLAN ID,并将该MAC条目中的第一标识位置为有效值,将第二标识位保持为无效值。MAC条目可以预先创建,若未预先创建MAC条目,可以根据实际需求临时创建。
根据本发明的一个具体实施例,可以通过设置第一标识位上的值是否为有效值,来标识是否接收到第一 IP地址获取请求t艮文discover。例如可以预先设定,1为有效值,0为无效值。第一标识位上的值为1时,可以知道接收到第一 IP地址获取请求报文discover,第一标识位上的值为0时,可以知道未接收到第一 IP地址获取请求4良文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地址、输入端口 信息与l命入VLANID。
步骤204,查询MAC表中是否存在与第二 IP地址获取请求报文request 中的源MAC地址、输入端口信息、输入VLANID分别对应的MAC条目。 若MAC表中存在与第二IP地址获取请求报文request中的源MAC地址、输 入端口信息、输入VLANID分别对应的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窥纟笨绑定信息的生成方法中,在4妻收到discover 报文与request报文且二者中的源MAC地址、输入端口信息与输入VLAN ID 分别对应相同时,根据其中的输入端口信息生成DHCP窥探绑定信息,在此 之前,即使存在MAC地址欺骗,也只能修改二层MAC表项,而无法对discover 报文与r叫uest报文的全部信息进行一致性修改,因此,避免了在DHCP服务 器向DHCP窺探设备回应ACK报文之前,由于MAC地址欺骗导致生成DHCP 窺探绑定信息的端口发生迁移,保障了生成DHCP窥探绑定信息的端口信息 的正确性,以便通过下联口对用户发送的非法报文进行有效过滤,从而防止 下耳关用户MAC地址欺骗对外部网络的攻击。
图5为本发明DHCP窥探绑定信息的生成方法又一个实施例的流程图。该实施例的流程具体也可以由DHCP窥探设备实现。如图5所示,该实施例 的DHCP窥探绑定信息的生成方法包括以下步骤
步骤301 ,接收第一 IP地址获取请求报文discover,该第一 IP地址获取 请求报文discover可以由PC发送给同一 DHCP网络中的所有DHCP服务器, 请求分S己IP地址,该第一 IP地址获取请求报文discover中包括源MAC地址、 输入端口信息与输入VLANID。
步骤302,查询预先设置的防端口欺骗功能标识位,识别该防端口欺骗 功能标识位是否有效。若该防端口#大骗功能标识位有效,说明开启了防端口 欺骗功能,执行步骤303;否则,若该防端口欺骗功能标识位无效,i兌明未 开启防端口欺骗功能,不再执行本实施例的后续流程,具体地,可以4姿照现 有技术流程向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。
15之后,可以将第一 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地址、输入端口 信息与llT入VLANID。
步骤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条目
16中的第一标识位为有效值,执行步骤309;否则,若MAC条目中的第一标识 位为无效值,执行步骤307。
步骤309,将第二标识位置为有效值。
之后,可以将第二 IP地址获取请求报文request转发给DHCP服务器。 DHCP服务器可以针对该第二 IP地址获取请求报文request返回ACK报文。
步骤310,接收DHCP服务器返回的ACK报文,该ACK报文也称为 DHCP ACK回应l艮文,其中包括目的MAC地址,即PC的MAC地址。
步骤311,查询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地址、输 入端口信息、输入VLANID,并才艮据该源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地址、输入端口信息与 输入VLANID。第一存储模块404用于存储MAC表,该MAC表包括MAC 地址与MAC条目之间的对应关系。相应的,第一记录才莫块405用于在第一 存储模块404的MAC条目中记录由接收模块401接收到的第一 IP地址获取 请求报文discover中的源MAC地址、输入端口信息与输入VLAN ID,并将 该MAC条目中的第一标识位置为有效值,将第二标识位保持为无效^i。第 一查询模块402具体从第一存储模块404中查询MAC表中与ACK报文中的 目的MAC地址对应的MAC条目。
图8为本发明DHCP窥:深绑定信息的生成装置又一个实施例的结构示意 图,该实施例的DHCP窥探绑定信息的生成装置可用于实现本发明图5所示 实施例中的相应流程。如图8所示,与图7所示的实施例相比,该实施例的 DHCP窥探绑定信息的生成装置还包括第二存储模块406与识别模块407。其 中,第二存储模块406用于存储防端口欺骗功能标识位,该防端口#夂骗功能 标识位有效时,在该端口开启防端口欺骗功能。识别才莫块407用于在4妾收才莫 块401接收到第一 IP地址获取请求报文discover时,识别第二存储模块406 中的防端口欺骗功能标识位是否有效。相应的,第一记录才莫块405具体根据 识别模块407的识别结果,在该防端口欺骗功能标识位有效时,在第一存储 模块404的MAC条目中记录第一 IP地址获取请求报文discover中的源MAC 地址、输入端口信息与输入VLANID,并将第一标识位置为有效值,将第二 标识位保持为无效值。
图9为本发明DHCP窺探绑定信息的生成装置再一个实施例的结构示意 图,该实施例的DHCP窥探绑定信息的生成装置可用于实现本发明图4与图 5所示实施例中的相应流程。如图9所示,与图7或图8所示的实施例相比,该实施例的DHCP窺探绑定信息的生成装置还包括第二查询^t块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地址、输入端口信息、输入VLAN ID生成DHCP窥:探绑定信息。
图IO为本发明DHCP窥探绑定信息的生成装置还一个实施例的结构示意 图,与图7、图8或图9所示的实施例相比,该实施例的DHCP窺探绑定信
20息的生成装置还包括监测模块411与更新模块412。其中,监测模块411用 于按照预设时间监测第一存储模块404中存储的MAC条目。更新模块412 用于根据监测模块411的监测结果,在预设时间内未接收到MAC条目相关 的DHCP报文时,删除该MAC条目,若接收模块401在预设时间内4妻收到 该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地址欺骗对外部网络 的攻击。最后所应说明的是以上实施例仅用以说明本发明的技术方案,而非对 本发明作限制性理解。尽管参照上述较佳实施例对本发明进行了详细说明, 本领域的普通技术人员应当理解其依然可以对本发明的技术方案进行修改 或者等同替换,而这种修改或者等同替换并不脱离本发明技术方案的精神和 范围。
权利要求
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 地址、输入端口信息与输入VLANID,并将所述第一标识位置为有效值,所 述第二标识位保持为无效值。
3、 根据权利要求2所述的方法,其特征在于,还包括 查询预先设置的防端口欺骗功能标识位;在该防端口欺骗功能标识位有效时,在MAC条目中记录所述第一 IP地 址获取请求4艮文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地址、输入端口信息、输入VLANID, 并根据该源MAC地址、输入端口信息、输入VLAN ID生成DHCP窥探绑定 信息。
7、 根据权利要求l、 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地址、输入端口信息与输入VLAN ID,并将所述第一标识位置为有效值,所述第二标识位保持为无效值。
10、 根据权利要求9所述的装置,其特征在于,还包括 第二存储^^莫块,用于存储防端口欺骗功能标识位;识别模块,用于在所述接收模块接收到所述第一 IP地址获取请求报文 discover时,识别所述防端口欺骗功能标识位是否有效;所述第一记录模块具体根据所述识别模块的识别结果,在该防端口欺骗功能标识位有效时,在所述第 一存储^^块的MAC条目中记录所述第一 IP地 址获取请求报文discover中的源MAC地址、输入端口信息与输入VLANID, 并将所述第一标识位置为有效值,所述第二标识位保持为无效值。
11、 根据权利要求9或IO所述的装置,其特征在于,所述接收模块还用 于接收第二 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地址、输入端口信息、输入VLANID,并才艮据该源MAC地址、输入端 口信息、输入VLAN ID生成DHCP窥探绑定信息。
14、 根据权利要求9或IO所述的装置,其特征在于,还包括 监测模块,用于按照预设时间监测所述第一存储模块中存储的MAC条目;更新模块,用于根据所述监测模块的监测结果,在预设时间内未接收到 所述MAC条目相关的DHCP报文时,删除所述MAC条目,所述MAC条目 相关的DHCP报文为所述第一 IP地址获取请求报文discover,所述第一 IP地 址获取请求报文discover的回应报文offer、所述第二 IP地址获取请求报文 request、或所述ACK寺艮文。
15、 一种动态主机配置协议窥探设备,其特征在于,包括权利要求8至 14任意一项所述的动态主机配置协议窥探绑定信息的生成装置。
全文摘要
本发明实施例公开了一种动态主机配置协议窥探绑定信息的生成方法与装置,其中,方法包括接收DHCP服务器返回的ACK报文,其中包括目的MAC地址;查询与目的MAC地址对应的MAC条目;根据MAC条目中的第一标识位与第二标识位,若接收到报文discover与报文request,根据MAC条目中的输入端口信息生成DHCP窥探绑定信息,报文discover与报文request中的源MAC地址、输入端口信息、输入VLAN ID分别对应相同。本发明实施例可以避免由于MAC地址欺骗导致MAC表中MAC地址对应的端口会发生迁移,有效保证DHCP窥探绑定信息的正确性。
文档编号H04L29/06GK101656722SQ20091009056
公开日2010年2月24日 申请日期2009年8月27日 优先权日2009年8月27日
发明者何诗红, 吴晓亮 申请人:北京星网锐捷网络技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1