CN102307144B - 一种trill网络中dhcp报文转发方法和路由桥 - Google Patents

一种trill网络中dhcp报文转发方法和路由桥 Download PDF

Info

Publication number
CN102307144B
CN102307144B CN201110241888.4A CN201110241888A CN102307144B CN 102307144 B CN102307144 B CN 102307144B CN 201110241888 A CN201110241888 A CN 201110241888A CN 102307144 B CN102307144 B CN 102307144B
Authority
CN
China
Prior art keywords
message
address
dhcp
multicast group
request message
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.)
Active
Application number
CN201110241888.4A
Other languages
English (en)
Other versions
CN102307144A (zh
Inventor
周万
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
New H3C Information Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201110241888.4A priority Critical patent/CN102307144B/zh
Publication of CN102307144A publication Critical patent/CN102307144A/zh
Application granted granted Critical
Publication of CN102307144B publication Critical patent/CN102307144B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Small-Scale Networks (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种TRILL网络中动态主机配置协议DHCP报文转发方法和路由桥,该方法包括:设置DHCP报文信任端口的RB将使用的TRILL网络中唯一虚拟组播组地址发送给TRILL网络中的其他RB,各RB针对组播分发树进行虚拟组播组剪枝;设置信任端口的RB收到请求报文时,将报文的目的MAC地址修改为广播地址并转发;未设置信任端口的RB收到请求报文时,将报文的目的MAC地址修改为虚拟组播组地址并沿组播分发树转发。基于同样的发明构思,本发明还提出一种RB,能够实现DHCP报文转发的私密性,减少网络受攻击的机会。

Description

一种TRILL网络中DHCP报文转发方法和路由桥
技术领域
本发明涉及通信技术领域,特别涉及一种多链接半透明互联(TRILL)网络中动态主机配置协议(DHCP)报文转发方法和路由桥。
背景技术
DHCP用来为网络设备动态地分配IP地址等网络配置参数。DHCP采用客户端和服务器通信模式,由客户端向服务器提出配置申请,服务器返回为客户端分配的IP地址等相应的配置信息,以实现IP地址等信息的动态配置。参见图1,图1为DHCP的典型应用结构示意图。在图1中,包括一台DHCP服务器101和多台DHCP客户端102,如PC机和便携机。
参见图2,图2为现有技术中DHCP客户端从DHCP服务器动态获取IP地址的流程图。其具体步骤为:
步骤201,DHCP客户端以广播方式发送DHCP发现报文。
步骤202,DHCP服务器收到DHCP客户发送的DHCP发现(DHCPDISCOVER)报文时,根据IP地址分配的优先次序选择出一个IP地址。
步骤203,DHCP服务器将选出的IP地址通过DHCP提供报文发送给客户端。
DHCP提供报文的发送方式由DHCP DISCOVER报文中的flag字段决定,一般是单播。
步骤204,DHCP客户端向DHCP服务器发送DHCP请求报文。
如果DHCP客户端收到有多台DHCP服务器发来DHCP提供报文,DHCP客户端只接受第一个收到的DHCP提供报文,然后以广播方式发送DHCP请求(DHCP REQUEST)报文,该报文中包含DHCP服务器在DHCP提供报文中分配的IP地址。
步骤205,DHCP服务器收到DHCP客户端发来的DHCP请求报文后,向DHCP发送应答报文。
本步骤中,只有DHCP客户端选择的服务器会进行如下操作:如果确认将地址分配给该客户端,则返回DHCP确认(DHCP ACK)报文;否则返回DHCP否定(DHCP NAK)报文,表明地址不能分配给该客户端。
DHCP报文侦听(DHCP Snooping)是DHCP的一种安全特性,网络中如果存在私自架设的伪DHCP服务器,则可能导致DHCP客户端获取错误的IP地址和网络配置参数,无法正常通信。为了使DHCP客户端能通过合法的DHCP服务器获取IP地址,DHCP Snooping安全机制允许将端口设置为信任端口和不信任端口。其中,信任端口正常转发接收到的DHCP报文。不信任端口接收到DHCP服务器响应的DHCP ACK和DHCP提供(DHCP OFFER)报文后,丢弃该报文。
连接DHCP服务器和其他DHCP Snooping设备的端口需要设置为信任端口,其他端口设置为不信任端口,从而保证DHCP客户端只能从合法的DHCP服务器获取IP地址,私自架设的伪DHCP服务器无法为DHCP客户端分配IP地址。
由上可见,DHCP的发现和请求报文都是广播发送。在TRILL网络中,广播报文沿着TRILL组播树发送到每个RB设备,在整个VLAN域内广播。参见图3,图3为现有技术中组播树组网结构示意图。
图3中,以RB301为根的组播树,其中RB301、RB302、RB303、RB304、RB305和RB306均使能VLAN200的DHCP snooping,由图中可知VLAN200内存在DHCP Client 311、未知设备312、嗅探者313、伪冒Server 314、合法DHCP Server 315。VLAN200内的DHCP Client 311发出的DHCPDISCOVER、REQUEST广播报文本来只需要转发给合法的DHCP Server312和合法DHCP Server 315,但由于沿着TRILL组播树转发,从而实际会到达未知设备312、嗅探者313、伪冒Server 314和合法DHCP Server 315,这就给嗅探者313和伪冒Server 314将来的攻击提供了机会。
综上所述,如果只针对组播树进行VLAN剪枝,将DHCP的DISCOVER和REQUEST报文沿着组播树转发,则DHCP报文在VLAN内广播,RB及下挂设备都会收到DHCP报文,因而给攻击者提供了机会。
发明内容
有鉴于此,本发明提供一种TRILL网络中DHCP报文的转发方法和路由桥,能够实现DHCP报文转发的私密性,减少网络受攻击的机会。
为解决上述技术问题,本发明的技术方案是这样实现的:
一种TRILL网络中DHCP报文的转发方法,所述TRILL网络至少包括一个组播树,其中,该组播树包括多个路由桥RB,将连接DHCP服务器的RB的端口设置为该组播树的DHCP报文信任端口,所述方法包括:
如果所述RB本地设置该组播树的DHCP报文信任端口,该RB将使用的所述TRILL网络中的唯一虚拟组播组地址通知该网络中的其它RB,并针对组播分发树进行所述虚拟组播组剪枝;当收到其它RB发来的目的地址为所述虚拟组播组地址的请求报文时,将所述请求报文的目的MAC地址修改为广播地址发送给自身下挂的DHCP服务器;该RB收到自身下挂的DHCP服务器发来的响应报文时,转发给发来所述请求报文的RB;
如果所述RB本地未设置该组播树的DHCP报文信任端口,该RB学习到设置信任端口的RB发来的虚拟组播组地址,并针对组播分发树进行所述虚拟组播组剪枝;当收到DHCP客户端发来的请求报文时,将所述请求报文的目的MAC地址修改为所述虚拟组播组地址并沿着组播分发树转发;当收到其它RB发来的响应报文时,转发给自身下挂的DHCP客户端。
一种TRILL网络中DHCP报文的转发路由桥,所述TRILL网络至少包括一个组播树,其中,该组播树包含多个RB,所述RB包括:配置单元、第一处理单元、学习单元和第二处理单元;
所述配置单元,与所述第一处理单元和所述学习单元相连,用于将连接DHCP服务器的自身所在的RB的端口设置为该组播树的DHCP报文信任端口;
所述第一处理单元,当所述配置单元为自身所在的RB配置了DHCP报文信任端口时,用于将使用的所述TRILL网络中的唯一虚拟组播组地址通知TRILL网络中的其它RB,并针对组播分发树进行所述虚拟组播组剪枝;用于接收到其它RB发来的目的地址为所述虚拟组播组地址的请求报文时,将所述请求报文的目的MAC地址修改为广播地址发送给自身所在的RB下挂的DHCP服务器;接收到自身所在的RB下挂的DHCP服务器发来的响应报文时,转发给发来所述请求报文的RB;
所述学习单元,与所述第二处理单元相连,当所述配置单元未为所述学习单元所在的RB配置DHCP报文信任端口时,用于学习设置信任端口的RB发来的虚拟组播组地址,并针对组播分发树进行所述虚拟组播组剪枝;
所述第二处理单元,用于当收到DHCP客户端发来的请求报文时,将所述请求报文的目的MAC地址修改为所述虚拟组播组地址并沿着组播分发树转发;当收到其它RB发来的响应报文时,转发给自身所在的RB下挂的DHCP客户端。
综上所述,在TRILL组网中,使能DHCP snooping功能,设置DHCP报文信任端口;设置DHCP报文信任端口的RB将使用的唯一虚拟组播组地址发送给TRILL网络中的其他RB,TRILL网络中的所有RB针对组播分发树进行VLAN剪枝后,进行虚拟组播组剪枝;设置DHCP报文信任端口的RB收到请求报文时,将报文的目的MAC地址修改为广播地址并转发;未设置DHCP报文信任端口的RB收到请求报文时,将报文的目的MAC地址修改为虚拟组播组地址并转发。本发明将TRILL网络中的DHCP报文交互过程限制在特定的转发路径上,不进行泛洪,能够实现DHCP报文转发的私密性,减少网络受攻击的机会。
附图说明
图1为DHCP的典型应用结构示意图;
图2为现有技术中DHCP客户端从DHCP服务器动态获取IP地址的流程图;
图3为现有技术中组播树组网结构示意图;
图4为本发明TRILL网络中DHCP报文的转发流程图;
图5为本发明具体实施例中DHCP报文转发的流程图;
图6为本发明构建配置的TRILL网络结构示意图;
图7为报文封装格式示意图;
图8为子TLV的集合示意图;
图9为组播记录示意图;
图10为本发明TRILL网络中DHCP报文的转发RB结构示意图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明所述方案作进一步地详细说明。
本发明实施时,预先构建配置TRILL网络,TRILL网络中至少包括一个个组播树,其中,该组播树包含多个RB。本发明中的具体实施例均针对一个组播树来进行说明和描述。
参见图4,图4为本发明TRILL网络中DHCP报文的转发流程图。具体步骤为:
步骤401,将连接DHCP服务器的RB的端口设置为该组播树的DHCP报文信任端口。
本步骤中DHCP报文信任端口通过使能DHCP snooping功能设置的。对未下挂DHCP服务器的RP本地不设置DHCP报文信任端口。如未下挂设备的RB,或则下挂主机设备但不是DHCP服务器的RB。
步骤402,如果RB本地设置该组播树的DHCP报文信任端口,该RB将使用的所述TRILL网络中的唯一虚拟组播组地址通知该网络中的其它RB,并针对组播树进行该虚拟组播组剪枝。
步骤403,当收到其它RB发来的目的地址为该虚拟组播组地址的请求报文时,将目的MAC地址修改为广播地址发送给自身下挂的DHCP服务器;该RB收到自身下挂的DHCP服务器发来的响应报文时,转发给发来请求报文的RB。
步骤404,如果RB本地未设置该组播树的DHCP报文信任端口,该RB学习到配置信任端口的RB发来的虚拟组播组地址,并针对组播树进行该虚拟组播组剪枝。
步骤405,当收到DHCP客户端发来的请求报文时,将该请求报文的目的MAC地址修改为虚拟组播组地址并沿着组播分发树转发;当收到其它RB发来的响应报文时,转发给自身下挂的DHCP客户端。
下面结合附图,以具体实施例来详细说明本发明中如何实现DHCP报文的转发。参见图5,图5为本发明具体实施例中DHCP报文转发的流程图。具体步骤为:
步骤501,构建配置TRILL网络。
参见图6,图6为本发明构建配置的TRILL网络结构示意图。图6中,以RB601为根的组播树,其中RB601、RB602、RB603、RB604、RB605、RB606和RB607皆为运行TRILL的RB,运行TRILL ISIS进程。各RB之间运行多链路透明互联中间系统之间路由协议(TRILL ISIS)协议,交互单播和组播标签转发路径(LSP)信息,网络中所有的RB之间LSP同步完成之后,每个RB进行单播拓扑,单播路由计算,组播拓扑和组播路由计算。对于组播路由计算,形成了一个组播分发树,未知单播、广播和组播报文在该分发树转发,并针对VLAN200的组播分发树进行VLAN剪枝。
图6中,RB601、RB602、RB603、RB604和RB605均使能VLAN200的DHCP snooping,VLAN200内存在DHCP Client 611、未知设备612、嗅探者613、伪冒Server 614、合法DHCP Server 615。VLAN200内的DHCP Client611发出的DHCP DISCOVER、REQUEST广播报文本来只需要转发给合法DHCP Server 615,但由于沿着TRILL组播树转发,从而实际会到达未知设备612、嗅探者613、伪冒Server 614和合法DHCP Server 615。本步骤中TRILL网络的构建配置同现有技术,这里不再赘述。
步骤502,在下挂服务器和主机设备的RB上且需要动态申请IP地址的VLAN内使能DHCP Snooping功能,运行DHCP Snooping进程,设置连接DHCP服务器的RB的端口为DHCP报文信任端口。
如图6中的RB601、RB602、RB603、RB604和RB605的VLAN200使能DHCP Snooping。对于连接了合法DHCP Server的端口,使能DHCP信任功能,即RB605连接合法DHCP Server 615的端口设置为DHCP报文信任端口。
步骤503,本地设置了DHCP报文信任端口的RB,将使用的唯一虚拟组播组地址发送给TRILL网络中的其他RB。
本步骤中的唯一虚拟组播组地址可以是该RB自身设置的,也可以是预先分配的,只要在整个TRILL网络中是唯一的即可。
RB将使用的唯一的虚拟组播组地址通知自身的TRILL ISIS进程,TRILL ISIS进程将该虚拟组播组地址作为类型长度值(TLV)封装,携带在TRILL ISIS的LSP报文中发送给TRILL网络中其他RB,在全网同步。如图6中RB605生成虚拟组播组地址为0100-0000-00EE。
参见图7,图7为报文封装格式示意图。图1中,Type表示TLV类型,为GADDR-TLV=142;Length表示该类型信息的总长度;sub-TLVs表示子tlv集合,包含虚拟组播组tlv,二层组播组tlv等信息。其定义参见图8,图8为子TLV的集合示意图。
图8中,Type表示sub-TLV Type,其值由IETF分配。Length表示该类型TLV总长度;Topology-Id/Nickname-Id表示生成该虚拟组播组tlv的RB;RESV为预留字节;VLAN-ID表示组播组所在的VLAN;Number of GroupRecords表示组播记录的项数;表示组播组记录。Group Record的定义参见图9,图9为组播记录示意图。图9中记录组播源数目和组播源地址。
步骤504,该RB进行组播分发树计算,针对组播分发树进行的VLAN剪枝后,进行虚拟组播组剪枝。
图6中带箭头的方向为DHCP请求报文转发路径;与箭头相反的方向为组播组地址发布方向。遍历分发树的每个端口,在发布携带虚拟组播组的TLV的ISIS LSP的RB的端口上生成虚拟组播组转发表项;该虚拟组播组转发表项存储组播组和未被剪掉的端口的端口号。
图6中,端口620是被剪掉的端口;端口630是虚拟组播组转发路径上的端口,即未被剪掉的端口。
步骤505,该RB的DHCP Snooping进程生成DHCP报文地址转换表项,用于将所有从TRILL隧道终结后的,且目的MAC地址为虚拟组播组地址的请求报文的目的MAC地址修改为广播地址。
本步骤中的TRILL隧道终结,是指剥掉TRILL网络隧道头,DHCP客户端发送的报文。该步骤中的DHCP报文地址转换表项记录了RB自身生成虚拟组播组地址。
步骤506,该RB收到目的MAC地址为虚拟组播组地址的请求报文时,根据DHCP报文地址转换表项,将该报文的目的MAC地址修改为广播地址,并转发给下挂的DHCP服务器。
本步骤中,如果收到目的MAC地址为组播转发表中存储虚拟组播组地址,则修改该目的MAC地址。同时将请求报文中携带的入口RB的桥标识(BRIDGE ID)号、客户端IP地址和客户端MAC地址绑定保存。
这里的请求报文包括:DHCP DISCOVER报文和DHCP REQUEST报文。其中,DHCP DISCOVER报文为DHCP客户端寻找DHCP服务器阶段发送的报文;DHCP REQUEST报文为客户端选择IP地址的阶段,如果收到多台DHCP服务器发来的DHCP OFFER报文,客户端只接受第一个收到的DHCPOFFER报文,并发送DHCP REQUEST报文。客户端收到DHCP OFFER报文,发送DHCP REQUEST报文的过程同现有技术,这里不再赘述。
步骤507,当该RB收到下挂的DHCP服务器发来的响应报文,根据请求报文的客户端MAC地址将收到的响应报文转发。
本步骤中当RB收到DHCP服务器的响应报文时,如果该响应报文的目的MAC为广播地址,则将广播地址修改为绑定保存的客户端MAC地址,并封装绑定保存的入口RB的BRIDGE ID号,转发给发来该请求报文的RB;如果该响应报文的目的MAC地址为绑定保存的客户端MAC地址,则直接封装绑定保存的入口RB的BRIDGE ID号,转发给发来请求报文的RB。
与DHCP DISCOVER报文对应的响应报文具体为DHCP OFFER报文;DHCP OFFER报文中携带了DHCP服务器为DHCP客户端配置的IP地址信息;与DHCP REQUEST报文对应的响应报文具体为DHCP ACK报文或NAK报文;DHCP ACK报文中携带了确认将IP地址分配给DHCP客户端,DHCPNAK报文中携带了确认没有将IP地址分配给DHCP客户端。
DHCP客户端收到DHCP DISCOVER报文根据IP地址分配选择一个IP地址并发送DHCP OFFER报文;以及收到DHCP REQUEST报文,并决定发DHCP ACK报文还是NAK报文的过程同现有技术,这里不再赘述。
步骤508,未地未设置DHCP报文信任端口的RB的TRILL ISIS进程学习到虚拟组播组地址,进行组播分发树计算,针对组播分发树进行VLAN剪枝后,进行虚拟组播组剪枝。
步骤509,该RB的DHCP Snooping进程生成相应的DHCP报文地址转换表项,用于将收到的请求报文的目的MAC地址修改为虚拟组播组地址。
本步骤中的DHCP报文转发表项中存储报文特征匹配字段和虚拟组播组地址。
步骤510,该RB收到下挂的DHCP客户端发来的请求报文时,根据相应的DHCP报文地址转换表项,将请求报文的目的MAC地址修改为虚拟组播组地址并沿着组播分发树转发。
当RB收到报文时,通过DHCP报文转发表中报文特征匹配字段进行匹配,如果确定报文为DHCP请求报文时,则修改该报文的目的MAC地址,同时为该请求报文封装入口RB的BRIDGE ID号,并沿着组播分发树转发。
步骤511,该RB收到其他RB发来的响应报文时,转发给自身下挂的DHCP客户端。
基于上述同样的发明构思,本发明还提出一种基于TRILL网络中DHCP报文的转发RB,该TRILL网络至少包括一个组播树,该组播树包括多个RB,该RB包括:配置单元1001、第一处理单元1002、学习单元1003和第二处理单元1004。
配置单元1001,与第一处理单元1002和学习单元1003相连,用于将连接DHCP服务器的自身所在的RB的端口设置为该组播组的DHCP报文信任端口;
第一处理单元1002,当配置单元1001为自身所在的RB配置了DHCP报文信任端口时,用于将使用的TRILL网络中的唯一虚拟组播组地址通知该网络中的其它RB,并针对组播分发树进行所述虚拟组播组剪枝;用于接收到其它RB发来的目的地址为所述虚拟组播组地址的请求报文时,将请求报文的目的MAC地址修改为广播地址发送给自身所在的RB下挂的DHCP服务器;接收到自身所在的RB下挂的DHCP服务器发来的响应报文时,转发给发来请求报文的RB;
学习单元1003,与第二处理单元1004相连,当配置单元1001未为学习单元1004所在的RB配置该组播树的DHCP报文信任端口时,用于学习设信任端口的RB发来的虚拟组播组地址,并针对组播分发树进行所述虚拟组播组剪枝;
第二处理单元1004,用于当收到DHCP客户端发来的请求报文时,将请求报文的目的MAC地址修改为虚拟组播组地址并沿着组播分发树转发;当收到其它RB发来的响应报文时,转发给自身所在的RB下挂的DHCP客户端。
较佳地,
第一处理单元1002,用于将使用的唯一虚拟组播组地址通知给自身所在RB的多链路透明互联中间系统之间路由协议TRILL ISIS进程,TRILL ISIS进程将虚拟组播组地址作为TLV封装,携带在TRILL ISIS的LSP报文中通知TRILL网络中的其他RB。
较佳地,
第一处理单元1002,在发送携带虚拟组播组的TLV的ISIS LSP的RB的端口上生成虚拟组播组转发表项;所述虚拟组播组转发表项存储组播组和未被剪掉的端口的端口号。
较佳地,该RB进一步包括:存储单元1005;
存储单元1005,与第一处理单元1002相连,用于将第一处理单元1002收到目的MAC地址为所述虚拟组播组地址的请求报文携带的入口RB的BRIDGE ID号、客户端IP地址和客户端MAC地址绑定保存;
第一处理单元1002,收到DHCP服务器发来的响应报文时,如果该响应报文的目的MAC地址为广播地址,则将广播地址修改为所述绑定保存的客户端MAC地址,并封装存储单元1005绑定保存的入口RB的BRIDGE ID号,转发给发来请求报文的RB;如果该响应报文的目的MAC地址为存储单元1005绑定保存的客户端MAC地址,则直接封装存储单元1005绑定保存的入口RB的BRIDGE ID号,转发给发来请求报文的RB。
较佳地,该RB进一步包括:生成单元1006。
生成单元1006,用于生成DHCP报文地址转换表项;该DHCP报文地址转换表项用于存储虚拟组播组地址;
第一处理单元1002,用于当收到其他RB发来的目的地址为生成单元1006生成的DHCP报文地址转换表项中存储的虚拟组播地址时,将请求报文的目的MAC地址修改为广播地址发送给自身所在的RB下挂的DHCP服务器;
学习单元1003,进一步用于生成相应的DHCP报文地址转发表项,该相应的DHCP报文地址转发表项用于存储所述虚拟组播组地址和报文特征匹配字段;其中,报文匹配字段用于匹配DHCP客户端发送的请求报文;
第二处理单元1004,用于当收到DHCP客户端发来报文,根据学习单元1004生成的相应的DHCP报文地址转发表项中保存的报文特征匹配字段,确定接收的报文为请求报文时,将请求报文的目的MAC地址修改为相应的DHCP报文地址转发表项中存储的虚拟组播组地址并沿着组播分发树转发。
较佳地,
请求报文包括:DHCP DISCOVER报文和DHCP REQUEST报文;
与DHCP DISCOVER报文对应的响应报文具体为DHCP OFFER报文;DHCP OFFER报文中携带了DHCP服务器为DHCP客户端配置的IP地址信息;
与DHCP REQUEST报文对应的响应报文具体为DHCP ACK报文或NAK报文;DHCP ACK报文中携带了确认将IP地址分配给DHCP客户端,DHCP NAK报文中携带了确认没有将IP地址分配给DHCP客户端。
上述实施例的单元可以集成于一体,也可以分离部署;可以合并为一个单元,也可以进一步拆分成多个子单元。
综上所述,本发明在设置了DHCP报文信任端口的RB上,使用针对到达DHCP服务器流量的唯一虚拟组播组地址,并且将该地址通过TRILL ISIS的LSP在整网泛洪到所有的RB设备。TRILL网络中所有的RB在组播分发树上针对该虚拟组播组地址进行剪枝运算,构建该虚拟组播组流量在TRILL网络的转发路径树,该转发路径树是一个以具有DHCP TRUST功能的RB为根的逆向树。
设置DHCP报文信任端口的RB收到请求报文时,将报文的目的MAC地址修改为广播地址并转发;未设置DHCP报文信任端口的RB收到请求报文时,将报文的目的MAC地址修改为虚拟组播组地址并转发。本发明将TRILL网络中的DHCP报文交互过程限制在特定的转发路径上,不进行泛洪,能够实现DHCP报文转发的私密性,减少网络受攻击的机会。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (12)

1.一种多链接半透明互联TRILL网络中动态主机配置协议DHCP报文转发方法,所述TRILL网络至少包括一个组播树,其中,该组播树包括多个路由桥RB,其特征在于,将连接DHCP服务器的RB的端口设置为该组播树的DHCP报文信任端口,所述方法包括: 
如果所述RB本地设置了该组播树的DHCP报文信任端口,该RB将使用的所述TRILL网络中的唯一虚拟组播组地址通知该网络中的其它RB,并针对组播分发树进行所述虚拟组播组剪枝;当收到其它RB发来的目的地址为所述虚拟组播组地址的请求报文时,将所述请求报文的目的MAC地址修改为广播地址发送给自身下挂的DHCP服务器;该RB收到自身下挂的DHCP服务器发来的响应报文时,转发给发来所述请求报文的RB; 
如果所述RB本地未设置该组播树的DHCP报文信任端口,该RB学习到设置信任端口的RB发来的虚拟组播组地址,并针对组播分发树进行所述虚拟组播组剪枝;当收到DHCP客户端发来的请求报文时,将所述请求报文的目的MAC地址修改为所述虚拟组播组地址并沿着组播分发树转发;当收到其它RB发来的响应报文时,转发给自身下挂的DHCP客户端。 
2.根据权利要求1所述的方法,其特征在于,所述RB将使用的所述TRILL网络中的唯一虚拟组播组地址通知该网络中的其它RB的方法为: 
所述RB将使用的所述TRILL网络中的唯一虚拟组播组地址通知给自身的多链路透明互联中间系统之间路由协议TRILL ISIS进程,所述TRILL ISIS进程将所述虚拟组播组地址作为类型长度值TLV封装,携带在TRILL ISIS的标签转发路径LSP报文中通知TRILL网络中的其他RB。 
3.根据权利要求2所述的方法,其特征在于,所述针对组播分发树进行所述虚拟组播组剪枝的方法为: 
遍历组播分发树的每个端口,在发送携带虚拟组播组的TLV的ISIS LSP的RB的端口上生成虚拟组播组转发表项;所述虚拟组播组转发表项存储组 播组和未被剪掉的端口的端口号。 
4.根据权利要求1-3任意一项所述的方法,其特征在于,所述方法进一步包括:收到其它RB发来的目的地址为所述虚拟组播组地址的请求报文时,将所述请求报文携带的入口RB的桥标识BRIDGE ID号、客户端IP地址和客户端MAC地址绑定保存; 
所述RB收到自身下挂的DHCP服务器发来的响应报文时,转发给发来所述请求报文的RB的方法为: 
收到DHCP服务器发来的响应报文时,如果所述响应报文的目的MAC地址为广播地址,则将所述广播地址修改为所述绑定保存的客户端MAC地址,并封装所述绑定保存的入口RB的BRIDGE ID号,转发给发来所述请求报文的RB;如果所述响应报文的目的MAC地址为所述绑定保存的客户端MAC地址,则直接封装所述绑定保存的入口RB的桥标识BRIDGE ID号,转发给发来所述请求报文的RB。 
5.根据权利要求1-3任意一项所述的方法,其特征在于,本地设置了DHCP报文信任端口的RB,针对组播分发树进行所述虚拟组播组剪枝之后,所述方法进一步包括:生成DHCP报文地址转换表项;所述DHCP报文地址转换表项用于存储所述虚拟组播组地址; 
所述当收到其它RB发来的目的地址为所述虚拟组播组地址的请求报文时,将所述请求报文的目的MAC地址修改为广播地址发送给自身下挂的DHCP服务器的方法为:当收到其他RB发来的目的地址为所述DHCP报文地址转换表项中存储的虚拟组播地址时,将所述请求报文的目的MAC地址修改为广播地址发送给自身下挂的DHCP服务器; 
本地未设置DHCP报文信任端口的RB,针对组播分发树进行所述虚拟组播组剪枝之后,所述方法进一步包括:生成相应的DHCP报文地址转发表项;所述相应的DHCP报文地址转发表项用于存储所述虚拟组播组地址和报文特征匹配字段;所述报文匹配字段用于匹配所述DHCP客户端发送的请求报文; 
当收到DHCP客户端发来的请求报文时,将所述请求报文的目的MAC地址修改为所述虚拟组播组地址并沿着组播分发树转发的方法为:当收到DHCP客户端发来的报文时,根据所述相应的DHCP报文地址转发表项中保存的报文特征匹配字段,确定接收的报文为请求报文时,将所述请求报文的目的MAC地址修改为所述相应的DHCP报文地址转发表项中存储的虚拟组播组地址并沿着组播分发树转发。 
6.根据权利要求1-3任意一项所述的方法,其特征在于, 
所述请求报文包括:DHCP DISCOVER报文和DHCP REQUEST报文; 
与所述DHCP DISCOVER报文对应的响应报文具体为DHCP OFFER报文;所述DHCP OFFER报文中携带了所述DHCP服务器为DHCP客户端配置的IP地址信息; 
与所述DHCP REQUEST报文对应的响应报文具体为DHCP ACK报文或NAK报文;所述DHCP ACK报文中携带了确认将IP地址分配给DHCP客户端,所述DHCP NAK报文中携带了确认没有将IP地址分配给DHCP客户端。 
7.一种多链接半透明互联TRILL网络中动态主机配置协议DHCP报文转发路由桥RB,所述TRILL网络至少包括一个组播树,其中,该组播树包含多个RB,其特征在于,所述RB包括:配置单元、第一处理单元、学习单元和第二处理单元; 
所述配置单元,与所述第一处理单元和所述学习单元相连,用于将连接DHCP服务器的自身所在的RB的端口设置为该组播树的DHCP报文信任端口; 
所述第一处理单元,当所述配置单元为自身所在的RB配置了DHCP报文信任端口时,用于将使用的所述TRILL网络中的唯一虚拟组播组地址通知该网络中的其它RB,并针对组播分发树进行所述虚拟组播组剪枝;用于接收到其它RB发来的目的地址为所述虚拟组播组地址的请求报文时,将所述请求报文的目的MAC地址修改为广播地址发送给自身所在的RB下挂的DHCP服务器;接收到自身所在的RB下挂的DHCP服务器发来的响应报文 时,转发给发来所述请求报文的RB; 
所述学习单元,与所述第二处理单元相连,当所述配置单元未为所述学习单元所在的RB配置DHCP报文信任端口时,用于学习设置信任端口的RB发来的虚拟组播组地址,并针对组播分发树进行所述虚拟组播组剪枝; 
所述第二处理单元,用于当收到DHCP客户端发来的请求报文时,将所述请求报文的目的MAC地址修改为所述虚拟组播组地址并沿着组播分发树转发;当收到其它RB发来的响应报文时,转发给自身所在的RB下挂的DHCP客户端。 
8.根据权利要求7所述的RB,其特征在于, 
所述第一处理单元,用于将使用的唯一虚拟组播组地址通知给自身所在RB的多链路透明互联中间系统之间路由协议TRILL ISIS进程,所述TRILL ISIS进程将所述虚拟组播组地址作为TLV封装,携带在TRILL ISIS的标签转发路径LSP报文中通知TRILL网络中的其他RB。 
9.根据权利要求8所述的RB,其特征在于, 
所述第一处理单元,在发送携带虚拟组播组的TLV的ISIS LSP的自身所在的RB的端口上生成虚拟组播组转发表项;所述虚拟组播组转发表项存储组播组和未被剪掉的端口的端口号。 
10.根据权利要求7-9任意一项所述的RB,其特征在于,所述RB进一步包括:存储单元; 
所述存储单元,与所述第一处理单元相连,用于将所述第一处理单元接收到目的地址为所述虚拟组播组地址的请求报文携带的入口RB的桥标识BRIDGE ID号、客户端IP地址和客户端MAC地址绑定保存; 
所述第一处理单元,收到DHCP服务器发来的响应报文时,如果所述响应报文的目的MAC地址为广播地址,则将所述广播地址修改为所述绑定保存的客户端MAC地址,并封装所述存储单元绑定保存的入口RB的BRIDGEID号,转发给发来所述请求报文的RB;如果所述响应报文的目的MAC地址为所述绑定保存的客户端MAC地址,则直接封装所述存储单元绑定保存 的入口RB的BRIDGE ID号,转发给发来所述请求报文的RB。 
11.根据权利要求7-9任意一项所述的RB,其特征在于,所述RB进一步包括:生成单元; 
所述生成单元,与所述第一处理单元相连,用于生成DHCP报文地址转换表项;所述DHCP报文地址转换表项用于存储所述虚拟组播组地址; 
所述第一处理单元,用于当收到其他RB发来的目的地址为所述生成单元生成的DHCP报文地址转换表项中存储的虚拟组播地址时,将所述请求报文的目的MAC地址修改为广播地址发送给自身所在的RB下挂的DHCP服务器; 
所述学习单元,进一步用于生成相应的DHCP报文地址转发表项,所述相应的DHCP报文地址转发表项用于存储所述虚拟组播组地址和报文特征匹配字段;所述报文匹配字段用于匹配所述DHCP客户端发送的请求报文; 
所述第二处理单元,用于当收到DHCP客户端发来报文,根据所述学习单元生成的相应的DHCP报文地址转发表项中保存的报文特征匹配字段,确定接收的报文为请求报文时,将所述请求报文的目的MAC地址修改为所述相应的DHCP报文地址转发表项中存储的虚拟组播组地址并沿着组播分发树转发。 
12.根据权利要求7-9任意一项所述的RB,其特征在于, 
所述请求报文包括:DHCP DISCOVER报文和DHCP REQUEST报文; 
与所述DHCP DISCOVER报文对应的响应报文具体为DHCP OFFER报文;所述DHCP OFFER报文中携带了所述DHCP服务器为DHCP客户端配置的IP地址信息; 
与所述DHCP REQUEST报文对应的响应报文具体为DHCP ACK报文或NAK报文;所述DHCP ACK报文中携带了确认将IP地址分配给DHCP客户端,所述DHCP NAK报文中携带了确认没有将IP地址分配给DHCP客户端。 
CN201110241888.4A 2011-08-19 2011-08-19 一种trill网络中dhcp报文转发方法和路由桥 Active CN102307144B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110241888.4A CN102307144B (zh) 2011-08-19 2011-08-19 一种trill网络中dhcp报文转发方法和路由桥

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110241888.4A CN102307144B (zh) 2011-08-19 2011-08-19 一种trill网络中dhcp报文转发方法和路由桥

Publications (2)

Publication Number Publication Date
CN102307144A CN102307144A (zh) 2012-01-04
CN102307144B true CN102307144B (zh) 2014-06-11

Family

ID=45380956

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110241888.4A Active CN102307144B (zh) 2011-08-19 2011-08-19 一种trill网络中dhcp报文转发方法和路由桥

Country Status (1)

Country Link
CN (1) CN102307144B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103209132B (zh) * 2012-01-16 2017-06-27 华为技术有限公司 在透明多链路互联(trill)网络中实现组播的方法、装置及系统
US9270589B2 (en) * 2012-04-04 2016-02-23 Marvell Israel (M.I.S.L) Ltd. Transparent RBridge
CN103490967B (zh) * 2012-06-13 2018-04-27 中兴通讯股份有限公司 别名、多链路透明互连trill报文处理方法及装置
CN103516620B (zh) * 2012-06-21 2016-10-05 华为技术有限公司 一种vm的迁移方法、系统及服务器
CN103685036B (zh) 2012-08-30 2016-12-28 华为技术有限公司 发送、接收报文方法、网络设备及系统
CN103501289B (zh) * 2013-09-17 2017-01-18 神州数码网络(北京)有限公司 一种多链接透明互联网络中组播分发树的剪切方法及装置
CN103841028B (zh) * 2014-03-24 2017-02-08 杭州华三通信技术有限公司 一种报文转发方法及设备
CN105530189B (zh) * 2014-09-29 2020-05-08 华为技术有限公司 Trill网络中转发报文的方法和路由桥
CN109120537B (zh) * 2017-06-23 2020-10-16 迈普通信技术股份有限公司 组播树计算方法和装置
CN115225349B (zh) * 2022-06-29 2024-01-23 北京天融信网络安全技术有限公司 一种蜜罐流量处理方法、装置、电子设备及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6937574B1 (en) * 1999-03-16 2005-08-30 Nortel Networks Limited Virtual private networks and methods for their operation
CN101924641A (zh) * 2010-08-26 2010-12-22 北京星网锐捷网络技术有限公司 组播源信息处理方法、装置及系统

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6937574B1 (en) * 1999-03-16 2005-08-30 Nortel Networks Limited Virtual private networks and methods for their operation
CN101924641A (zh) * 2010-08-26 2010-12-22 北京星网锐捷网络技术有限公司 组播源信息处理方法、装置及系统

Also Published As

Publication number Publication date
CN102307144A (zh) 2012-01-04

Similar Documents

Publication Publication Date Title
CN102307144B (zh) 一种trill网络中dhcp报文转发方法和路由桥
US7590115B1 (en) Exchange of control information for virtual private local area network (LAN) service multicast
CN101960785B (zh) 在链路状态协议受控以太网网络上实现vpn
US10057116B2 (en) Method and device for configuring and managing network element equipment, and network element equipment
CN107277190B (zh) 一种sdn设备自动上线的方法、sdn设备和控制器
CN101155130B (zh) 学习mac地址的方法及传送vpls客户数据的系统及设备
CN106603407B (zh) 组播地址的传输方法和装置
CN102577257B (zh) 一种实现虚拟局域网标识转换的方法及装置
CN102820977B (zh) 组播方法、装置及网络设备
CN104954265B (zh) 发送组播报文的方法及交换机
CN102801625A (zh) 一种异构网络二层互通的方法及设备
CN101001264B (zh) L1vpn地址分配的方法、装置、网络边沿设备和编址服务器
CN102273177A (zh) 邻居发现协议调解
CN102510414A (zh) 一种传递主机名的方法和装置
CN106921573B (zh) NVo3网络中用于发布租户路由的方法及装置
CN102571375B (zh) 组播转发方法、装置及网络设备
CN101610254B (zh) 组播用户权限控制方法、组播认证服务器和接入设备
CN103138955B (zh) 在第2层网络中使用多个igmp查询器
WO2020220459A1 (zh) 基于VXLAN和OpenFlow的虚拟家庭网络共享方法及系统
CN104365066A (zh) 用于以太虚拟专用网的方法和设备
CN102291305B (zh) 实现6to4中继路由的方法和设备以及报文转发方法
CN102801622A (zh) 一种数据报文的转发方法及转发装置
CN101808038B (zh) 一种vpn实例的划分方法和设备
CN101924698B (zh) 基于ip单播路由的二层域负载均衡方法、系统和设备
CN102710510A (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
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address

Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No.

Patentee after: NEW H3C TECHNOLOGIES Co.,Ltd.

Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base

Patentee before: HANGZHOU H3C TECHNOLOGIES Co.,Ltd.

CP03 Change of name, title or address
TR01 Transfer of patent right

Effective date of registration: 20230620

Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd.

Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466

Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd.

TR01 Transfer of patent right