简介
VRRP(Virtual Router Redundancy Protocol 虚拟路由器冗余协议)的工作原理和HSRP非常类似,不过VRRP是国际标准,允许在不同厂商的设备之间的运行。VRRP中虚拟网关的地址可以和接口上的 地址相同,VRRP中接口只有3个状态:初始状态(Initial)、主状态(Master)和备份状态(Backup)。
VRRP和HSRP比较:
和HSRP一样,VRRP根据优先级来确定备份组中每台路由器的角色(Master路由器或Backup路由器)。优先级越高,则越有可能成为 Master路由器。VRRP优先级的取值范围为0-255(数值越大表明优先级越高),可配置的范围是1-254,优先级0为系统保留给特殊用途来使 用,优先级255则是系统保留给IP地址拥有者使用。当路由器为IP地址拥有者时,其优先级始终为255。因此,当备份组内存在IP地址拥有者时,只要其 工作正常就为Master路由器。
VRRP的报文格式:
①Version 版本:指示VRRP的版本信息。Cisco默认支持的是Version2。
②Type 包类型:只有一种类型,即Advertisement(VRRP通告报文),该字段取值为1。
③Virtual Rtr ID 虚拟路由ID:虚拟路由器号(即备份组号),取值范围为1-255。
④Priority 优先级:路由器在备份组中的优先级,取值范围为0-255,数值越大表明优先级越高。
⑤Count IP Addrs IP地址数:备份组虚拟IP地址的个数。1个备份组可对应多个虚拟IP地址。
⑥Auth Type 认证码:该值为0表示无认证,为1表示简单字符认证,为2表示MD5认证。
⑦Adver Int 通告时间间隔:发送通告报文的时间间隔。在VRRP Version2中单位为秒,默认值为1秒。
⑧Checksum 校验和:16位校验和,用于检测VRRP报文中的数据破坏情况。
⑨IP address 虚拟IP地址:备份组虚拟IP地址表项。
⑩Authentication data 认证数据:验证字,目前只用于简单字符认证,对于其它认证方式一律填0。
VRRP的3个定时器:
通告时间间隔定时器(Advertisement Interval):VRRP备份组中的Master路由器会定时发送VRRP通告报文,通知
备份组内的路由器自己工作正常。用户可以通过设置VRRP定时器来调整Master路由器发送VRRP通告报文的时间
间隔。默认值为1秒。
时滞时间定时器:该值的计算方式为(256 - 优先级)/256,单位为秒。
主用失效时间间隔定时器(Master Down Interval):如果Backup路由器在等待了3个间隔时间后,依然没有收到
VRRP通告报文,则认为自己是Master路由器,并对外发送VRRP通告报文,重新进行Master路由器选举。Backup
路由器并不会立即抢占成为Master,而是等待一定时间(时滞时间)后,才会对外发送VRRP通告报文取代原来的
Master路由器。因此该定时器值 = 3 × 通告时间间隔 + (256 - 优先级)/256秒。
实验
命令:
R1(config)#track 100 int s0/0 line-protocol //定义跟踪的目标100为s0/0接口的二层故障
R1(config-if)#vrrp 1 ip 192.168.13.254
R1(config-if)#vrrp 1 priority 120
R1(config-if)#vrrp 1 preempt
R1(config-if)#vrrp 1 authentication md5 key-string cisco
R1(config-if)#vrrp 1 track 100 decrement 30 //配置跟踪的目标
说明:VRRP端口跟踪和HSRP有些不同,它需要在全局配置模式下先定义跟踪目标,再配置VRRP中跟踪该目标。我们试验中路由器R1定义了目标100为跟踪s0/0接口的二层故障;R3定义了目标100为跟踪s0/1接口的二层故障。
配置IP地址及路由:
R1(config)#int f1/0 R1(config-if)#ip add 192.168.13.1 255.255.255.0 R1(config-if)#no sh R1(config)#int s0/0 R1(config-if)#ip add 192.168.12.1 255.255.255.0 R1(config-if)#no sh R1(config)#router rip R1(config-router)#network 192.168.12.0 R1(config-router)#network 192.168.13.0 R1(config-router)#passive-interface f1/0 //防止从该接口发送RIP信息给R3 R2(config)#int lo0 R2(config-if)#ip add 192.168.2.2 255.255.255.0 R2(config)#int s0/0 R2(config-if)#ip add 192.168.12.2 255.255.255.0 R2(config-if)#clock rate 128000 R2(config-if)#no sh R2(config)#int s0/1 R2(config-if)#ip add 192.168.23.2 255.255.255.0 R2(config-if)#clock rate 128000 R2(config-if)#no sh R2(config)#router rip R2(config-router)#network 192.168.2.0 R2(config-router)#network 192.168.12.0 R2(config-router)#network 192.168.23.0 R3(config)#int f1/0 R3(config-if)#ip add 192.168.13.3 255.255.255.0 R3(config-if)#no sh R3(config)#int s0/1 R3(config-if)#ip add 192.168.23.3 255.255.255.0 R3(config-if)#no sh R3(config)#router rip R3(config-router)#network 192.168.23.0 R3(config-router)#network 192.168.13.0 R3(config-router)#passive-interface f1/0 配置多个VRRP组: R1(config)#track 100 int s0/0 line-protocol R1(config)#int f1/0 R1(config-if)#vrrp 1 ip 192.168.13.254 R1(config-if)#vrrp 1 priority 120 R1(config-if)#vrrp 1 preempt R1(config-if)#vrrp 1 authentication md5 key-string cisco R1(config-if)#vrrp 1 track 100 decrement 30 R1(config-if)#vrrp 2 ip 192.168.13.253 R1(config-if)#vrrp 2 preempt R1(config-if)#vrrp 2 authentication md5 key-string cisco R3(config)#track 100 int s0/1 line-protocol R3(config)#int f1/0 R3(config-if)#vrrp 1 ip 192.168.1.254 R3(config-if)#vrrp 1 preempt R3(config-if)#vrrp 1 authentication md5 key-string cisco R3(config-if)#vrrp 2 ip 192.168.1.253 R3(config-if)#vrrp 2 priority 120 R3(config-if)#vrrp 2 preempt R3(config-if)#vrrp 2 authentication md5 key-string cisco R3(config-if)#vrrp 2 track 100 decrement 30
实验调试
R1#show vrrp brief
R1#show vrrp
<img src="http://s3.51cto.com/wyfs02/M01/54/17/wKioL1R373Cg6VknAANg