目录
一、VRRP概述
I
●Virtual Router Redundancy Protocol ,也即虚拟路由器冗余协议。
●利用VRRP , - -组路由器(同一-个L AN中的接口)协同工作,但只有一个处于Master
状态,处于该状态的路由器(的接口)承担实际的数据流量转发任务。在一个VRRP
组内的多个路由器接口共用一个虚拟IP地址,该地址被作为局域网内所有主机的缺
省网关地址。
●VRRP决定哪个路由器是Master , Master路由器负责接收发送至用户网关的数据包
并进行转发,以及响应PC对于其网关IP地址的ARP请求。
●Backup路由器侦听Master路由器的状态 ,并在Master路由器发生故障时,接替其工
作,从而保证业务流量的平滑切换。
二、VRRP术语
●虛拟IP地址、MAC地址:
●虚拟IP地址就是虚拟路由器的IP地址,该地址实际上就是用户的网关地址。
●虚拟MAC地址是虚拟路由器根据VRID生成的MAC地址。一个虚拟路由器拥有
一个虚拟MAC地址 ,格式为: 00-00-5E-00-01-{VRID}。
●Master, Backup路由器: .
●Master路由器:在VRRP组中实际转发数据包的路由器,在每一 个VRRP组中,
仅有Master响应对虚拟IP地址的ARP请求。Master路由器同时以- 定的时间间
隔发送VRRP消息,以便通知Backup路由器自己的存活情况。
●Backup路由器:处于监听状态的路由器,一旦Master路由器出现故障,
Backup路由器就开始接替工作。
●选举依据:先比较接口VRRP优先级(比大) ,如果相等,则比较接口IP地址
(比大)。
三、VRRP状态机
●VRRP协议的状态共有3三种,分别是Initialize , Master , Backup ,初始状态都是
Initialize ,通过比较优先级产生Master和Backup ,在规定时间内, Backup若没有收
到Master发来的心跳报文,将切换为Master。
四、MAaster/Backup 路由器
1 Master路由器:
●定时( Advertisement Interval )发送VRRP通告报文,以便向Backup路由器告
知自己的存活情况。
●以虚拟MAC地址响应其他设备对虚拟IP地址的ARP请求。
●转发目的MAC地址为虚拟MAC地址的IP报文。
●如果它是这个虚拟IP地址的拥有者(接口容际IP地址为虚拟IP地址) ,则接收
目的IP地址为这个虚拟IP地址的IP报文。否则,丢弃这个IP报文。
●如果收到此自己优先级大的报文,立即成为Backup.
●如果收到与自己优先级相等的VRRP报文且本地接口IP地址小于对端接口IP ,
立即成为Backup.
2 Backup路由器:
●接收Master设备发送的VRRP通告报文,判断Master设备的状态是否正常。
●对虚拟IP地址的ARP请求,不做响应。
●丢弃目的IP地址为虚拟IP地址的IP报文。
●如果收到优先级和自己相同或者比自己大的报文,则重置
Master_ Down_ Interval定时器 ,不进一步比较IP地址。
●如果收到比自己优先级小的报文且该报文优先级是0时,定时器时间设置为
Skew_ time (偏移时间) , 如果该报文优先级不是0 ,丢弃报文,立刻成为
Master.
Master_ _Down_ Interva|定时器 : Backup设备在该定时器超时后仍未收到通告报文,则
会转换为Master状态。计算公式如下: Master Down Interval=(3*
Advertisement_ _Interval) + Skew_ time. 其中,Skew_ _Time=(256- Priority)/256.
五、VRP----虚拟路由器冗余协议
####VRRP的作用:
提供了局域网上的设备备份机制。VRRP是一种容错协议,它保证当主机的下一跳路由器坏掉时,可以及时
由另一台路由器来代替,从而保证通讯的连续性和可靠性。
VRP工作时会在网络中加入一个含有虚拟IP和虚拟MAC地址的虚拟路由器,该路由器充当网络用户的网关,
使得网络E的主机与虚拟路由器通信无需
了解这个网络.上物理路由器的任何信息。
Master报文的发送:当Master正常工作时,它会每隔段时间(
缺省为1秒)向组内Backup设备发送vrrp通告报文,通告自己工作正常。(注:只有M
aster发送VRRP报文)
VRRP通告报文被封装在IP报文里,通过组播地址224.0.0. 18发送,
TTL为255,
协议号为112
VRRP报文:
VRRP报文是--种多播报文,由Master路由器发出来通告它的存在,使用VRRP报文可以检测虚拟路由器的各
种参数,用于主路由器的选择。VRRP报 文号是封装在IP报文中,通过组播的方式传送。也就是说VRRP协议
跟ICMP协议一样,工作在第三层(路由层),它是不具有端口的说法的。.
(1) Version: VRRP协议版本号,
RFC3768定义了版本号2
(2) Type:
指明VRRP报文类型,RFC3768只定义 了一种VRRP报文,即VRRP通 告报文,所以该字段总为1
(若收 到的VPR通告报文的该字段的类型为非1则会 被丢弃)
(3) Virtual Rtr ID:
即上面讲的大VRID.- - 个VRID唯一标识了一-个虛拟路由器,取值范围为[1,255]。
(所以一台路由器的接口最多可以运行255个VRP组)
(4) Priority:
优先级。虚不受影响。若此字段为0表示这
是Master路由器出现故障发送的VRRP通告报文,当Backup路 由器收到此通告报文后,会等待(Skew time
Backup路拟路由器中用该字段来决定Master路由器和Backup路由器,值越大表明优先级越高,取值为[1,25
5],缺省值为100。假设虛拟路由器的IP
地址跟VRRP组中某台路由器IP地址相同,那么该路由器的发出的VRRP报文的该字段总为255,即使人为指定
为其他值也由器的优先级)/256)秒时间
,然后将自己切换为Master路由器。
(5)CountIPAddrs:VRRP通告报文中包含的IP数目,即被--个VRRP虚拟路由器所分配的IP地址的数量。
(6) Auth Type:
认证类型字段,一个虚拟路由器只能使用一种认证类型,若Backup路由器收到的通告报文段中认证类型字
段是未知或者和本地配置不匹配,则将该数据包丢弃。
认证类型字段的定义:
0表示无认证
1表示保留,向前一一个版本的RFC2338提供兼容性
2表示保留,向前一个版本的RFC2338提供兼容性
(7) Adver Int: Mater路由器向外发送VRRP通告报文的时间间隔,以秒为单位,取值范围是[1, 255],
缺省为1
(8) Checksum: 整个VRRP报文的校验和
(9) IP Address: VRRP虚拟路由器的虚拟IP地址(可配置多个)
(10) Authentication Data:验证字。为了向RFC2338兼容,
在实际的封装时,全置为0,接收方会忽略此字段
#####################
[R1]int vlanif 10 ###网关接口(三层交换为VLAN接口,路由器为下行接口)
[R1-Vlanif10]ip address 192.168.10.11 24
[R1-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.1
###创建VRRP虚拟路由器的标识vrid为1,并配置vrid 1的虚拟IP地址
[R1-Vlanif10]vrrp. vrid 1 priority 120 ##设置设备A的优先级为120
(缺省值为100),数值越大越优先
[R1-Vlanif10]vrrp vrid 1 preempt-mode timer delay 6
##配置Master设备的抢占时延为6秒(缺省值为0,立即抢占),以防频繁地进行状态切换
[R1-Vlanif10]vrrp vrid 1 track interface GigabitEthernet0/0/1 reduce 30
##跟踪上行接口G0/0/1的状态,如端口故障则Master优先级降低30 (缺 省值为10)
[R1-Vlanif10]vrrp vrid 1 track interface g0/0/2 ####跟踪下行接口
############R2##############
[R2]int vlanif 10
[R2-Vlanif10]ip address 192. 168.10.1024|
[R2-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.1
[R2 -Vlanif10]vrrp vrid 1 priority 95
[R2]dis vrrp
##显示VRRP状态
PC测试验证,tracert 10.0.0.1
VRRP---虚拟路由器
可以实现一主多备的功能, 从而解决单点故障
VRRP会把多台路由器组成一个虚拟路由组vrid,VRRP会生成虚拟路由器(包含虚拟IP和虚拟MAC,局域网内的用户 不关心那个是主哪个是备,他们只用虚拟路由器的虚拟IP作为他们的网关)
实际上虚拟IP是承载在master路由器,也就是说实际的数据包是通过master进行转发master
backup是通过优先级来决定哪个是master,优先级最大的那台就是master
backup只是用来监听master定时发来的vrrp报文,如果超时未收到master发来的vrrp报文backup就会抢占master,虚拟IP也会一起飘移到backup上