标题：虚拟路由器冗余协议
详细参数
VRRP（Virtual Router Redundancy Protocol，虚拟路由冗余协议）是一种容错协议。通常，一个网络内的所有主机都设置一条缺省路由，这样，主机发出的目的地址不在本网段的报文将被通过缺省路由发往路由器RouterA，从而实现了主机与外部网络的通信。当路由器RouterA 坏掉时，本网段内所有以RouterA 为缺省路由下一跳的主机将断掉与外部的通信产生单点故障。VRRP 就是为解决上述问题而提出的，它为具有多播组播或广播能力的局域网（如：以太网）设计。VRRP 将局域网的一组路由器（包括一个Master 即活动路由器和若干个Backup 即备份路由器）组织成一个虚拟路由器，称之为一个备份组。这个虚拟的路由器拥有自己的IP 地址10.100.10.1（这个IP 地址可以和备份组内的某个路由器的接口地址相同，相同的则称为ip拥有者），备份组内的路由器也有自己的IP 地址（如Master的IP 地址为10.100.10.2，Backup 的IP 地址为10.100.10.3）。局域网内的主机仅仅知道这个虚拟路由器的IP 地址10.100.10.1，而并不知道具体的Master 路由器的IP 地址10.100.10.2 以及Backup 路由器的IP 地址10.100.10.3，它们将自己的缺省路由下一跳地址设置为该虚拟路由器的IP 地址10.100.10.1。于是，网络内的主机就通过这个虚拟的路由器来与其它网络进行通信。如果备份组内的Master 路由器坏掉，Backup 路由器将会通过选举策略选出一个新的Master 路由器，继续向网络内的主机提供路由服务。从而实现网络内的主机不间断地与外部网络进行通信。关于VRRP 协议的详细信息，可以参考RFC 3768。[3]
互相区别
VRRP协议的工作机理与CISCO公司的HSRP（Hot Standby Routing Protocol）有许多相似之处。但二者主要的区别是在CISCO的HSRP中，需要单独配置一个IP地址作为虚拟路由器对外体现的地址，这个地址不能是组中任何一个成员的接口地址。
使用VRRP协议，不用改造目前的网络结构，最大限度保护了当前投资，只需最少的管理费用，却大大提升了网络性能，具有重大的应用价值。
工作原理
vrrp只定义了一种报文——vrrp报文，这是一种组播报文，由主三层交换机定时发出来通告他的存在。使用这些报文可以检测虚拟三层交换机各种参数，还可以用于主三层交换机的选举。
VRRP中定义了三种状态模型，初始状态Initialize，主状态Master和从状态Slave，其中只有活动状态的交换机可以为到虚拟IP地址的的转发请求提供服务。
vrrp报文是封装在IP报文上的，支持各种上层协议，同时VRRP还支持将真实接口IP地址设置为虚拟IP地址。
那么如何从备份组的多台交换机中选举Master？这项工作由我们在备份组内每台交换机上配置的相同IP地址的虚拟交换机完成。
虚拟交换机根据配置的优先级的大小选择主交换机，优先级最大的作为主交换机，状态为Master，若优先级相同（如果交换机没有配置优先级，就采用默认值100），则比较接口的主IP地址，主IP地址大的就成为主交换机，由它提供实际的路由服务。其他交换机作为备份交换机，随时监测主交换机的状态。当主交换机正常工作时，它会每隔一段时间发送一个VRRP组播报文，以通知组内的备份交换机，主交换机处于正常工作状态。如果组内的备份交换机长时间没有接收到来自主交换机的VRRP组播报文，则将自己状态转换为Master。当组内有多台备份交换机，将有可能产生多个主交换机。这时每一个主交换机就会比较VRRP报文中的优先级和自己本地的优先级，如果本地的优先级小于VRRP中的优先级，则将自己的状态转换为Backup，否则保持自己的状态不变。通过这样一个过程，就会将优先级最大的交换机选成新的主交换机，完成VRRP的备份功能。
应用实例
最典型的VRRP应用：RTA、RTB组成一个VRRP路由器组，假设RTB的处理能力高于RTA，则将RTB配置成IP地址所有者，H1、H2、H3的默认网关设定为RTB。则RTB成为主控路由器，负责ICMP重定向、ARP应答和IP报文的转发；一旦RTB失败，RTA立即启动切换，成为主控，从而保证了对客户透明的安全切换。
在VRRP应用中，RTB在线时RTA只是作为后备，不参与转发工作，闲置了路由器RTA和链路L1。通过合理的网络设计，可以达到备份和负载分担双重效果。让RTA、RTB同时属于互为备份的两个VRRP组：在组1中RTA为IP地址所有者；组2中RTB为IP地址所有者。将H1的默认网关设定为RTA；H2、H3的默认网关设定为RTB。这样，既分担了设备负载和网络流量，又提高了网络可靠性。
VRRP协议的工作机理与CISCO公司的HSRP（Hot Standby Routing Protocol）有许多相似之处。但二者主要的区别是在CISCO的HSRP中，需要单独配置一个IP地址作为虚拟路由器对外体现的地址，这个地址不能是组中任何一个成员的接口地址。
使用VRRP协议，不用改造目前的网络结构，最大限度保护了当前投资，只需最少的管理费用，却大大提升了网络性能，具有重大的应用价值。
配置方式
spanning-tree 开启生成树（默认为mstp）
spanning-tree mst configuration 进入mst配置模式
revision 1 指定MST revision number 为1
name region1 指定mst配置名称
instance 0 vlan 1-9, 11-19, 21-4094 缺省情况下vlan都属于实例0
instance 1 vlan 10 手工指定vlan10属于实例1
instance 2 vlan 20 手工指定vlan20属于实例2
spanning-tree mst 1 priority 0 指定实例1的优先级为0（为根桥）
spanning-tree mst 2 priority 4096 指定实例2的优先级为4096
interface GigabitEthernet 0/1
switchport access vlan 10 配置g0/1属于vlan10
!
interface GigabitEthernet 0/2
switchport access vlan 20 配置g0/2属于vlan 20
!
interface GigabitEthernet 0/3
!
.
.
interface GigabitEthernet 0/24 设置g0/24为trunk接口且允许vlan10/20通过
switchport mode trunk
!
interface VLAN 10 创建vlan 10 svi接口
ip address 192.168.10.1 255.255.255.0 配置ip地址
vrrp 1 priority 120 配置vrrp组1 优先级为120
vrrp 1 ip 192.168.10.254 配置vrrp组 1虚拟ip地址为 192.168.10.254
!
interface VLAN 20 创建vlan 20 svi接口
ip address 192.168.20.1 255.255.255.0 配置ip地址
vrrp 2 ip 192.168.20.254 配置vrrp组 2虚拟ip地址为 192.168.20.254
默认vrrp组的优先级为100默认不显示
!
line con 0
line vty 0 4
login
验证配置：
s1#show vlan
VLAN Name Status Ports
---- -------------------------------- --------- -------------------------------
---
1 VLAN0001 STATIC Gi0/3, Gi0/4, Gi0/5, Gi0/6
Gi0/7, Gi0/8, Gi0/9, Gi0/10
Gi0/11, Gi0/12, Gi0/13, Gi0/14
Gi0/15, Gi0/16, Gi0/17, Gi0/18
Gi0/19, Gi0/20, Gi0/21, Gi0/22
Gi0/23, Gi0/24
10 VLAN0010 STATIC Gi0/1, Gi0/24
20 VLAN0020 STATIC Gi0/2, Gi0/24
接下来的同级设备照上面大体框架配置既可。
VRRP 跟踪的配置
一般对网关的上联接口监控，如果上联接口故障，则自动让出转发权，配置vrrp需要监控的对象。对应的no命令取消对接口的监控。
vrrp group-number track {interface-name | track-id} [decrement]
no vrrp group-number track {interface-name | track-id}
描述 group-number 指定group-number号，取值范围是1-255。
interface-name 指定监控的接口。
track-id 指定监控的track对象ID。
Decrement 指定优先级降低幅度。缺省10。
这里还要在全局模式下配置track组
track track-ip intface intface-id line-protocol
注意： 在启动了vrrp后，才可以配置该命令。