一种地址检测报文的处理方法和交换设备的制作方法

文档序号:7700323阅读:242来源:国知局
专利名称:一种地址检测报文的处理方法和交换设备的制作方法
技术领域
本发明涉及网络通信技术领域,特别涉及一种地址检测报文的处理方法 和交换设备。
背景技术
IPv6是IPv4的下一代网络协议,解决了 IPv4地址匮乏的问题,与IPv4 相比,具有固定长度的简洁报文头和内置的安全性,提供更好的服务质量 (QoS)支持和移动性支持。邻居发现(ND)协议作为IPv6的基础协议, 提供了地址解析、路由器发现、邻居不可达检测、重复地址检测等功能。
但是ND协议报文容易称为攻击者伪造的对象,被用于进行网络攻击。 如图1所示的网络架构中,交换机可以接收到与其直连的所有主机发送的 ND协议报文,当主才几需要使用 一个IP地址时,将该IP地址携带在ND地 址检测报文中发送给交换机,交换机将该ND地址检测报文进行转发,如果 在设定时间内没有接收到指示该IP地址已被使用的报文,则认为该IP地址 尚未被使用,是有效的,交换机存储包含ND地址检测报文携带的IP地址、 源媒体接入控制(MAC )地址和入端口信息的表项用于后续对该主机的报 文转发。如果攻击者在接收到交换机转发的ND地址检测报文后,仿冒发送 指示该ND地址检测报文所请求的IP地址已被使用的报文,则会造成所请 求使用的IP地址对应的表项无法生效,请求使用该IP地址的主机无法正常 通信。例如,在主机A发送包含IP_A的ND地址检测报文后,如果主机B 是攻击者,则主机B在接收到交换机转发的ND地址检测报文后,仿冒发送 指示该IP—A已被使用的4艮文,则会导致主机A请求的IP地址无法生效, 主机A无法进行正常的通信。针对上述安全攻击,现有技术中提供了 一种对ND协议报文进行加密的 方式,需要通信的网络节点之间实现加密和解密的处理。这就需要在组网时 对各网络节点进行加密解密的相关配置,使用复杂度较高。

发明内容
有鉴于此,本发明提供了 一种地址纟全测报文的处理方法和交换设备,以 便于更加简单地防止通过仿冒指示IP地址已被使用的报文进行的安全攻击。
一种地址检测4艮文的处理方法,该方法包括
A、 交换设备接收到邻居发现ND地址检测报文后,不将所述ND地址检测 报文转发给主机;
B、 获取所述ND地址检测报文的源媒体接入控制MAC地址、入端口信息 和所i青求的IP地址;
C、 判断该交换设备是否已经存储包含所述IP地址的安全表项,如果是, 执行步骤D;否则,执行步骤E;
D、 向接收所述ND地址检测报文所使用的端口回复指示所述IP地址已被 使用的报文,结束流程;
E、 将步骤B获取的源MAC地址、入端口信息和所请求的IP地址存储为 项,
一种交换设备,该交换设备包括报文接收单元、报文处理单元、第一判 断单元和表项存储单元;
所述报文接收单元,用于接收报文;
所述报文处理单元,用于在所述报文接收单元接收到ND地址检测报文时, 不将所述ND地址检测报文转发给主机,获取所述ND地址检测报文的源MAC 地址、入端口信息和所请求的IP地址;接收到回复通知后,向接收所述ND地 址检测报文所使用的端口回复指示所述IP地址已被使用的报文;
所述第一判断单元,用于判断该交换设备是否已经存储包含所述IP地址的 安全表项,如果是,向报文处理单元发送回复通知;否则,向所述表项存储单
6元发送存卡者通^P;
所述表项存储单元,用于接收到存储通知后,将所述报文处理单元获取的
源MAC地址、入端口信息和所请求的IP地址存储为安全表项用于除ND地址 检测报文之外的其它报文的转发。
由以上技术方案可以看出,在本发明中,交换设备接收到ND地址;险测 报文后,不再将ND地址检测报文转发给主机,且不再依赖ND地址检测报 文的回复结果来建立安全表项,而是通过判断交换设备是否已经存储包含所 请求IP地址的安全表项来确定是否建立安全表项用于除ND地址;险测净艮文 之外的其它报文转发,即判断该交换设备是否已经存储包含该IP地址的安 全表项,如果是,向接收该ND地址检测报文所使用的端口回复指示该IP 地址已被使用的报文;否则将ND地址检测报文的源MAC地址、入端口信 息和所请求的IP地址存储为安全表项。通过这种方式,交换设备将主机发 送的ND地址检测报文进行阻截和处理,攻击者对于指示IP地址已被使用 的报文进行的仿冒不能够千涉安全表项的生成,且相比较对ND协议报文进 行加密和解密的处理方式,更加筒单地防止了通过仿冒指示IP地址已被使 用的报文进行的安全攻击。


图1为攻击者进行网络攻击的示意图2为本发明实施例提供的详细方法流程图3为ND地址;险测报文的冲各式图4为NA报文的冲各式图5为多个交换机相连的组网架构图6为本发明实施例提供的交换设备组成示意图。
具体实施例方式
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体
7实施例对本发明进行详细描述。
本发明所提供的方法可以主要包括交换设备接收到主机发送的ND地 址才全测l艮文后,不将该ND地址才全测净艮文转发给其它主才几;获耳又ND地址氺全 测报文的源MAC地址、入端口信息和所请求的IP地址;判断该交换设备是 否已经存储包含该IP地址的安全表项,如果是,向接收该ND地址检测报 文所使用的端口回复指示该IP地址已被使用的报文;否则,将获取的源MAC 地址、入端口信息和所请求的IP地址存储为安全表项用于除ND地址纟全测 报文之外的其它报文的转发。
其中,上述交换设备可以是交换机、路由器等二层接入设备或三层转发 设备。
下面对本发明提供的上述方法进行详细描述。图2为本发明实施例提供 的详细方法流程图,该实施例中以交换才几和主才几构成的局域网为例进4亍描 述,如图2所示,该方法可以包^^以下步骤
步骤201:交换机接收到主机发送的ND地址检测4艮文后,不将该ND 地址纟全测报文转发给其它主机。
在ND协议中,主机在使用任何单播地址之前均需要检测IP地址是否 有效,该检测IP地址是否有效的报文为ND地址检测报文;通常,ND地址 检测报文的源地址为未指定地址(即全0的地址)的ND协议报文,交换设 备接收到源地址为未指定地址的ND协议报文时,确定该报文为ND地址检 测报文。当主机需要使用 一个IP地址时,需要将携带该IP地址的ND地址 检测报文在网络中广播,并进行重复地址检测。
为了防止攻击者仿冒指示IP地址已被使用的报文,例如ND地址检测 报文的回复(NA)报文,本发明中,交换机不再将接收到的主机发送的ND 地址检测报文转发给其它主机,而是采用以下步骤中所描述的方式生成安全 表项。
步骤202:获取ND地址检测报文的源MAC地址、入端口信息和所请 求的IP地址。ND地址检测报文的格式可以如图3所示,其中类型(Type)字段的内 容为135,主机请求的IP地址携带在ND地址检测报文的目标地址(Target Address)字l殳中。
其中,入端口信息可以是虚拟局域网(VLAN)接口与二层物理端口的 结合;也可以是三层以太网接口。
步骤203:交换机判断是否已经存储包含所请求IP地址的安全表项, 如果是,执行步骤204;否则,执行步骤209。
步骤204:判断包含该IP地址的安全表项的内容是否与步骤202获取 的源MAC地址、入端口信息和IP地址相同,如果是,执行步骤208;否则, 执行步骤205。
如果交换机已经存储包含所请求IP地址的安全表项,则在本步骤中进 一步确定存储的安全表项内容是否与ND地址4全测报文的入端口和源MAC 地址完全一致。如果完全一致,则说明该IP地址已被使用,不能再被发送 该ND地址检测报文的主机使用。如果不完全一致,则有可能是原来使用该 IP地址的主机更换了端口或MAC地址,则按照原有的表项构造ND地址才全 测报文进行发送检测原有主机是否仍再使用该IP地址,即执行步骤205。
步骤205:向包含该IP地址的安全表项所记录的端口发送携带该IP地 址的ND ;也址4全测才艮文。
步骤206:判断在设定时间内是否接收到指示该IP地址已被使用的报 文,如果是,执行步骤208。否则,执行步骤207。
如果在设定时间内接收到指示该IP地址已被使用的报文,则说明该IP 地址仍被原有主机使用,即包含该IP地址的安全表项仍有效,发送ND地 址检测报文的主机不能使用该IP地址。如果在设定时间内没有接收到指示 该IP地址已被使用的报文,则说明包含该IP地址的安全表项已经无效,则 发送ND地址检测报文的主机可以使用该IP地址,交换机执行步骤207。
步骤207:将包含该IP地址的安全表项内容替换为步骤202获取的源 MAC地址、入端口信息和所请求的IP地址,结束流程。步骤208:向接收ND地址4企测4艮文所4吏用的端口回复指示该IP地址已 被使用的报文,结束流程。
本步骤中指示该IP地址已被使用的报文可以为NA报文,NA报文的格 式可以如图4所示,类型字段为136, IP地址携带在目标地址(Target Address ) 字段中,发送ND地址检测报文的主机接收到该NA报文后,从目标地址字 段中获取该IP地址,确定该IP地址不能使用。
步骤209:将步骤202获取的源MAC地址、入端口信息和所请求的IP 地址存储为安全表项,结束流程。
另外,在如图5所示的组网环境中可能存在多个交换机相连,为了保证 与交换机1相连的主机可以通过交换机2进行正常的报文转发,同时保证与 交换机2相连的主机可以通过交换机1进行正常的报文转发,需要在交换机 1和交换机2上都按照本发明提供的方法对ND地址检测报文进行处理,并 建立表项。因此,更优地,交换机接收到ND检测报文后可以通过预设的信 任端口转发给与其相连的其它交换机。如图5所示,将交换机1和交换机2 之间的端口设置为信任端口 ,交换机1接收到ND地址检测报文后,仅通过 信任端口进行转发,不通过其它端口转发。在交换机2通过信任端口接收到 ND地址4全测报文后,对该ND地址;险测l艮文的处理方式如图2所示的流程 相同。
更进一步地,为了防止有些主机已经不再使用某些IP地址,即交换机 存储的安全表项中有些可能是失效的,交换机可以每隔固定时间对存储的各 安全表项进行有效性;险测。4企测的具体方式可以为向安全表项记录的端口 发送携带该安全表项所记录IP地址的ND地址4全测报文,判断在设定时间 内是否接收到指示该IP地址已被使用的报文,如果是,则保留该安全表项, 否则删除该安全表项。
在交换机对安全表项进行有效性一全测时,如果有主机正在^f吏用该安全表 项所使用的IP地址,则会回复指示该IP地址已被使用的报文,交换机接收 到该报文后,确定该安全表项仍有效,因此,保留该安全表项。如果在设定时间内没有接收到指示该IP地址已被使用的报文,说明该安全表项已经没 有被使用,该安全表项无效,可以删除该安全表项。
通过上述方式建立放入安全表项用于指导交换机进行除ND地址检测
报文之外的其它报文的转发,可以具体为交换机接收到除ND地址检测报 文之外的其它报文后,判断是否存储与接收到的该其它报文的源IP地址、 入端口信息和源MAC地址一致的安全表项,如果是,转发该其它报文;否 则丢弃该其它报文。
以上是对本发明提供的方法进行的详细描述,下面对本发明所提供的交 换设备进行详细描述。图6为本发明实施例提供的交换设备组成示意图,如 图6所示,该交换设备可以包括报文接收单元601、报文处理单元602、 第一判断单元603和表项存储单元604。
报文接收单元601 ,用于接收报文。
报文处理单元602,用于在报文接收单元601接收到ND地址检测报文 时,不将该ND地址检测报文转发给主机,获取该ND地址检测报文的源 MAC地址、入端口信息和所请求的IP地址;接收到回复通知后,向接收该 ND地址检测报文所使用的端口回复指示该IP地址已被使用的报文。
第一判断单元603,用于判断该交换设备是否已经存储包含报文处理单 元602获取的IP地址的安全表项,如果是,向报文处理单元602发送回复 通知;否则,向表项存储单元604发送存储通知。
表项存储单元604,用于接收到存储通知后,将报文处理单元602获取 的源MAC地址、入端口信息和所请求的IP地址存储为安全表项用于除ND 地址检测报文之外的其它4艮文的转发。
上述的报文处理单元602、第一判断单元603和表项存储单元604均可 以由交换设备的CPU实现,本发明中交换设备对于接收到的ND地址检测 报文直接上送CPU进行处理,不进行针对主机的硬件转发。但是,报文处 理单元602可以将ND地址纟全测4艮文通过预设的信任端口转发给其它交换i殳 备。以使得其它交换设备也能够存储安全表项以完成各主机的报文转发工作。
更优地,该交换设备还可以包括第一检测单元605,用于每隔预设时 间对各存储表项分别进行有效性检测,可以具体为向安全表项记录的端口 发送携带该安全表项所记录IP地址的ND地址检测报文;判断报文接收单 元601在设定时间内是否接收到指示该IP地址已被使用的报文,如果否, 指示表项存储单元604删除该安全表项。
更优地,在第一判断单元603和报文处理单元602之间还可以包括第 二判断单元606和第二4t测单元607。
第二判断单元,用于接收第一判断单元603发送的回复通知,判断包含 上述所请求的IP地址的安全表项的内容是否与报文处理单元602获取的源 MAC地址、入端口信息和所请求的IP地址相同,如果是,将回复通知转发 给报文处理单元602;否则将回复通知转发给第二^r测单元607。
第二;f企测单元607,用于4妻收到回复通知后,向包含该IP地址的安全 表项所记录的端口发送携带该IP地址的ND地址检测报文,如果报文接收 单元601在i殳定时间内接收到指示该IP地址已被使用的报文,则将回复通 知转发给报文处理单元602;否则通知表项存储单元604将包含该IP地址的 安全表项内容替换为才艮文处理单元602获取的源MAC地址、入端口信息和 所请求的IP地址。
对于除ND地址检测报文之外的其它报文,交换设备可以根据存储的安 全表项进行硬件转发处理,此时,交换设备还可以包括第三判断单元608 和硬件转发单元609。
第三判断单元608在报文接收单元601接收到除ND地址检测报文之外 的其它报文时,判断该交换设备是否已经存储与其它报文的源IP地址、入 端口信息和源MAC地址一致的安全表项,如果是,通知硬件转发单元609 转发该其它报文;否则,通知硬件转发单元609丢弃该其它报文。
其中,除ND地址斗企测报文之外的其它报文可以是IPv6数据4艮文,也 可以是除ND地址;险测报文之外的其它ND协议4艮文等。
12由以上描述可以看出,本发明提供的方法和交换设备具有以下优点
1 )在本发明中,交换设备接收到ND地址检测报文后,不再将ND地 址检测4艮文转发给主^L,且不再依赖ND地址检测报文的回复报文来建立安 全表项,而是通过判断交换设备是否已经存储包含所请求IP地址的安全表 项来确定是否建立安全表项用于除ND地址检测报文之外的其它报文转发, 即判断该交换设备是否已经存储包含该IP地址的安全表项,如果是,向接 收该ND地址4全测才艮文所使用的端口回复指示该IP地址已#1使用的才艮文; 否则将ND地址检测报文的源MAC地址、入端口信息和所请求的IP地址存 储为安全表项。通过这种方式,交换设备将主机发送的ND地址纟全测报文进 行阻截和处理,攻击者对于指示IP地址已被使用的报文进行的仿冒不能够 干涉安全表项的生成,且相比较对ND协议报文进行加密和解密的处理方式, 更加简单地防止了通过仿冒指示IP地址已被使用的报文进行的安全攻击。
2) 本发明在建立安全表项之前不会将接收到的ND地址检测报文转发 给主机,从而避免了诸如MAC地址、入端口等用户信息的泄漏,更进一步 保障了用户的安全。
3) 本发明配置简单,仅需要在交换设备上进行简单的特性使能,具体 击的防雄卩。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本 发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在 本发明保护的范围之内。
权利要求
1、一种地址检测报文的处理方法,其特征在于,该方法包括A、交换设备接收到邻居发现ND地址检测报文后,不将所述ND地址检测报文转发给主机;B、获取所述ND地址检测报文的源媒体接入控制MAC地址、入端口信息和所请求的IP地址;C、判断该交换设备是否已经存储包含所述IP地址的安全表项,如果是,执行步骤D;否则,执行步骤E;D、向接收所述ND地址检测报文所使用的端口回复指示所述IP地址已被使用的报文,结束流程;E、将步骤B获取的源MAC地址、入端口信息和所请求的IP地址存储为安全表项用于除ND地址检测报文之外的其它报文的转发。
2、 根据权利要求1所述的方法,其特征在于,所述步骤A还包括将接 收到的所述ND地址检测报文通过预设的信任端口转发给其它交换设备。
3、 根据权利要求1所述的方法,其特征在于,该方法还包括所述交换设向安全表项记录的端口发送携带该安全表项所记录IP地址的ND地址;险测 报文;判断在设定时间内是否接收到指示该IP地址已被使用的报文,如果是,保 留该安全表项;否则,删除该安全表项。
4、 根据权利要求1所述的方法,其特征在于,在所述步骤C和步骤D之 间还包括地址、入端口信息和所请求的IP地址相同,如果是,执行步骤D;否则执行步 骤C2;C2、向包含所述IP地址的安全表项所记录的端口发送携带所述IP地址的ND地址检测报文,如果在设定时间内接收到指示所述IP地址已被使用的报文,则执行步骤D,否则执行步骤C3;C3 、将包含所述IP地址的安全表项内容替换为步骤B获取的源MAC地址、 入端口信息和所请求的IP地址。
5、 根据权利要求1至4任一权项所述的方法,其特征在于,该方法还包括 所述交换设备接收到除ND地址检测报文之外的其它报文时,判断是否存储与 接收到的所述其它报文的源IP地址、入端口信息和源MAC地址一致的安全表 项,如果是,则转发所述其它报文,否则丢弃所述其它报文。
6、 一种交换设备,其特征在于,该交换设备包括报文接收单元、报文处 理单元、第一判断单元和表项存储单元;所述报文接收单元,用于接收报文;所述报文处理单元,用于在所述报文接收单元接收到ND地址检测报文时, 不将所述ND地址检测报文转发给主机,获取所述ND地址检测报文的源MAC 地址、入端口信息和所请求的IP地址;接收到回复通知后,向4姿收所述ND地 址检测l艮文所使用的端口回复指示所述IP地址已^皮使用的净艮文;所述第一判断单元,用于判断该交换设备是否已经存储包含所述IP地址的 安全表项,如果是,向报文处理单元发送回复通知;否则,向所述表项存储单 元发送存々者通知;所述表项存储单元,用于接收到存储通知后,将所述报文处理单元获取的 源MAC地址、入端口信息和所请求的IP地址存^f渚为安全表项用于除ND地址 检测报文之外的其它报文的转发。
7、 根据权利要求6所述的交换设备,其特征在于,所述报文处理单元,还 用于将所述ND地址检测报文通过预设的信任端口转发给其它交换设备。
8、 根据权利要求6所述的交换设备,其特征在于,该交换设备还包括第 一检测单元,用于每隔预设时间对各存储表项分别进行有效性检测,具体为 向安全表项记录的端口发送携带该安全表项所记录IP地址的ND地址^:测才艮 文;判断所述报文接收单元在设定时间内是否接收到指示该IP地址已被使用的报文,如果否,指示所述表项存储单元删除该安全表项。
9、 根据权利要求6所述的交换设备,其特征在于,该交换设备还包括第 二判断单元和第二检测单元;所述第二判断单元,用于接收所述第一判断单元发送的回复通知,判断包址、入端口信息和所请求的IP地址相同,如果是,将所述回复通知转发给所述 报文处理单元;否则将所述回复通知转发给所述第二检测单元;所述第二检测单元,用于接收到回复通知后,向包含所述IP地址的安全表 项所记录的端口发送携带所述IP地址的ND地址检测报文,如果所述报文接收 单元在设定时间内接收到指示所述IP地址已被使用的报文,则将回复通知转发 给所述报文处理单元;否则通知所述表项存储单元将包含所述IP地址的安全表 项内容替换为所述报文处理单元获取的源MAC地址、入端口信息和所请求的 IP地址。
10、 根据权利要求6至9任一权项所述的交换设备,其特征在于,该交换 设备还包括第三判断单元和硬件转发单元;所述第三判断单元,用于在所述报文接收单元接收到除ND地址检测报文 之外的其它报文时,判断该交换设备是否已经存储与所述其它报文的源IP地 址、入端口信息和源MAC地址一致的安全表项,如果是,通知所述硬件转发 单元转发所述其它报文;否则,通知所述硬件转发单元丟弃所述其它报文。
全文摘要
本发明提供了一种地址检测报文的处理方法和交换设备,其中,方法包括交换设备接收到邻居发现(ND)地址检测报文后,不再将该ND地址检测报文转发给主机;获取所述ND地址检测报文的源媒体接入控制(MAC)地址、入端口信息和所请求的IP地址;判断该交换设备是否已经存储包含所述IP地址的安全表项,如果是向接收所述ND地址检测报文所使用的端口回复指示所述IP地址已被使用的报文;否则,将获取的源MAC地址、入端口信息和所请求的IP地址存储为安全表项。本发明能够更加简单地防止通过仿冒指示IP地址已被使用的报文进行的安全攻击。
文档编号H04L12/56GK101552677SQ200910084018
公开日2009年10月7日 申请日期2009年5月12日 优先权日2009年5月12日
发明者周立萍, 王珍异 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1