VRRP协议
VRRP协议
VRRP工作原理
(1) 虚拟路由器中的路由器根据优先级选举出Master。Master路由器通过发送免费ARP报文,将自己的虚拟MAC地址通知给与它连接的设备或者主机,从而承担报文转发任务;
(2) Master路由器周期性发送VRRP报文,以公布其配置信息(优先级等)和工作状况;
(3) 如果Master路由器出现故障,虚拟路由器中的Backup路由器将根据优先级重新选举新的Master;
(4) 虚拟路由器状态切换时,Master路由器由一台设备切换为另外一台设备,新的Master路由器只是简单地发送一个携带虚拟路由器的MAC地址和虚拟IP地址信息的免费ARP报文,这样就可以更新与它连接的主机或设备中的ARP相关信息。网络中的主机感知不到Master路由器已经切换为另外一台设备。
(5) Backup路由器的优先级高于Master路由器时,由Backup路由器的工作方式(抢占方式和非抢占方式)决定是否重新选举Master。
VRRP的基本结构
状态机:
VRRP协议中定义了三种状态机:初始状态(Initialize)、活动状态(Master)、备份状态(Backup)。其中,只有处于活动状态的设备才可以转发那些发那些发送到虚拟IP地址的报文。
Master
当路由器处于Master状态时,它将会做下列工作:
-
定期发送VRRP报文。
-
以虚拟MAC地址响应对虚拟IP地址的ARP请求。 虚拟路由器 封装的时候 都封装 虚拟路由器的 mac地址
-
转发目的MAC地址为虚拟MAC地址的IP报文。
-
如果它是这个虚拟IP地址的拥有者,则接收目的IP地址为这个虚拟IP地址的IP报文。否则,丢弃这个IP报文。
-
如果收到比自己优先级大的报文则转为Backup状态。
-
如果收到优先级和自己相同的报文,并且发送端的主机IP地址比自己的主IP地址大,则转为Backup状态。
-
当接收到接口的Shutdown事件时,转为Initialize。
Backup
当路由器处于Backup状态时,它将会做下列工作:
-
接收Master发送的VRRP报文,判断Master的状态是否正常。
-
对虚拟IP地址的ARP请求,不做响应。
-
丢弃目的MAC地址为虚拟MAC地址的IP报文。
-
丢弃目的IP地址为虚拟IP地址的IP报文。
-
Backup状态下如果收到比自己优先级小的报文时,丢弃报文,不重置定时器;如果收到优先级和自己相同的报文,则重置定时器,不进一步比较IP地址。
-
当Backup接收到MASTER_DOWN_TIMER定时器超时的事件时,才会转为Master。
-
当接收到接口的Shutdown事件时,转为Initialize。
优先级:
-
默认0 - 255
-
0 代表主要退出
-
255代表 有设备和虚拟ip冲突
-
可手动配置 1-254
-
优先级相同会比较接口地址大的优先
-
优先级默认为100
-
master路由器
通过比较VRRP优先级,优先级大的是master路由器;
周期性的发送VRRP报文,维护master路由器和备份路由器的身份;
周期时间默认是1s; 备份网关,通过比较 VRRP 优先级,优先级小的是备份路由器; -
备份(backup)路由器:
通过不断的接收master路由器发送的 VRRP 报文来判断master路由器的状态;
如果在一定的时间内,收不到 VRRP 报文,则认为master路由器出现故障,自己升级为master路由器;
这个“一定的时间”,默认是“master路由器发送VRRP的周期”的3倍,所以默认是 3s 。
R1路由器设置
[R1]
int g0/0/0
ip add 20.0.0.2 24
int g0/0/1
ip add 10.0.0.2 24
int g0/0/2
ip add 192.168.2.254 24
ip route-static 192.168.1.0 24 10.0.0.1
ip route-static 192.168.1.0 24 20.0.0.1 preference 70
R2路由器设置
[R2]
int g0/0/1
ip add 10.0.0.1 24
int g0/0/0
ip add 192.168.1.10 24
vrrp vrid 1 virtual-ip 192.168.1.254
vrrp vrid 1 priority 120
vrrp vrid 1 preempt-mode timer delay 30
vrrp vrid 1 track int g0/0/1 reduced 50
ip route-static 192.168.2.0 24 10.0.0.2
R3路由器设置
[R3]
int g0/0/1
ip add 20.0.0.1 24
int g0/0/0
ip add 192.168.1.20 24
vrrp vrid 1 virtual-ip 192.168.1.254
ip route-static 192.168.2.0 24 20.0.0.2