目录
一、vrrp概述
二、VRRP的作用
三、工作原理
四、VRRP报文结构
五、VRRP报文工作流程
六、实验(ensp拓扑图实验)
1.根据要求配置好设备
2.配置AR2:
3.配置AR3
4.配置AR1:
5.测试
5.1ping
5.2关闭ar2路由上行接口
5.2.1数据流向
5.2.2MASTER
5.3恢复上行接口
5.3.1数据流向
5.3.2BACKUP
一、vrrp概述
VRRP(Virtual Router Redundancy Protocol,虚拟路由冗余协议)是一种用于提高网络可用性和可靠性的协议。它通过在多个路由器之间共享一个虚拟IP地址,确保即使一台路由器发生故障,网络依然能够正常运行。
二、VRRP的作用
提供了局域网上的设备备份机制。VRRP是一种容错协议,它保证当主机的下一跳路由器坏掉时,可以及时由另一台路由器来代替,从而保证通讯的连续性和可靠性。
三、工作原理
-
虚拟路由器:
- VRRP创建一个由多台物理路由器组成的虚拟路由器,虚拟路由器有一个虚拟IP地址,作为默认网关提供给网络中的主机。
-
主备关系:
- 多台路由器中有一台被选为主(Master)路由器,其余的为备份(Backup)路由器。主路由器负责处理流量。
-
选举机制:
- 通过优先级(Priority)来决定哪台路由器作为主路由器。优先级高的路由器被选为主路由器。优先级范围是0到255,默认值是100。
-
心跳包:
- 主路由器会定期发送VRRP心跳包。如果备份路由器在一段时间内没有收到主路由器的心跳包,就会进行主路由器选举,选出新的主路由器。
四、VRRP报文结构
VRRP报文的结构如下所示:
-
版本(Version):
- 表示VRRP协议的版本。当前常用的是VRRP版本2(VRRPv2)和版本3(VRRPv3)。
-
类型(Type):
- VRRP报文类型,固定为1,表示VRRP广告报文(Advertisement)。
-
虚拟路由器标识符(VRID):
- 表示虚拟路由器的标识符,用于区分同一设备上不同的VRRP组。
-
优先级(Priority):
- 用于选举主路由器。范围是0到255,0表示主路由器关闭,255表示始终为主路由器。
-
计数器(Count IP Addrs):
- 表示虚拟路由器的IP地址数量。
-
广告间隔(Adver Int):
- 表示发送VRRP广告报文的时间间隔,以秒为单位。
-
校验和(Checksum):
- 用于验证VRRP报文的完整性。
-
IP地址列表(IP Address(es)):
- 包含虚拟路由器的IP地址列表。
-
认证数据(Authentication Data):
- 可选字段,用于验证报文的真实性。对于VRRPv2,常为空。VRRPv3中不包含此字段。
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Version| Type | Virtual Rtr ID| Priority | Count IP Addrs |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Auth Type | Adver Int | Checksum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Address(es) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Authentication Data (optional) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
五、VRRP报文工作流程
-
VRRP报文发送:
- 主路由器定期发送VRRP广告报文,默认每秒发送一次(可以配置)。
-
报文接收:
- 备份路由器接收这些VRRP广告报文,用于监控主路由器的状态。
-
报文处理:
- 如果备份路由器在一定时间内未接收到主路由器的VRRP广告报文(一般为3次广告间隔),它们将进行主路由器选举,选出新的主路由器。
-
优先级判断:
- 备份路由器根据优先级字段进行比较,优先级最高的路由器成为新的主路由器。如果优先级相同,则比较IP地址,IP地址较高者成为新的主路由器。
六、实验(ensp拓扑图实验)
要求,实现vrrp原理
1.根据要求配置好设备
具体如下
PC1:192.168.10.10/24,网关192.168.10.1/24
PC2:192.168.10.20/24,网关192.168.10.1/24
2.配置AR2:
<Huawei>sys
# 进入系统视图模式,用户可以通过Ctrl+Z返回用户视图。
Enter system view, return user view with Ctrl+Z.
[Huawei]undo info-center enable
# 禁用信息中心,以防止设备生成过多的日志信息。
Info: Information center is disabled.
[Huawei]sysname AR2
# 将设备名称设置为AR2。
[AR2]int g0/0/0
# 进入GigabitEthernet 0/0/0接口的配置模式。
[AR2-GigabitEthernet0/0/0]ip address 192.168.10.100 24
# 为GigabitEthernet 0/0/0接口配置IP地址192.168.10.100,子网掩码为24(即255.255.255.0)。
[AR2-GigabitEthernet0/0/0]undo shutdown
# 启用GigabitEthernet 0/0/0接口。
Info: Interface GigabitEthernet0/0/0 is not shutdown.
[AR2-GigabitEthernet0/0/0]int g0/0/1
# 进入GigabitEthernet 0/0/1接口的配置模式。
[AR2-GigabitEthernet0/0/1]ip address 13.0.0.1 24
# 为GigabitEthernet 0/0/1接口配置IP地址13.0.0.1,子网掩码为24(即255.255.255.0)。
[AR2-GigabitEthernet0/0/1]undo shutdown
# 启用GigabitEthernet 0/0/1接口。
Info: Interface GigabitEthernet0/0/1 is not shutdown.
[AR2-GigabitEthernet0/0/1]int g0/0/0
# 再次进入GigabitEthernet 0/0/0接口的配置模式。
[AR2-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.10.1
# 为VRRP虚拟路由器ID 1配置虚拟IP地址192.168.10.1。
[AR2-GigabitEthernet0/0/0]vrrp vrid 1 priority 120
# 设置VRRP虚拟路由器ID 1的优先级为120(默认优先级为100)。
[AR2-GigabitEthernet0/0/0]vrrp vrid 1 preempt-mode timer delay 5
# 配置VRRP虚拟路由器ID 1的抢占模式,抢占延迟时间为5秒。
[AR2-GigabitEthernet0/0/0]vrrp vrid 1 track int g0/0/1 reduced 30
# 配置VRRP虚拟路由器ID 1的跟踪接口GigabitEthernet 0/0/1,如果接口down则优先级降低30。
[AR2-GigabitEthernet0/0/0]dis th
# 显示当前的配置。
[V200R003C00]
# 当前设备的软件版本信息。
#
interface GigabitEthernet0/0/0
ip address 192.168.10.100 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.10.1
vrrp vrid 1 priority 120
vrrp vrid 1 preempt-mode timer delay 5
vrrp vrid 1 track interface GigabitEthernet0/0/1 reduced 30
# 显示GigabitEthernet 0/0/0接口的完整配置。
#
return
# 返回到用户视图模式。
3.配置AR3
<Huawei>sys
# 进入系统视图模式,用户可以通过Ctrl+Z返回用户视图。
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname AR3
# 将设备名称设置为AR3。
[AR3]undo info-center enable
# 禁用信息中心,以防止设备生成过多的日志信息。
Info: Information center is disabled.
[AR3]user-interface console 0
# 进入控制台0的用户界面配置模式。
[AR3-ui-console0]idle-timeout 0
# 设置控制台的空闲超时时间为0,表示不超时。
[AR3-ui-console0]int g0/0/0
# 进入GigabitEthernet 0/0/0接口的配置模式。
[AR3-GigabitEthernet0/0/0]ip address 192.168.10.200 24
# 为GigabitEthernet 0/0/0接口配置IP地址192.168.10.200,子网掩码为24(即255.255.255.0)。
[AR3-GigabitEthernet0/0/0]undo shutdown
# 启用GigabitEthernet 0/0/0接口。
Info: Interface GigabitEthernet0/0/0 is not shutdown.
[AR3-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.10.1
# 为VRRP虚拟路由器ID 1配置虚拟IP地址192.168.10.1。
[AR3-GigabitEthernet0/0/0]int g0/0/1
# 进入GigabitEthernet 0/0/1接口的配置模式。
[AR3-GigabitEthernet0/0/1]ip address 23.0.0.1 24
# 为GigabitEthernet 0/0/1接口配置IP地址23.0.0.1,子网掩码为24(即255.255.255.0)。
[AR3-GigabitEthernet0/0/1]quit
# 退出接口配置模式,返回到全局配置模式。
[AR3]ip route-static 30.0.0.0 24 23.0.0.2
# 配置静态路由,将目的网络30.0.0.0/24的流量通过23.0.0.2接口转发。
4.配置AR1:
<Huawei>sys
# 进入系统视图模式,用户可以通过Ctrl+Z返回用户视图。
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname AR1
# 将设备名称设置为AR1。
[AR1]undo info-center enable
# 禁用信息中心,以防止设备生成过多的日志信息。
Info: Information center is disabled.
[AR1]user-interface console 0
# 进入控制台0的用户界面配置模式。
[AR1-ui-console0]idle-timeout 0
# 设置控制台的空闲超时时间为0,表示不超时。
[AR1-ui-console0]quit
# 退出控制台用户界面配置模式,返回到全局配置模式。
[AR1]int g0/0/0
# 进入GigabitEthernet 0/0/0接口的配置模式。
[AR1-GigabitEthernet0/0/0]ip address 13.0.0.2 24
# 为GigabitEthernet 0/0/0接口配置IP地址13.0.0.2,子网掩码为24(即255.255.255.0)。
[AR1-GigabitEthernet0/0/0]undo shutdown
# 启用GigabitEthernet 0/0/0接口。
Info: Interface GigabitEthernet0/0/0 is not shutdown.
[AR1-GigabitEthernet0/0/0]int g0/0/1
# 进入GigabitEthernet 0/0/1接口的配置模式。
[AR1-GigabitEthernet0/0/1]ip address 23.0.0.2 24
# 为GigabitEthernet 0/0/1接口配置IP地址23.0.0.2,子网掩码为24(即255.255.255.0)。
[AR1-GigabitEthernet0/0/1]undo shutdown
# 启用GigabitEthernet 0/0/1接口。
Info: Interface GigabitEthernet0/0/1 is not shutdown.
[AR1-GigabitEthernet0/0/1]quit
# 退出接口配置模式,返回到全局配置模式。
[AR1]int LoopBack 0
# 进入LoopBack 0接口的配置模式。
[AR1-LoopBack0]ip address 30.0.0.1 24
# 为LoopBack 0接口配置IP地址30.0.0.1,子网掩码为24(即255.255.255.0)。
[AR1-LoopBack0]quit
# 退出LoopBack 0接口的配置模式,返回到全局配置模式。
[AR1]ip route-static 192.168.10.0 24 13.0.0.1
# 配置静态路由,将目的网络192.168.10.0/24的流量通过13.0.0.1接口转发。
[AR1]ip route-static 192.168.10.0 24 23.0.0.1
# 配置静态路由,将目的网络192.168.10.0/24的流量通过23.0.0.1接口转发。
5.测试
5.1ping
5.2关闭ar2路由上行接口
5.2.1数据流向
我们可以看见是从192.168.10.200通过的
5.2.2MASTER
此时AR3是master
5.3恢复上行接口
5.3.1数据流向
我们可以看见是从192.168.10.100通过的
5.3.2BACKUP
此时AR3是backup