VRRP概念
VRRP是一种选择协议,它可以把一个虚拟路由器的责任动态分配到局域网上的 VRRP 路由器中的一台。控制虚拟路由器 IP 地址的 VRRP 路由器称为主路由器, 它负责转发数据包到这些虚拟 IP地址。
一旦主路由器不可用, 这种选择过程就提供了动态的故障转移机制,这就允许虚拟路由器的IP地址可以作为终端主机的默认第一跳路由器。是一种LAN接入设备备份协议.一个局域网络内的所有主机都设置缺省网关, 这样主机发出的目的地址不在本网段的报文将被通过缺省网关发往三层交换机,从而实现了主机和外部网络的通信。
VRRP是一种路由容错协议,也可以叫做备份路由协议。一个局域网络内的所有主机都设置缺省路由,当网内主机发出的目的地址不在本网段时,报文将被通过缺省路由发往外部路由器,从而实现了主机与外部网络的通信。当缺省路由器down掉(即端口关闭)之后,内部主机将无法与外部通信,如果路由器设置了VRRP时,那么这时,虚拟路由将启用备份路由器,从而实现全网通信。
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的工作过程如下:
1、路由器开启 VRRP功能后,会根据优先级确定自己在备份组中的角色。优先级高的路由器成为主用路由器,优先级低的成为备用路由器。主用路由器定期发送 VRRP通告报文,通知备份组内的其他路由器自己工作正常;备用路由器则启动定时器等待通告报文的到来。
2、VRRP在不同的主用抢占方式下,主用角色的替换方式不同:
-
在抢占方式下,当主用路由器收到 VRRP通告报文后,会将自己的优先级与通告报文中的优先级进行比较。如果大于通告报文中的优先级, 则成为主用路由器;否则将保持备用状态。
-
在非抢占方式下,只要主用路由器没有出现故障,备份组中的路由器始终保持主用或备用状态,备份组中的路由器即使随后被配置了更高的优先级也不会成为主用路由器。
3、如果备用路由器的定时器超时后仍未收到主用路由器发送来的 VRRP通告报文,则认为主用路由器已经无法正常工作,此时备用路由器会认为自己是主用路由器,并对外发送 VRRP通告报文。备份组内的路由器根据优先级选举出主用路由器,承担报文的转发功能。
在实际组网中一般会进行 VRRP负载分担方式的设置。负载分担方式是指多台路由器同时承担业务,避免设备闲置,因此需要建立两个或更多的备份组实现负载分担。VRRP负载分担方式具有以下特点:
-
每个备份组都包括一个主用路由器和若干个备用路由器。
-
各备份组的主用路由器可以不相同。
-
同一台路由器可以加入多个备份组, 在不同备份组中有不同的优先级, 使得该路由器可以在一个备份组中作为主用路由器,在其他的备份组中作为备用路由器。
VRRP在提高可靠性的同时,简化了主机的配置。在具有多播或广播能力的局域网中,借助VRRP能在某台路由器出现故障时仍然提供高可靠的缺省链路,有效避免单一链路发生故障后网络中断的问题,而无需修改动态路由协议、路由发现协议等配置信息。
一个 VRRP路由器有唯一的标识:VRID,范围为 0—255,该路由器对外表现为唯一的虚拟 MAC地址,地址的格式为 00-00-5E-00-01-[VRID],主控路由器负责对ARP请求用该MAC地址做应答,这样 ,无论如何切换,保证给终端设备的是唯一一致的 IP 和 MAC地址,减少了切换对终端设备的影响。
VRRP控制报文只有一种:VRRP通告 (advertisement) ?它使用 IP多播数据包进行封装,组地址为224.0.0.18,发布范围只限于同一局域网内,这保证了VRID在不同网络中可以重复使用。
为了减少网络带宽消耗,只有主控路由器才可以周期性的发送 VRRP通告报文,备份路由器在连续三个通告间隔内收不到 VRRP或收到优先级为0的通告后启动新的一轮 VRRP选举。
在VRRP路由器组中,按优先级选举主控路由器,VRRP协议中优先级范围是 0—255,若 VRRP路由器的IP地址和虚拟路由器的接口 IP地址相同,则该VRRP路由器被称为该IP地址的所有者;
IP地址所有者自动具有最高优先级:255优先级0一般用在IP地址所有者主动放弃主控者角色时使用可配置的优先级范围为1—254,优先级的配置原则可以依据链路的速度和成本、路由器性能和可靠性以及其它管理策略设定,主控路由器的选举中, 高优先级的虚拟路由器获胜,因此,如果在 VRRP组中有IP地址所有者, 则它总是作为主控路由的角色出现,对于相同优先级的候选路由器,按照 IP地址大小顺序选举VRRP还提供了优先级抢占策略,如果配置了该策略,高优先级的备份路由器便会剥夺当前低优先级的主控路由器而成为新的主控路由器。
为了保证VRRP协议的安全性,提供了两种安全认证措施:明文认证和IP头认证,明文认证方式要求:在加入一个VRRP路由器组时,必须同时提供相同的 VRID 和明文密码,适合于避免在局域网内的配置错误,但不能防止通过网络监听方式获得密码,IP头认证的方式提供了更高的安全性,能够防止报文重放和修改等攻击。
应用实例
VRRP协议的工作机理与 CISCO公司的 HSRP
(Hot Standby Routing Protocol)有许多相似之处。但二者主要的区别是在 CISCO的 HSRP中,需要单独配置一个IP地址作为虚拟路由器对外体现的地址,这个地址不能是组中任何一个成员的接口地址。
使用 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。这样,既分担了设备负载和网络流量,又提高了网络可靠性。
配置方式
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[4]
验证配置:
s1#show vlan
VLAN Name Status Ports1 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需要监控的对象。对应的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 后,才可以配置该命令。