CN107094110B - 一种dhcp报文转发方法及装置 - Google Patents

一种dhcp报文转发方法及装置 Download PDF

Info

Publication number
CN107094110B
CN107094110B CN201710258686.8A CN201710258686A CN107094110B CN 107094110 B CN107094110 B CN 107094110B CN 201710258686 A CN201710258686 A CN 201710258686A CN 107094110 B CN107094110 B CN 107094110B
Authority
CN
China
Prior art keywords
dhcp
message
mac address
leaf node
address
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
CN201710258686.8A
Other languages
English (en)
Other versions
CN107094110A (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 Technologies Co Ltd
Original Assignee
New 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 New H3C Technologies Co Ltd filed Critical New H3C Technologies Co Ltd
Priority to CN201710258686.8A priority Critical patent/CN107094110B/zh
Publication of CN107094110A publication Critical patent/CN107094110A/zh
Application granted granted Critical
Publication of CN107094110B publication Critical patent/CN107094110B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses
    • H04L61/5014Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/622Layer-2 addresses, e.g. medium access control [MAC] addresses

Abstract

本发明提供一种DHCP报文转发方法及装置,所述方法应用于分布式VXLAN组网中的DHCP服务器接入的leaf节点,所述leaf节点使能了DHCPrelay功能,所述方法包括:接收DHCP服务器发送的第一DHCP报文,所述第一DHCP报文为所述DHCP服务器针对接收到的来自DHCP客户端的第二DHCP报文的回应报文;若本地MAC地址表中记录有DHCP客户端的MAC地址对应的MAC表项,则通过所述MAC表项中记录的出接口发送所述第一DHCP报文;若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,以使所述对应的leaf节点通过本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。

Description

一种DHCP报文转发方法及装置
技术领域
本发明涉及通信技术领域,尤其涉及一种DHCP报文转发方法及装置。
背景技术
DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)采用客户端/服务器模式,由DHCP服务器为网络设备动态地分配IP地址等网络配置参数。DHCP客户端和DHCP服务器处于不同物理网段时,DHCP客户端可以通过DHCP中继与DHCP服务器通信,获取IP地址及其他配置信息。
VXLAN(Virtual eXtensible LAN,可扩展虚拟局域网络)是基于IP网络、采用“MACin UDP”封装形式的二层VPN技术。VXLAN可以基于已有的服务提供商或企业IP网络,为分散的物理站点提供二层互联,并能够为不同的租户提供业务隔离。
在基于VXLAN的分布式网关架构中,每个Leaf节点均为三层网关,同一个VPN内,Leaf节点上的VSI(Virtual Switch Interface,虚拟交换实例)接口地址均相同,通常在Leaf节点上使能DHCP Relay功能。如果使用该VSI接口地址作为主机发送的报文的源IP地址,即DHCP服务器回应的Offer、ACK等报文的目的IP地址也是所述VSI接口地址,由于每个Leaf中的VSI接口地址均相同,则leaf节点收到DHCP服务器回应的目的地址为VSI接口地址的报文时,无法根据该VSI地址将报文转发到正确的Leaf节点上。
发明内容
有鉴于此,本发明提供一种DHCP报文转发方法及装置来解决因地址分配导致的DHCP报文无法转发到目标设备的问题。
具体地,本发明是通过如下技术方案实现的:
本发明提供一种DHCP报文转发方法,所述方法应用于分布式VXLAN组网中的DHCP服务器接入的leaf节点,所述leaf节点使能了DHCP relay功能,所述方法包括:
接收DHCP服务器发送的第一DHCP报文,所述第一DHCP报文为所述DHCP服务器针对接收到的来自DHCP客户端的第二DHCP报文的回应报文;
若本地MAC地址表中记录有DHCP客户端的MAC地址对应的MAC表项,则通过所述MAC表项中记录的出接口发送所述第一DHCP报文;
若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,以使所述对应的leaf节点通过其本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。
进一步的,所述第一DHCP报文的目的MAC地址为所述DHCP客户端的MAC地址;所述第一DHCP报文的目的IP地址为所述DHCP客户端接入的leaf节点的VSI接口地址。
进一步的,该方法还包括:
若接收到DHCP客户端接入的leaf节点发送的同步消息,所述同步消息中携带所述DHCP客户端的MAC地址,则在本地MAC地址表中记录所述DHCP客户端的MAC地址对应的MAC表项。
进一步的,所述记录的MAC表项中的出接口为本leaf节点上接收到所述同步消息的接口。
进一步的,所述根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,包括:
根据所述目的IP地址查询本地记录的路由表,获取对应的至少一个出接口;
按照预设的策略,从获取的至少一个出接口中选择出目的出接口,通过所述目的出接口将所述第一DHCP报文发送至对应的leaf节点。
基于相同的构思,本发明还提供一种DHCP报文转发装置,所述装置应用于分布式VXLAN组网中的DHCP服务器接入的leaf节点,所述leaf节点使能了DHCP relay功能,所述装置包括:
报文接收单元,用于接收DHCP服务器发送的第一DHCP报文,所述第一DHCP报文为所述DHCP服务器针对接收到的来自DHCP客户端的第二DHCP报文的回应报文;
第一发送单元,用于若本地MAC地址表中记录有DHCP客户端的MAC地址对应的MAC表项,则通过所述MAC表项中记录的出接口发送所述第一DHCP报文;
第二发送单元,用于若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,以使所述对应的leaf节点通过其本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。
进一步的,所述第一DHCP报文的目的MAC地址为所述DHCP客户端的MAC地址;所述第一DHCP报文的目的IP地址为所述DHCP客户端接入的leaf节点的VSI接口地址。
进一步的,该装置还包括:
地址记录单元,用于若接收到DHCP客户端接入的leaf节点发送的同步消息,所述同步消息中携带所述DHCP客户端的MAC地址,则在本地MAC地址表中记录所述DHCP客户端的MAC地址对应的MAC表项。
进一步的,所述地址记录单元记录的MAC表项中的出接口为本leaf节点上接收到所述同步消息的接口。
进一步的,所述第二发送单元,具体用于根据所述目的IP地址查询本地记录的路由表,获取对应的至少一个出接口;按照预设的策略,从获取的至少一个出接口中选择出目的出接口,通过所述目的出接口将所述第一DHCP报文发送至对应的leaf节点。
由此可见,本发明的DHCP服务器接入的leaf节点可以接收DHCP服务器发送针对接收到的来自DHCP客户端的第二DHCP报文回应的第一DHCP报文;若本地MAC地址表中记录有DHCP客户端的MAC地址对应的MAC表项,则通过所述MAC表项中记录的出接口发送所述第一DHCP报文;若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,以使所述对应的leaf节点通过本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。因此,本发明可以通过DHCP客户端的MAC地址查找到目的DHCP客户端对应的出接口,从而实现将DHCP报文转发到目的DHCP客户端的目的,提升分布式网关中的leaf节点的适用性。
附图说明
图1是本发明一种示例性实施方式中分布式网关的组网示意图;
图2是本发明一种示例性实施方式中的一种DHCP报文转发方法的处理流程图;
图3是本发明一种示例性实施方式中的一种DHCP报文转发示意图;
图4是本发明一种示例性实施方式中的另一种DHCP报文转发示意图;
图5发明一种示例性实施方式中的DHCP报文转发装置的指令所在的设备的硬件结构图;
图6本发明一种示例性实施方式中的一种DHCP报文转发装置的逻辑结构图。
具体实施方式
请参考图1,是本发明一种示例性实施方式中的分布式leaf节点的组网示意图,所述分布式leaf节点是基于VXLAN网络组建的,其中包括多个leaf节点。其中leaf节点3连接DHCP SERVER,即DHCP服务器,DHCP服务器用于为网络设备动态地分配IP地址等网络配置参数,其他leaf节点,例如leaf1节点连接HOST主机,例如DHCP客户端。DHCP客户端和DHCP服务器处于不同物理网段时,DHCP客户端可以通过DHCP中继与DHCP服务器通信。
在每个leaf节点上使能DHCP Relay实现地址分配时,leaf节点可以作为DHCPrelay网关。当DHCP报文在leaf节点之间转发时,由于leaf节点节点上的VSI接口地址均相同,如果使用该VSI接口地址作为DHCP服务器客户端发送的DHCP报文的源地址,则会导致DHCP服务器回应的DHCP报文使用该VSI接口地址作为目的IP地址时,从而无法将回应的第二DHCP报文转发到DHCP客户端所在的leaf节点上。
为了解决现有技术存在的问题,本发明提供一种DHCP报文转发方法请参考图2,是本发明一种示例性实施方式中的一种DHCP报文转发方法的处理流程图,所述方法应用于分布式VXLAN组网中的DHCP服务器接入的leaf节点,所述leaf节点使能了DHCP relay功能,所述方法包括:
步骤201、接收DHCP服务器发送的第一DHCP报文,所述第一DHCP报文为所述DHCP服务器针对接收到的来自DHCP客户端的第二DHCP报文的回应报文;
在本实施例中,在基于VXLAN的分布式leaf节点下,在每个leaf节点上均使能了DHCP Relay功能。DHCP服务器接入的leaf节点可以接收DHCP服务器发送的第一DHCP报文,该第一DHCP报文为DHCP服务器针对接收到的来自DHCP客户端的第二DHCP报文的回应报文。
本实施例中,分布式leaf节点在转发DHCP客户端发送的第二DHCP报文时,该第二DHCP报文的源IP地址和giaddr(DHCP中继)地址都是DHCP客户端接入的leaf节点的VSI接口地址,当DHCP服务器收到第二DHCP报文后,以giaddr地址为DHCP客户端分配IP地址,具体来讲,每个DHCP地址池都有对应的网段,通过giaddr地址查找到网段,再通过网段找到对应DHCP地址池,在这个DHCP地址池的网段下进行地址的分配,即选择一个空闲未分配的IP地址来作为DHCP客户端的IP地址。并且针对该第二DHCP报文回复的第一DHCP报文的目的IP地址仍为VSI接口地址。而由于第二DHCP报文的源MAC地址为DHCP客户端的MAC地址,则所述第一DHCP报文的目的MAC地址即为所述DHCP客户端的MAC地址;所述第一DHCP报文的目的IP地址为所述DHCP客户端接入的leaf节点的VSI接口地址。
步骤202、若本地MAC地址表中记录有DHCP客户端的MAC地址对应的MAC表项,则通过所述MAC表项中记录的出接口发送所述第一DHCP报文;
当本leaf节点收到第一DHCP报文时,可以获取该第一DHCP报文中的目的MAC地址,即DHCP客户端的MAC地址,进一步判断本地MAC地址表中是否记录有DHCP客户端的MAC地址对应的MAC表项,如果有记录,则说明本leaf节点已经学习到了该DHCP客户端的MAC地址,因此可以通过所述MAC表项中记录的出接口将所述第一DHCP报文发送到该DHCP客户端接入的leaf节点。该DHCP客户端接入的leaf节点在收到该第一DHCP报文时,可以根据第一DHCP报文的目的MAC地址将第一DHCP报文转发至DHCP客户端。
步骤203、若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,以使所述对应的leaf节点通过本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。
若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,即DHCP服务器接入的leaf节点没有学习到DHCP客户端的MAC地址,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点。具体来讲,本leaf节点可以根据所述第一DHCP报文的目的IP地址查询本地记录的路由表,从该路由表中获取对应的至少一个出接口,具体来讲,DHCP服务器接入的leaf节点在查询本地记录的路由表时,会查找第一DHCP报文的目的IP地址对应的出接口,由于此时所述目的IP地址为DHCP客户端接入的leaf节点的VSI接口地址,且每个leaf节点上的VSI接口地址均相同,因此该leaf节点会查找到该目的IP地址对应的多个出接口。然后本leaf节点可以按照预设的策略,例如按照当前最优链路优先,或是按照DHCP客户端对应的预设的链路等策略,从获取的至少一个出接口中选择出目的出接口,通过所述目的出接口将所述第一DHCP报文发送至对应的leaf节点。当所述对应的leaf节点收到第一DHCP报文时,可以通过本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。
之所以DHCP服务器接入的leaf节点上可能会学习不到DHCP客户端的MAC地址,是因为DHCP客户端接入的leaf节点在同步DHCP客户端的MAC地址时,执行的同步策略不同。
关于同步策略的说明如下:
首先,将leaf节点分为两类:一是DHCP服务器接入的leaf节点,为了后续描述方便,记为第一leaf节点;一是除去第一leaf节点以外的leaf节点,为了后续描述方便,记为第二leaf节点。
根据leaf节点的分类,MAC地址的同步策略有两种:一是向第一leaf节点同步,一是向第二leaf节点同步。
因此,如果DHCP客户端接入的leaf节点仅向第二leaf节点同步DHCP客户端的MAC地址,第二leaf节点可能有多个,则这些第二leaf节点会学习到DHCP客户端的MAC地址,此时,第一leaf节点则学习不到DHCP客户端的MAC地址;如果DHCP客户端接入的leaf节点仅向第一leaf节点同步DHCP客户端的MAC地址,则第一leaf节点、即DHCP服务器接入的leaf节点会学习到DHCP客户端的MAC地址,此时,第二leaf节点则学习不到DHCP客户端的MAC地址。当然,DHCP客户端接入的leaf节点也可以选择同时向第一leaf节点和第二leaf节点同步DHCP客户端的MAC地址。
为使本发明的目的、技术方案及优点更加清楚明白,下面结合图3、图4对本发明该方案作进一步地详细说明。
本实施例中,如图3所示,leaf1接收DHCP客户端(即本地主机host1)发往DHCP服务器的DHCP discover报文,该DHCP discover报文的源MAC地址为host 1的MAC地址,源IP地址为host1的IP地址,目的MAC地址为DHCP服务器的MAC地址。
leaf 1收到DHCP discover报文时,进行本地MAC地址学习,具体来讲:leaf1判断接收到的DHCP discover报文所属的VSI,将DHCP discover报文中的源MAC地址(主机host1的MAC地址)添加到该VSI的MAC地址表中,在MAC地址表中,主机host1的MAC地址对应的接口为leaf1接收到DHCP discover报文的接口、记为接口1-1。然后,leaf 1需要将主机host1的MAC地址向其他leaf节点进行同步。
在本实施例中,将leaf节点分为两类:一是DHCP服务器接入的leaf节点(例如leaf3),为了后续描述方便,记为第一leaf节点;一是除第一leaf节点以外的其他leaf节点(例如leaf1、leaf2),为了后续描述方便,记为第二leaf节点。则需要进行主机MAC地址同步的即为第二leaf节点。
根据leaf节点的分类,主机MAC地址的同步策略有两种:一是向第一leaf节点同步,一是向第二leaf节点同步。
如图3所示,如果同步策略为向第一leaf节点同步,则预先在第二leaf节点上配置第一leaf节点的地址,则第二leaf节点学习到主机MAC地址后,根据预先配置的第一leaf节点的地址,向第一leaf节点同步学习到的主机MAC地址;例如,预先在leaf1和leaf2上配置leaf3的地址,则leaf1学习到host1的MAC地址后,根据预先配置的leaf3的地址,向leaf3同步host1的MAC地址,同步消息中携带host1的MAC地址,则leaf3会在本地MAC地址表中添加host1的MAC地址,对应的接口为leaf3上接收到同步消息的接口、记为隧道接口2-1,同步消息如图3中的箭头①所示;leaf2学习到host2的MAC地址后,根据预先配置的leaf3的地址,向leaf3同步host2的MAC地址,同步消息中携带host2的MAC地址,则leaf3会在本地MAC地址表中添加host2的MAC地址,对应的接口为leaf3上接收到同步消息的接口,记为隧道接口2-2,同步消息如图3中的箭头②所示;
如图4所示,如果同步策略为向第二leaf节点同步,则预先在第二leaf节点上配置除本节点以外的其他第二leaf节点的地址,则本节点学习到主机MAC地址后,根据预先配置的其他第二leaf节点的地址,向其他第二leaf节点同步学习到主机MAC地址;例如,预先在leaf1上配置leaf2的地址,在leaf2上配置leaf1的地址,则leaf 1学习到host1的MAC地址后,根据预先配置的leaf2的地址,向leaf 2同步host 1的MAC地址,同步消息中携带host 1的MAC地址,则leaf 2会在本地MAC地址表中添加host 1的MAC地址,对应的接口为leaf 2上接收到同步消息的接口、记为隧道接口3-1,同步消息如图4中的箭头①所示;leaf 2学习到host 2的MAC地址后,根据预先配置的leaf 1的地址,向leaf 1同步host 2的MAC地址,同步消息中携带host 2的MAC地址,则leaf 1会在本地MAC地址表中添加host 2的MAC地址,对应的接口为leaf 1上接收到同步消息的接口、记为隧道接口3-2,同步消息如图4中的箭头②所示。
本申请示例中,主机MAC地址的同步可采用BGP协议。
leaf 1将接收到的来自host1DHCP discover报文中的源IP地址修改为自身的VSI接口地址,根据目的MAC地址(即DHCP服务器的MAC地址)查找MAC地址表获取到对应的出接口,将DHCP discover报文进行VXLAN封装后通过所述出接口转发到Leaf 3。
当Leaf3收到DHCP discover报文后,根据目的MAC地址(DHCP服务器的MAC地址)查找MAC地址表获取到对应的出接口,将DHCP discover报文转发到DHCP服务器。
DHCP服务器针对DHCP discover报文回应DHCP Offer报文。该DHCP Offer报文的目的IP地址是leaf 1的VSI接口地址,目的MAC地址为host1的MAC地址,源MAC地址为DHCP服务器的MAC地址。
Leaf 3接收DHCP Offer报文,可以先查找本地MAC地址表项中是否存在与目的MAC地址(host1的MAC地址)对应的出接口,需要说明的是,由于同步策略不同,对应的查找结果存在两种情况:
第一种情况:
如图3所示,如果同步策略为向第一leaf节点同步,则leaf 3的MAC地址表项中存在host1的MAC地址对应的表项,则leaf3获取host1的MAC地址对应的出接口,即隧道接口2-1,然后leaf3可以将DHCP Offer报文进行VXLAN隧道封装,然后通过隧道接口2-1将封装后的DHCP Offer报文转发至leaf1,转发隧道如图3的箭头③所示。当leaf1收到leaf3转发的该DHCP Offer报文时,则可以查找本地MAC地址表项中目的MAC地址(host1的MAC地址)对应的出接口1-1,从而将该DHCP Offer报文通过该出接口1-1转发至目的MAC地址对应的主机host1。
第二种情况:
如图4所示,如果同步策略为向第二leaf节点同步,则leaf 3的MAC地址表项中不存在host1的MAC地址对应的表项,此时,leaf 3可以根据DHCP Offer报文目的IP地址(即leaf 1的VSI接口地址)转发该DHCP Offer报文。需要说明的是,该DHCP Offer报文需要查路由表转发,所述路由表中包括IP地址和隧道接口。由于DHCP Offer报文的目的IP地址为leaf 1的VSI接口地址,而leaf 2和leaf 1属于同一个VPN,两者的VSI接口地址相同,因此根据该VSI接口地址查找路由表后可以获得对应的两个出接口(一个对应leaf 1、一个对应leaf 2),即去往该VSI接口地址的路径有两条,此时leaf 3可以根据预设的路由策略选路,从而选择出一个出接口。因此,DHCP Offer报文可能不会转发到leaf 1。如图4中的箭头③所示,若是leaf 2收到该DHCP Offer报文,则可以查找本地MAC地址表项中是否存在与目的MAC地址对应的出接口,由于leaf 1已经将主机host1的MAC地址通知到leaf2节点,因此leaf2节点可以查找到主机MAC地址对应的出接口,leaf 2节点可以进一步将DHCP Offer报文进行VXLAN封装,然后通过出接口转发至leaf 1,如图4中的箭头④所示。当leaf 1收到leaf 2转发的该DHCP Offer报文,则可以查找本地MAC地址表项中是否存在与目的MAC地址对应的出接口,从而查找到该目的MAC地址对应的出接口1-1,则将该DHCP Offer报文通过该出接口1-1转发至目的MAC地址对应的主机host1。
基于相同的构思,本发明还提供一种DHCP报文转发装置,该装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,本发明的DHCP报文转发装置作为一个逻辑意义上的装置,是通过其所在设备的CPU将存储器中对应的计算机程序指令读取后运行而成。
请参考图5,是本发明一种示例性实施方式中的一种DHCP报文转发装置的指令所在的设备的硬件结构图,所述装置作为计算机程序指令应用于分布式VXLAN组网中的DHCP服务器接入的leaf节点,所述leaf节点使能了DHCP relay功能,该装置基本运行环境包括CPU,存储器以及其他硬件,本发明的DHCP报文转发装置对应的指令存储在存储器中,从逻辑层面上来看,该DHCP报文准发装置的逻辑结构如图6所示,该装置600包括:
报文接收单元601,用于接收DHCP服务器发送的第一DHCP报文,所述第一DHCP报文为所述DHCP服务器针对接收到的来自DHCP客户端的第二DHCP报文的回应报文;
第一发送单元602,用于若本地MAC地址表中记录有DHCP客户端的MAC地址对应的MAC表项,则通过所述MAC表项中记录的出接口发送所述第一DHCP报文;
第二发送单元603,用于若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,以使所述对应的leaf节点通过其本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。
可选的,所述第一DHCP报文的目的MAC地址为所述DHCP客户端的MAC地址;所述第一DHCP报文的目的IP地址为所述DHCP客户端接入的leaf节点的VSI接口地址。
可选的,该装置还包括:
地址记录单元604,用于若接收到DHCP客户端接入的leaf节点发送的同步消息,所述同步消息中携带所述DHCP客户端的MAC地址,则在本地MAC地址表中记录所述DHCP客户端的MAC地址对应的MAC表项。
可选的,所述地址记录单元604记录的MAC表项中的出接口为本leaf节点上接收到所述同步消息的接口。
可选的,所述第二发送单元603,具体用于根据所述目的IP地址查询本地记录的路由表,获取对应的至少一个出接口;按照预设的策略,从获取的至少一个出接口中选择出目的出接口,通过所述目的出接口将所述第一DHCP报文发送至对应的leaf节点。
由此可见,本发明的DHCP服务器接入的leaf节点可以接收DHCP服务器发送针对接收到的来自DHCP客户端的第二DHCP报文回应的第一DHCP报文;若本地MAC地址表中记录有DHCP客户端的MAC地址对应的MAC表项,则通过所述MAC表项中记录的出接口发送所述第一DHCP报文;若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,以使所述对应的leaf节点通过本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。因此,本发明可以通过DHCP客户端的MAC地址查找到目的DHCP客户端对应的出接口,从而实现将DHCP报文转发到目的DHCP客户端的目的,提升分布式网关中的leaf节点的适用性。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (10)

1.一种DHCP报文转发方法,其特征在于,所述方法应用于分布式VXLAN组网中的DHCP服务器接入的叶子leaf节点,所述leaf节点使能了DHCP relay功能,所述分布式VXLAN组网中还包括除所述DHCP服务器接入的leaf节点以外的至少一个其他leaf节点,所述其他leaf节点连接DHCP客户端,所述方法包括:
接收DHCP服务器发送的第一DHCP报文,所述第一DHCP报文为所述DHCP服务器针对接收到的来自DHCP客户端的第二DHCP报文的回应报文;
若本地MAC地址表中记录有DHCP客户端的MAC地址对应的MAC表项,则通过所述MAC表项中记录的出接口发送所述第一DHCP报文;
若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,以使所述对应的leaf节点通过其本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。
2.根据权利要求1所述DHCP报文转发方法,其特征在于,
所述第一DHCP报文的目的MAC地址为所述DHCP客户端的MAC地址;所述第一DHCP报文的目的IP地址为所述DHCP客户端接入的leaf节点的VSI接口地址。
3.根据权利要求1所述DHCP报文转发方法,其特征在于,该方法还包括:
若接收到DHCP客户端接入的leaf节点发送的同步消息,所述同步消息中携带所述DHCP客户端的MAC地址,则在本地MAC地址表中记录所述DHCP客户端的MAC地址对应的MAC表项。
4.根据权利要求3所述DHCP报文转发方法,其特征在于,
所述记录的MAC表项中的出接口为本leaf节点上接收到所述同步消息的接口。
5.根据权利要求2所述DHCP报文转发方法,其特征在于,所述根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,包括:
根据所述目的IP地址查询本地记录的路由表,获取对应的至少一个出接口;
按照预设的策略,从获取的至少一个出接口中选择出目的出接口,通过所述目的出接口将所述第一DHCP报文发送至对应的leaf节点。
6.一种DHCP报文转发装置,其特征在于,所述装置应用于分布式VXLAN组网中的DHCP服务器接入的leaf节点,所述leaf节点使能了DHCP relay功能,所述分布式VXLAN组网中还包括除所述DHCP服务器接入的leaf节点以外的至少一个其他leaf节点,所述其他leaf节点连接DHCP客户端,所述装置包括:
报文接收单元,用于接收DHCP服务器发送的第一DHCP报文,所述第一DHCP报文为所述DHCP服务器针对接收到的来自DHCP客户端的第二DHCP报文的回应报文;
第一发送单元,用于若本地MAC地址表中记录有DHCP客户端的MAC地址对应的MAC表项,则通过所述MAC表项中记录的出接口发送所述第一DHCP报文;
第二发送单元,用于若本地MAC地址表中未记录DHCP客户端的MAC地址对应的MAC表项,则根据第一DHCP报文的目的IP地址将所述第一DHCP报文发送至对应的leaf节点,以使所述对应的leaf节点通过其本地MAC地址表中记录的DHCP客户端的MAC地址对应的MAC表项中的出接口发送所述第一DHCP报文。
7.根据权利要求6所述DHCP报文转发装置,其特征在于,
所述第一DHCP报文的目的MAC地址为所述DHCP客户端的MAC地址;所述第一DHCP报文的目的IP地址为所述DHCP客户端接入的leaf节点的VSI接口地址。
8.根据权利要求6所述DHCP报文转发装置,其特征在于,该装置还包括:
地址记录单元,用于若接收到DHCP客户端接入的leaf节点发送的同步消息,所述同步消息中携带所述DHCP客户端的MAC地址,则在本地MAC地址表中记录所述DHCP客户端的MAC地址对应的MAC表项。
9.根据权利要求8所述DHCP报文转发装置,其特征在于,
所述地址记录单元记录的MAC表项中的出接口为本leaf节点上接收到所述同步消息的接口。
10.根据权利要求7所述DHCP报文转发装置,其特征在于,
所述第二发送单元,具体用于根据所述目的IP地址查询本地记录的路由表,获取对应的至少一个出接口;按照预设的策略,从获取的至少一个出接口中选择出目的出接口,通过所述目的出接口将所述第一DHCP报文发送至对应的leaf节点。
CN201710258686.8A 2017-04-19 2017-04-19 一种dhcp报文转发方法及装置 Active CN107094110B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710258686.8A CN107094110B (zh) 2017-04-19 2017-04-19 一种dhcp报文转发方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710258686.8A CN107094110B (zh) 2017-04-19 2017-04-19 一种dhcp报文转发方法及装置

Publications (2)

Publication Number Publication Date
CN107094110A CN107094110A (zh) 2017-08-25
CN107094110B true CN107094110B (zh) 2020-01-03

Family

ID=59638225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710258686.8A Active CN107094110B (zh) 2017-04-19 2017-04-19 一种dhcp报文转发方法及装置

Country Status (1)

Country Link
CN (1) CN107094110B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107547351B (zh) * 2017-08-11 2020-07-07 新华三技术有限公司 地址分配方法和装置
CN108632400B (zh) * 2017-08-31 2021-07-23 新华三技术有限公司 一种IPv6地址分配方法和Leaf节点设备
CN108600099B (zh) * 2018-04-19 2020-04-03 新华三技术有限公司 一种报文转发方法、装置及叶子设备
CN108881015B (zh) * 2018-05-24 2021-04-27 新华三技术有限公司 一种报文广播方法和装置
CN109495369B (zh) * 2018-12-27 2020-11-27 新华三技术有限公司 一种报文转发方法及装置
CN110011919B (zh) * 2019-03-27 2021-12-07 新华三技术有限公司 报文转发方法、装置、网络设备及存储介质
CN112383425B (zh) * 2020-11-11 2022-07-08 迈普通信技术股份有限公司 一种基于vxlan网络的终端发现系统及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9300576B2 (en) * 2010-05-03 2016-03-29 Pluribus Networks Inc. Methods, systems, and fabrics implementing a distributed network operating system
US8400923B2 (en) * 2010-10-15 2013-03-19 Telefonaktiebolaget L M Ericsson (Publ) Multipath transmission control protocol proxy
US9282033B2 (en) * 2013-08-06 2016-03-08 Cisco Technology, Inc. Intelligent handling of virtual machine mobility in large data center environments
EP3605971B1 (en) * 2013-11-05 2021-10-13 Cisco Technology, Inc. Network fabric overlay
CN106209643B (zh) * 2016-07-14 2019-08-06 新华三技术有限公司 报文转发方法及装置

Also Published As

Publication number Publication date
CN107094110A (zh) 2017-08-25

Similar Documents

Publication Publication Date Title
CN107094110B (zh) 一种dhcp报文转发方法及装置
US10645056B2 (en) Source-dependent address resolution
CN109257265B (zh) 一种泛洪抑制方法、vxlan网桥、网关及系统
US9253140B2 (en) System and method for optimizing within subnet communication in a network environment
US11303553B1 (en) Return path trace
US8559448B2 (en) Method and apparatus for communication of data packets between local networks
US11743230B2 (en) Network address translation (NAT) traversal and proxy between user plane function (UPF) and session management function (SMF)
US8458303B2 (en) Utilizing a gateway for the assignment of internet protocol addresses to client devices in a shared subset
CN113872845B (zh) 建立vxlan隧道的方法及相关设备
EP2451125B1 (en) Method and system for realizing network topology discovery
EP2584742B1 (en) Method and switch for sending packet
CN105591907B (zh) 一种路由获取方法和装置
CN114556868B (zh) 虚拟专用网络vpn客户端的专用子网络
US20130089092A1 (en) Method for preventing address conflict, and access node
US20140032782A1 (en) Method and apparatus for route selection of host in multihoming site
US10904202B2 (en) Packet routing using a network device
CN108023971B (zh) 一种dhcp报文转发方法和装置
US11606333B1 (en) Synchronizing dynamic host configuration protocol snoop information
di Lallo et al. How to handle ARP in a software-defined network
EP4072100A1 (en) Method and apparatus for sending response message, computing device and storage medium
CN108881024B (zh) 一种组播流量转发方法及装置
US9749201B2 (en) Method and system for monitoring locator/identifier separation network
CN115499392A (zh) 租户隔离服务方法、装置,以及,电子设备
JP5350333B2 (ja) パケット中継装置及びネットワークシステム
RU2635216C1 (ru) Способ маршрутизации IP-пакетов при использовании VPLS совместно с DHCP в сети с коммутацией пакетов

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant