VRRP协议
一、 熟悉VRRP的工作原理
1.1 技术背景
如下图所示,当路由器和互联网之间只有一个选择路径,很容易出现单点故障,使我们的主机无法正常联网工作。
如下图所示,VRRP可以带给我们一个双重保障
当R1出现故障时,可以平滑的切换到R2 ,R2自动变成Master。
1.2 概述
- Virtual Router Redundancy Protocol ,也即虚拟路由器冗余协议。
- 利用VRRP ,一-组路由器(同一个LAN中的接口)协同工作,但只有一个处于Master状态,处于该状态的路由器(的接口)承担实际的数据流量转发任务。在一个VRRP组内的多个路由器接口共用一个虚拟IP地址,该地址被作为局域网内所有主机的缺省网关地址。
- VRRP决定哪个路由器是Master , Master路由器负责接收发送至用户网关的数据包并进行转发,以及响应PC对于其网关IP地址的ARP请求。
- Backup路由器侦听Master路由器的状态,并在Master路由器发生故障时,接替其工作,从而保证业务流量的平滑切换。
VRRP通告报文被封装在IP报文里,通过组播地址224.0.0.18发送,TTL为255, 协议号为112.
1.3 VRRP术语
-
VRRP路由器:
- 运行VRRP的路由器。一台VRRP路由器(的接口)可以同时参与到多个VRRP组中,在不同的组中, 一台VRRP路由器可以充当不同的角色。
-
VRRP组:
- 一个VRRP组由多个VRRP路由器组成毕使用相同的VRID ( Virtual Router ID ,虚拟路由器ID )进行标识,属于同一VRRP组的VRRP路由器互相交换信息,每一个VRRP组中只能有一个Master。
-
虚拟路由器:
- 对于每一个VRRP组,抽象出来的一个逻辑路由器,该路由器充当网络用户的网关,该路由器并非真实存在,事实上对于用户而言,只需知道虚拟路由器的IP ,至于具体的虚拟路由器的角色由谁来承担、数据转发任务由谁来承担、Master故障后谁来接替,这是VRRP的工作。
-
虚拟IP地址、MAC地址:
- 虚拟IP地址就是虚拟路由器的IP地址,该地址实际上就是用户的网关地址。
- 虚拟MAC地址是虚拟路由器根据VRID生成的MAC地址。一个虚拟路由器拥有一个虚拟MAC地址,格式为: 00-00-5E-00-01-{VRID}。
-
Master、 Backup路由器:
- Master路由器:在VRRP组中实际转发数据包的路由器,在每一 个VRRP组中,仅有Master响应对虚拟IP地址的ARP请求。Master路由器同时以一定的时间间隔发送VRRP消息,以便通知Backup路由器自己的存活情况。
- Backup路由器:处于监听状态的路由器,一 旦Master路由器出现故障,Backup路由器就开始接替工作。
- 选举依据:先比较接口VRRP优先级(比大) ,如果相等,则比较接口IP地址(比大)。
1.4 虚拟的MAC地址
- 通过VRRP形成的虚拟路由器使用虚拟IP地址和虚拟MAC与网络中的PC进行通信。虚拟MAC的格式如下:最后1个字节的VRID表示虚拟路由器ID的16进制,例如VRID是1 ,虚拟MAC地址为00-00-5E-00-01-01.
1.5 VRRP状态机
- VRRP协议的状态共有三E种,分别是Initialize , Master , Backup ,初始状态都是Initialize ,通过比较优先级产生Master和Backup,在规定时间内, Backup若没有收到Master发来的心跳报文,将切换为Master.
1.6 Master、 Backup
-
Master路由器:
- 定时( Advertisement Interval )发送VRRP通告报文,以便向Backup路由器告知自己的存活情况。
- 以虚拟MAC地址响应其他设备对虚拟IP地址的ARP请求。
- 转发目的MAC地址为虚拟MAC地址的IP报文。
- 如果它是这个虚拟IP地址的拥有者(接口实际IP地址为虚拟IP地址) , 则接收目的IP地址为这个虚拟IP地址的IP报文。否则,丢弃这个IP报文。
- 如果收到比自己优先级大的报文,立即成为Backup.
- 如果收到与自己优先级相等的VRRP报文且本地接[ ]IP地址小于对端接口IP,立即成为Backup.
-
Backup路由器:
- 接收Master设备发送的VRRP通告报文,判断Master设备的状态是否正常。
- 对虚拟IP地址的ARP请求,不做响应。
- 丢弃目的IP地址为虚拟IP地址的IP报文。
- 如果收到优先级和自己相同或者比自己大的报文,则重置Master_ Down_ Interval定时器 ,不进一步比较IP地址。
- 如果收到比自己优先级小的报文且该报文优先级是0时,定时器时间设置为Skew_ time (偏移时间) , 如果该报文优先级不是0 ,丢弃报文,立刻成为Master。
Master_ Down_ Interval定时器 : Backup设备在该定时器超时后仍未收到通告报文,则会转换为Master状态。计算公式如下: Master_ Down_ Interval=(3*Advertisement Interval) + Skew_ time。其中,Skew _Time=(256- -Priority)/256.
二、 掌握VRRP的基本配置
2.1 常用配置命令
[R1]int vlanif 10 ##网关接口(三层交换为VLAN接口,路由器为下行接口)
[R1-Vlanif10]ip address 192.168.10.11 24
[R1-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.1
###创建VRRP虚拟路由器的标识vrid为1,并配置vrid 1的虚拟IP地址
[R1-Vlanif10]vrrp vrid 1 priority 120
##设置设备A的优先级为120(缺省值为100),数值越大越优先
[R1 -Vlanif10]vrrp vrid 1 preempt-mode timer delay 6
####配置Master设备的抢占时延为6秒( 缺省值为0,立即抢占),以防频繁地进行状态切换
[R1-Vlanif10]vrrp vrid 1 track interface GigabitEthernet0/0/1 reduce 30
####跟踪上行接口G0/0/1的状态,如端口故障则Master优先级降低30 (缺省值为10)
[R1-Vlanif10]vrrp vrid 1 track interface g0/0/2 ####跟踪下行接口
[R2]int vlanif 10
[R2-Vlanif10]ip address 192.168.10.10 24
[R2-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.1
[R2-Vlanif10]vrrp vrid 1 priority 115
[R2]dis vrrp
####显示VRRP状态
PC测试验证,tracert 10.0.0.1
选配项:
[R1-Vlanif10]vrrp vrid 1 preempt-mode timer delay 6
###建议backup设备设置为立即抢占,master设备设置为延时抢占,指定一定的延迟时间,这样配置的目的是为了在网络环境不稳定时,为.上下行链路的状态恢复一致性等待一定时间,以免出现双master设备或由于主备双方频繁抢占导致用户设备学习到错误的master设备MAC地址。
[Huawei-GigabitEthernet0/0/2]vrrp vrid 1 timer advertise 3
### #master设备会以advertisement_ interval通 告时间定时器( 缺省值为1)向组内backup设备发送vrrp通告报文,通告自己工作正常。如果backup设备在通告时间定时器( 药为通告时间的3倍+偏移时间( (256-Priority) /256)超时后仍未收到vrrp通告报文,则重新选举maste
2.2 实验
要求:如图,利用VRRP协议完成PC1、PC2对PC3之间的通信连接,以R2为主路,R3为备用路,当R2的g0/0/1接口断开时,可以自动切换到备用路。
分析:
- 先配置各路由器的接口ip
- 配置虚拟网关192.168.10.1
- 配置静态路由
- 配置主机IP进行ping测试
R2路由器配置如下:
//进入管理模式
sys
Enter system view, return user view with Ctrl+Z.
//修改名称
[Huawei]sys R2
//关闭信息提示
[R2]un in en
Info: Information center is disabled.
//进入接口0/0/0
[R2]int g0/0/0
//设置ip地址
[R2-GigabitEthernet0/0/0]ip address 192.168.10.100 24
//进入接口0/0/0
[R2-GigabitEthernet0/0/0]int g0/0/1
//设置ip地址
[R2-GigabitEthernet0/0/1]ip address 10.0.0.2 24
//再次进到0/0/0接口
[R2-GigabitEthernet0/0/1]int g0/0/0
//创建VRRP虚拟路由器的标识vrid为1,并配置vrid 1的虚拟IP地址:IP 192.168.10.1
[R2-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.10.1
//设置优先级为120
[R2-GigabitEthernet0/0/0]vrrp vrid 1 priority 120
//配置Master设备的抢占时延为6秒
[R2-GigabitEthernet0/0/0]vrrp vrid 1 preempt-mode timer delay 6
//设置追踪接口为上行接口0/0/1 如故障降低优先级30
[R2-GigabitEthernet0/0/0]vrrp vrid 1 track interface g0/0/1 reduced 30
//退出接口
[R2-GigabitEthernet0/0/0]q
//配置默路由,因为此处为末梢网络,也可以配置静态路由
[R2]ip route-static 0.0.0.0 0.0.0.0 10.0.0.4
//查看VRRP的状态:可以看出此路由器为Master
[R2]dis vrrp
GigabitEthernet0/0/0 | Virtual Router 1
State : Master
Virtual IP : 192.168.10.1
Master IP : 192.168.10.100
PriorityRun : 120
PriorityConfig : 120
MasterPriority : 120
Preempt : YES Delay Time : 6 s
TimerRun : 1 s
TimerConfig : 1 s
Auth type : NONE
Virtual MAC : 0000-5e00-0101
Check TTL : YES
Config type : normal-vrrp
Backup-forward : disabled
Track IF : GigabitEthernet0/0/1 Priority reduced : 30
IF state : UP
Create time : 2021-03-21 17:04:50 UTC-08:00
Last change time : 2021-03-21 17:04:53 UTC-08:00
[R2-GigabitEthernet0/0/0]
R3路由器配置如下:
//进入管理模式
sys
Enter system view, return user view with Ctrl+Z.
//修改名称
[Huawei]sys R3
//关闭信息提示
[R3]un in en
Info: Information center is disabled.
//进入0/0/0 接口
[R3]int g0/0/0
//配置ip地址
[R3-GigabitEthernet0/0/0]ip address 192.168.10.200 24
//进入0/0/1 接口
[R3-GigabitEthernet0/0/0]int g0/0/1
//配置ip地址
[R3-GigabitEthernet0/0/1]ip address 20.0.0.3 24
//进入0/0/0 接口
[R3-GigabitEthernet0/0/1]int g0/0/0
//创建VRRP虚拟路由器的标识vrid为1,并配置vrid 1的虚拟IP地址:IP 192.168.10.1(与R2相同)
[R3-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.10.1
//设置优先级为115
[R3-GigabitEthernet0/0/0]vrrp vrid 1 priority 115
//退出接口
[R3-GigabitEthernet0/0/0]q
//配置默路由,因为此处为末梢网络,也可以配置静态路由
[R3]ip route-static 0.0.0.0 0.0.0.0 20.0.0.4
//查看VRRP的状态:可以看出此路由器为Backup
[R3]dis vrrp
GigabitEthernet0/0/0 | Virtual Router 1
State : Backup
Virtual IP : 192.168.10.1
Master IP : 192.168.10.100
PriorityRun : 115
PriorityConfig : 115
MasterPriority : 120
Preempt : YES Delay Time : 0 s
TimerRun : 1 s
TimerConfig : 1 s
Auth type : NONE
Virtual MAC : 0000-5e00-0101
Check TTL : YES
Config type : normal-vrrp
Backup-forward : disabled
Create time : 2021-03-21 17:06:34 UTC-08:00
Last change time : 2021-03-21 17:06:34 UTC-08:00
R4路由器配置如下:
The device is running!
//进入管理模式
<Huawei>sys
Enter system view, return user view with Ctrl+Z.
//修改名称
[Huawei]sys R4
//关闭信息提示
[R4]un in en
Info: Information center is disabled.
//进入接口0/0/0
[R4]int g0/0/0
//配置IP地址
[R4-GigabitEthernet0/0/0]ip address 10.0.0.4 24
//进入接口0/0/1
[R4-GigabitEthernet0/0/0]int g0/0/1
//配置IP地址
[R4-GigabitEthernet0/0/1]ip address 20.0.0.4 24
//进入接口0/0/2
[R4-GigabitEthernet0/0/1]int g0/0/2
//配置IP地址
[R4-GigabitEthernet0/0/2]ip address 192.168.200.4 24
//退出接口
[R4-GigabitEthernet0/0/2]q
//设置静态路由
[R4]ip route-static 192.168.10.0 24 10.0.0.2
//设置静态路由并添加优先级为70(默认为60)备用路
[R4]ip route-static 192.168.10.0 255.255.255.0 20.0.0.3 preference 70
各主机配置如下:
测试结果如下:
-
pc1和pc2 都可以ping通pc3,并且走的是主用路线
-
断开R2的g0/0/1接口,R3过6秒后自动切换为Master,数据走备用路线
断开R2的0/0/0接口后测试结果如下: -
R2变为Backup,R3变为Master,
-
pc1和pc2 都可以ping通pc3,并且走的是备用路线