VRRP
Posted yizhangheka
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VRRP相关的知识,希望对你有一定的参考价值。
?一、简述
VRRP:虚拟网关冗余协议,是为了预防单台网关设备发生单点故障的一项网关冗余技术。
VRRP是运行在三层接口上的,无论这个接口是真实的还是虚拟的,三层交换机、路由器、防火墙等设备均可配置部署。
当三层接口激活了VRRP协议之后,便会发送和侦听VRRP报文,需要协同的VRRP设备必须属于同一个广播域,否则组播VRRP报文无法正常交互。
虚拟路由器是一台逻辑设备,有自己单独的IP和MAC地址,当VRRP开始工作时,R2和R2会进行选举,胜出的路由器成为master,其他的路由器成为backup路由器,master承担虚拟路由器的具体工作,如此一来当PC需要发送数据包到外部网络时,数据包实际被发送给master路由器,而当R1故障之后,通过VRRP协议的运作,R2能够感知到当前的master路由器发生故障,从而将自己的状态自动切换到master,接下来它将接替原来属于R1的工作,在整个VRRP的切换过程当中,用户是完全没有感觉的,PC的配置也不需要任何变更。
二、基本概念
1、VRRP组及VRID
一个VRRP组由多台协同工作的设备接口共同组成,使用相同的VRID(虚拟路由器标识符)号,也就是说需要协同的两台设备在配置VRRP时,VRID必须是一样的,一个VRRP组当中只能出现一台master路由器,值得一提的是,一个接口可以加入多个VRRP组,只要VRID不同即可。
虚拟出来的路由器有自己单独的IP地址和MAC地址,虚拟出来的MAC地址的格式是0000-5e00-01xx,其中xx指的是VRID。当master路由器收到请求虚拟路由器MAC地址的ARP request时,回复的并不是自己物理接口的MAC地址,而是虚拟MAC地址。
通常情况下,虚拟路由器的地址都是单独的一个IP,但是并不是说不能使用与VRRP接口重复的IP地址,这样是可以的,一般不推荐这么做,如果在IP资源短缺的场景中,是可以这么做的,此时与虚拟网关IP重叠的那台路由器将会无条件成为master,这么做的时候master的优先级会加到最大255。
2、master路由器与backup路由器
master路由器其实指的并不是整个路由器的状态是master,而仅仅指的是运行VRRP协议的那个接口状态是master。master路由器在一个VRRP组中承担转发任务,这就要求当有用户发送ARP报文请求网关的MAC地址时,只能是master进行响应,响应的不是自己的mac地址,而是虚拟路由器的mac地址,这是第二次强调了。
master路由器会周期性的发送VRRP报文给backup路由器,目的是告诉backup路由器自己存活,如果backup在一定的时间周期内收不到master路由器的报文,backup路由器就会判断主路由器死了,backup路由器将会将自己的状态切换成master.
主从的选举是通过优先级进行选举的,比大,优先级大的将成为主路由器,缺省的优先级是100。
3、抢占模式(preempt mode)
如果backup路由器激活了抢占功能,那就当成发现master路由器的优先级比自己更低的时候就会立刻切换至master状态,成为新的master路由器。如果bakcup路由器没有激活抢占功能时,那么即使它发现master路由器的优先级比自己更小时,只要master路由器不死(不死意味着正常发送VRRP存活报文),backup不会抢占,也只能默默地保持bakcup状态,直到master路由器死掉。
backup路由器就像古代的太子,只有皇帝死了,太子才能上位,皇上如果得了大病长时间卧床不起,身体不如太子了,太子没有开启抢占模式也不能抢占皇帝的位置;一旦太子开启了抢占模式,只要一发现皇帝的身体不行了,就会立马将自己的太子身份升级,自动升级,成为皇帝。当皇帝也不容易,不能轻易露出虚弱,要一直给太子传达自己身体非常好的信号。
三、工作机制
VRRP协议的正常工作依赖于VRRP的正常收发,出了问题一般大部分都是VRRP协议报文无法正常收发了。VRRP只定义了一种报文格式:通告报文,可能你也猜到了,只有master路由器使用通告报文,bakcup路由器并不需要进行回复,通告报文的组播地址是224.0.0.18,我觉得你必须要记住这个地址,因为这个知识点面试的时候经常会问到的。
VRRP协议是三层协议,所以封闭在IP报废当中,协议号是112。
2、状态机
init初始状态,如果接口被down或者没插线的话接口状态就是init。
当接口up之后,如果其VRRP的优先级为255,这种情况会发生了接口的实际IP地址是VRRP虚拟IP地址的情况,那么接口的VRRP状态将由init切换到master,而如果接口的VRRP优先级不为255,则进入bakcup状态。
backup路由器只干一件事,就是等着master路由器死掉,它对于虚拟IP的ARP请求不予回应;丢弃目的MAC地址为VRRP虚拟MAC地址的数据帧;不接收目的IP地址为VRRP虚拟IP地址的数据包;如果他收到一个VRRP报文时:
如果VRRP的优先级为0,这可能意味着master路由器主动放弃了master状态
四、配置及实现
1、路由器上配置VRRP
基础配置:
R1:默认激活抢占
interface GigabitEthernet0/0/0
ip address 192.168.1.253 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.1.254
vrrp vrid 1 priority 120
vrrp vrid 1 preempt-mode timer delay 60 #将抢占延时设置为60秒
vrrp vrid 1 track interface GigabitEthernet0/0/1 reduced 30 #监视上行链路,上行接口down之后将优先级减去30。
R2:
interface GigabitEthernet0/0/0
ip address 192.168.1.252 255.255.255.0
vrrp vrid 1 virtual-ip 192.168.1.254 #默认优先级就是100,所以不用配置
查看命令(两条):
[R1]dis vrrp
GigabitEthernet0/0/0 | Virtual Router 1
State : Master #当前状态是master
Virtual IP : 192.168.1.254 #虚拟IP
Master IP : 192.168.1.253 #物理接口的IP
PriorityRun : 120 #本设备运行的优先级
PriorityConfig : 120 #本设置配置的优先级
MasterPriority : 120 #master的优先级
Preempt : YES Delay Time : 60 s #抢占激活,延时为60秒
Virtual MAC : 0000-5e00-0101 #虚拟MAC地址3
Track IF : GigabitEthernet0/0/1 Priority reduced : 30 #监视上行接口,故障之后减去30
[R2]dis vrrp brief
Total:1 Master:0 Backup:1 Non-active:0
VRID State Interface Type Virtual IP
----------------------------------------------------------------
1 Backup GE0/0/0 Normal 192.168.1.254
NOTE:
VRRP的监视功能还可以监视IP路由前缀,也可以与BFD、NQA联动。
2、路由器上子接口上配置VRRP
interface GigabitEthernet0/0/2
port link-type trunk
port trunk allow-pass vlan 10 20
interface GigabitEthernet0/0/3
port link-type trunk
port trunk allow-pass vlan 10 20
R1:
interface GigabitEthernet0/0/0.10
dot1q termination vid 10 #是搞清楚为什么加这一条命令?为什么三层交换机做VRRP的时候不用?
ip address 192.168.10.253 255.255.255.0
vrrp vrid 10 virtual-ip 192.168.10.254
vrrp vrid 10 priority 120 #VRRP10的master
vrrp vrid 10 preempt-mode timer delay 30
vrrp vrid 10 track interface GigabitEthernet0/0/1
interface GigabitEthernet0/0/0.20
ip address 192.168.20.253 255.255.255.0
vrrp vrid 20 virtual-ip 192.168.20.254 #VRRP20的backup
vrrp vrid 20 track interface GigabitEthernet0/0/1
R2
interface GigabitEthernet0/0/0.10
ip address 192.168.10.252 255.255.255.0
vrrp vrid 10 virtual-ip 192.168.10.254
vrrp vrid 10 track interface GigabitEthernet0/0/1
interface GigabitEthernet0/0/0.20
ip address 192.168.20.252 255.255.255.0
vrrp vrid 20 virtual-ip 192.168.20.254
vrrp vrid 20 priority 120
vrrp vrid 20 preempt-mode timer delay 30
vrrp vrid 20 track interface GigabitEthernet0/0/1
[R1]dis vrrp brief
Total:2 Master:1 Backup:1 Non-active:0
VRID State Interface Type Virtual IP
----------------------------------------------------------------
10 Master GE0/0/0.10 Normal 192.168.10.254
20 Backup GE0/0/0.20 Normal 192.168.20.254
[R2]dis vrrp brief
Total:2 Master:1 Backup:1 Non-active:0
VRID State Interface Type Virtual IP
----------------------------------------------------------------
10 Backup GE0/0/0.10 Normal 192.168.10.254
20 Master GE0/0/0.20 Normal 192.168.20.254
2、三层交换机上配置VRRP
中间交换机的配置:
e0/0/1配置为access,vlan 10
e0/0/2配置为access,vlan 20
e0/0/3和e0/0/4配置为trunk,允许vlan10和vlan20通过
vlan batch 10 20
int e0/0/1
port link-ty ac
port de vlan 10
int e0/0/2
port link-ty ac
port de vlan 20
int e0/0/3
port link-ty tr
port tr all vlan all
int e0/0/4
port link-ty tr
port tr all vlan all
上面的两台交换机的两个接口也要配置成trunk接口,后面的配置由于过于简单,略过。P
以上是关于VRRP的主要内容,如果未能解决你的问题,请参考以下文章