小乔 发表于 5 天前

VRRP组网下DHCP服务器配置实战:主备切换保障IP地址持续分配

VRRP组网下DHCP服务器配置实战:主备切换保障IP地址持续分配



一、本文亮点


[*] 场景真实,贴近实战:模拟企业主机双归属到两台交换机,通过VRRP+DHCP实现主备切换后IP地址持续分配的典型高可靠性场景,配置基于华为交换机,可直接参考应用于现网或实验环境。
[*] VRRP与DHCP协同工作:通过VRRP备份组提供网关冗余,DHCP服务器在主备设备上分别配置地址池,实现主设备故障后客户端自动重新获取IP地址。
[*] 地址池互相排除防冲突:主备设备上的地址池必须互相排除,防止主备切换后出现IP地址分配冲突。
[*] 逐条注释,清晰易懂:对每一条关键配置命令都在行尾添加了中文注释,解释其功能和作用,帮助读者理解配置背后的网络原理。


二、原理说明:VRRP+DHCP协同工作机制

1. 场景背景
通常用户希望网络中的每台终端能够动态获取IP地址、DNS服务器的IP地址、路由信息、网关信息等网络参数,不需要手动配置终端的IP地址等网络参数。如果用户网络中有这些需求,就可以在汇聚层的用户网关设备或核心层设备上配置DHCP服务器功能。

本方案中,SwitchA和SwitchB组成VRRP备份组,同时两台设备均作为DHCP服务器。SwitchA作为主设备(Master),负责为客户端分配IP地址;SwitchB作为备设备(Backup),在主设备故障时接管DHCP服务。

2. 地址池互相排除机制
由于交换机主设备上的地址池信息不能实时备份到备设备上,为防止主备切换后出现IP地址分配冲突,主设备和备设备上配置的地址池必须要互相排除。


[*] SwitchA(Master):地址池范围10.1.1.2~10.1.1.128。
[*] SwitchB(Backup):地址池范围10.1.1.130~10.1.1.254。
[*] 两者互不重叠,确保主备切换后不会发生IP地址冲突。


3. 工作流程

[*] 客户端通过Switch双归属到SwitchA和SwitchB,发送DHCP Discover报文。
[*] SwitchA作为VRRP Master(优先级120),处理DHCP请求,从自己的地址池中分配IP地址。
[*] SwitchB作为VRRP Backup(优先级100),不参与DHCP分配。
[*] 当SwitchA故障时,SwitchB切换为VRRP Master,接管DHCP服务,从自己的地址池中为客户端分配新的IP地址。
[*] 客户端重新获取IP地址,通过SwitchB继续通信。


三、拓扑与需求

组网需求
如图1所示,某企业内的一台主机通过Switch双归属到SwitchA和SwitchB,SwitchA为主设备,作为DHCP服务器为客户端分配IP地址。现用户希望当主设备故障时,客户端能够通过备设备重新获取IP地址。


[*] SwitchA:VRRP Master(优先级120),地址池范围10.1.1.2~10.1.1.128。
[*] SwitchB:VRRP Backup(优先级100),地址池范围10.1.1.130~10.1.1.254。
[*] 虚拟IP地址:10.1.1.111(VRRP备份组1)。
[*] Switch:二层透传,配置STP破除环路。


https://bbs.hh010.com/data/attachment/forum/202103/03/172805r4mfmzis7mh3ifns.png
(图1:VRRP组网下同网段内配置基于全局地址池的DHCP服务器组网图)

四、IP与VLAN规划表


设备接口IP地址说明
SwitchAVLANIF10010.1.1.1/24VRRP Master,优先级120
SwitchAGE1/0/2-连接Switch(Hybrid,PVID 100)
SwitchAGE1/0/5-连接SwitchB(Hybrid,PVID 100)
SwitchBVLANIF10010.1.1.129/24VRRP Backup,优先级100
SwitchBGE1/0/2-连接Switch(Hybrid,PVID 100)
SwitchBGE1/0/5-连接SwitchA(Hybrid,PVID 100)
SwitchGE1/0/1-连接SwitchA(Hybrid,PVID 100)
SwitchGE1/0/2-连接SwitchB(Hybrid,PVID 100)
SwitchGE1/0/3-连接客户端(Access,VLAN 100)
VRRP组1-10.1.1.111/24虚拟网关地址
SwitchA地址池-10.1.1.2~10.1.1.128排除网关和保留地址
SwitchB地址池-10.1.1.130~10.1.1.254排除网关和保留地址


五、配置思路


[*] 配置设备间网络互连:配置SwitchA和SwitchB的接口IP地址,配置Switch的二层透传功能。
[*] 配置VRRP备份组:SwitchA配置优先级120作为Master,SwitchB配置优先级100(默认)作为Backup。
[*] 创建全局地址池:在SwitchA和SwitchB上分别创建地址池,互相排除对方的地址范围。
[*] 配置STP破环协议:在SwitchA、SwitchB和Switch上配置STP,防止环路产生。


六、设备配置命令(逐条注释)

请将以下配置分别粘贴至对应设备的CLI中执行。注释跟在命令后方。

1. 配置SwitchA(VRRP Master + DHCP服务器)


<HUAWEI> system-view                                                         // 进入系统视图
sysname SwitchA                                                   // 修改设备名称为SwitchA
vlan batch 100                                                      // 创建VLAN 100
interface gigabitethernet 1/0/2                                     // 进入GE1/0/2接口(连接Switch)
port link-type hybrid                           // 配置接口类型为Hybrid
port hybrid pvid vlan 100                     // 配置接口PVID为VLAN 100
port hybrid untagged vlan 100                   // 以Untagged方式加入VLAN 100
quit
interface gigabitethernet 1/0/5                                     // 进入GE1/0/5接口(连接SwitchB)
port link-type hybrid                           // 配置接口类型为Hybrid
port hybrid pvid vlan 100                     // 配置接口PVID为VLAN 100
port hybrid untagged vlan 100                   // 以Untagged方式加入VLAN 100
quit
interface vlanif 100                                                // 创建VLANIF100接口
ip address 10.1.1.1 24                                     // 配置IP地址
vrrp vrid 1 virtual-ip 10.1.1.111                        // 创建VRRP备份组1,虚拟IP为10.1.1.111
vrrp vrid 1 priority 120                                 // 配置优先级120(高于SwitchB的默认100)
dhcp select global                                       // 配置接口工作在全局地址池模式
quit
dhcp enable                                                      // 全局使能DHCP服务
ip pool 1                                                          // 创建全局地址池1
network 10.1.1.0 mask 255.255.255.0                        // 配置可分配的地址范围
gateway-list 10.1.1.111                                    // 配置网关地址(VRRP虚拟IP)
excluded-ip-address 10.1.1.1                               // 排除SwitchA的接口地址
excluded-ip-address 10.1.1.129 10.1.1.254               // 排除SwitchB的地址池范围
lease day 10                                              // 配置租期为10天
quit


2. 配置SwitchB(VRRP Backup + DHCP服务器)


<HUAWEI> system-view                                                         // 进入系统视图
sysname SwitchB                                                   // 修改设备名称为SwitchB
vlan batch 100                                                      // 创建VLAN 100
interface gigabitethernet 1/0/2                                     // 进入GE1/0/2接口(连接Switch)
port link-type hybrid                           // 配置接口类型为Hybrid
port hybrid pvid vlan 100                     // 配置接口PVID为VLAN 100
port hybrid untagged vlan 100                   // 以Untagged方式加入VLAN 100
quit
interface gigabitethernet 1/0/5                                     // 进入GE1/0/5接口(连接SwitchA)
port link-type hybrid                           // 配置接口类型为Hybrid
port hybrid pvid vlan 100                     // 配置接口PVID为VLAN 100
port hybrid untagged vlan 100                   // 以Untagged方式加入VLAN 100
quit
interface vlanif 100                                                // 创建VLANIF100接口
ip address 10.1.1.129 24                                 // 配置IP地址
vrrp vrid 1 virtual-ip 10.1.1.111                        // 创建VRRP备份组1(相同虚拟IP)
dhcp select global                                       // 配置接口工作在全局地址池模式
quit
dhcp enable                                                      // 全局使能DHCP服务
ip pool 1                                                          // 创建全局地址池1
network 10.1.1.0 mask 255.255.255.0                        // 配置可分配的地址范围
gateway-list 10.1.1.111                                    // 配置网关地址(VRRP虚拟IP)
excluded-ip-address 10.1.1.1 10.1.1.110                   // 排除SwitchA接口和保留地址
excluded-ip-address 10.1.1.112 10.1.1.129               // 排除SwitchA的地址池范围
lease day 10                                              // 配置租期为10天
quit


3. 配置Switch(二层透传 + STP)


<HUAWEI> system-view                                                         // 进入系统视图
sysname Switch                                                       // 修改设备名称为Switch
vlan 100                                                             // 创建VLAN 100
quit
interface gigabitethernet 1/0/1                                    // 进入GE1/0/1接口(连接SwitchA)
port link-type hybrid                            // 配置接口类型为Hybrid
port hybrid pvid vlan 100                        // 配置接口PVID为VLAN 100
port hybrid untagged vlan 100                  // 以Untagged方式加入VLAN 100
quit
interface gigabitethernet 1/0/2                                    // 进入GE1/0/2接口(连接SwitchB)
port link-type hybrid                            // 配置接口类型为Hybrid
port hybrid pvid vlan 100                        // 配置接口PVID为VLAN 100
port hybrid untagged vlan 100                  // 以Untagged方式加入VLAN 100
quit
interface gigabitethernet 1/0/3                                    // 进入GE1/0/3接口(连接客户端)
port link-type access                            // 配置接口类型为Access
port default vlan 100                            // 将接口加入VLAN 100
quit
stp enable                                                          // 全局使能STP功能
interface gigabitethernet 1/0/3                                    // 进入GE1/0/3接口
stp disable                                    // 去使能STP(连接终端的接口无需参与STP计算)
quit
interface gigabitethernet 1/0/1                                    // 进入GE1/0/1接口
stp cost 20000                                 // 配置端口路径开销值为20000(实现端口阻塞)
quit


七、验证方法

完成配置后,可通过以下步骤验证效果:


[*] 查看VRRP状态:在SwitchA上执行display vrrp,确认State为Master,PriorityRun为120;在SwitchB上执行相同命令,确认State为Backup,PriorityRun为100。
[*] 查看地址池分配情况(正常状态):在SwitchA上执行display ip pool,确认Used字段为1(已分配IP地址给客户端);在SwitchB上执行相同命令,确认Used字段为0(Backup设备不分配IP)。
[*] 模拟SwitchA故障:在SwitchA的GE1/0/2和GE1/0/5接口上执行shutdown命令。
[*] 验证故障切换:在SwitchB上执行display vrrp,确认State变为Master;执行display ip pool,确认Used字段变为1(SwitchB开始为客户端分配IP地址)。


八、排障指南


常见问题现象可能原因解决方法
客户端无法获取IP地址
[*] SwitchA上未全局使能DHCP服务。
[*] VLANIF100接口未配置dhcp select global。
[*] 地址池配置错误或可用地址已耗尽。

[*] 检查SwitchA上dhcp enable是否配置。
[*] 检查VLANIF100接口下dhcp select global是否配置。
[*] 执行display ip pool查看地址池使用情况,确认是否有可用地址。

主备切换后客户端无法重新获取IP地址
[*] SwitchB上未配置DHCP服务或地址池。
[*] SwitchB的地址池与SwitchA的地址池重叠(未互相排除)。
[*] SwitchB的VRRP状态未切换为Master。

[*] 检查SwitchB上dhcp enable和地址池配置是否正确。
[*] 确认SwitchA和SwitchB的地址池互相排除(SwitchA排除129~254,SwitchB排除1~128)。
[*] 执行display vrrp确认SwitchB的VRRP状态为Master。

网络中产生环路
[*] 未配置STP或STP配置错误。
[*] STP端口路径开销值配置不足,未实现端口阻塞。

[*] 确认SwitchA、SwitchB和Switch上均配置了stp enable。
[*] 检查Switch的GE1/0/1接口stp cost 20000是否配置,确保该端口被阻塞。



九、注意事项


[*] 地址池互相排除:由于交换机主设备上的地址池信息不能实时备份到备设备上,为防止主备切换后出现IP地址分配冲突,主设备和备设备上配置的地址池必须要互相排除。
[*] 网关地址一致性:SwitchA和SwitchB的地址池中gateway-list必须配置为VRRP虚拟IP地址(10.1.1.111),确保客户端主备切换后网关不变。
[*] VRRP优先级配置:SwitchA配置优先级120作为Master,SwitchB配置缺省优先级100作为Backup,确保正常情况下由SwitchA分配IP地址。
[*] STP破除环路:由于SwitchA和SwitchB之间存在冗余链路,需配置STP防止环路。本示例中通过在Switch的GE1/0/1接口上配置路径开销值20000实现端口阻塞。
[*] 客户端接口STP去使能:连接客户端的接口(Switch的GE1/0/3)无需参与STP计算,建议去使能STP或配置为边缘端口,加快终端接入速度。


十、总结

本文通过一个典型的企业双归属高可靠性场景,详细介绍了在华为交换机上配置VRRP组网下DHCP服务器的完整流程。涵盖接口IP配置、VRRP备份组配置(主备优先级)、全局地址池配置(互相排除)、DHCP服务器使能、STP破除环路等关键环节。该方案通过"VRRP主备切换 + DHCP地址池互相排除"的机制,实现了"主设备故障后客户端自动重新获取IP地址"的高可靠性目标,是企业网络DHCP服务冗余备份的常用且有效的手段。

如果本文对您有帮助,欢迎点击关注,获取更多网络技术实战干货!

—— 全文完 ——
页: [1]
查看完整版本: VRRP组网下DHCP服务器配置实战:主备切换保障IP地址持续分配