VRRP
VRRP简介
如图 1所示通常同一网段内的所有主机都设置一条相同的、以网关为下一跳的缺省路由。主机发往其他网段的报文将通过缺省路由发往网关再由网关进行转发从而实现主机与外部网络的通信。当网关发生故障时本网段内所有以网关为缺省路由的主机将无法与外部网络通信。
图 1 局域网组网方案
缺省路由为用户的配置操作提供了方便但是对缺省网关设备提出了很高的稳定性要求。增加出口网关是提高系统可靠性的常见方法此时如何在多个出口之间进行选路就成为需要解决的问题。
VRRPVirtual Router Redundancy Protocol虚拟路由器冗余协议将可以承担网关功能的一组路由器加入到备份组中形成一台虚拟路由器由VRRP的选举机制决定哪台路由器承担转发任务局域网内的主机只需将虚拟路由器配置为缺省网关。
VRRP是一种容错协议在提高可靠性的同时简化了主机的配置。在具有多播或广播能力的局域网如以太网中借助VRRP能在某台路由器出现故障时仍然提供高可靠的缺省链路有效避免单一链路发生故障后网络中断的问题而无需修改动态路由协议、路由发现协议等配置信息。
VRRP协议的实现有VRRPv2和VRRPv3两个版本。其中VRRPv2基于IPv4VRRPv3基于IPv6。VRRPv2和VRRPv3在功能实现上并没有区别只是应用的网络环境不同。
VRRP备份组简介
VRRP将局域网内的一组路由器划分在一起称为一个备份组。备份组由一个Master路由器和多个Backup路由器组成功能上相当于一台虚拟路由器。
VRRP备份组具有以下特点
• 虚拟路由器具有IP地址称为虚拟IP地址。局域网内的主机仅需要知道这个虚拟路由器的IP地址并将其设置为缺省路由的下一跳地址。
• 网络内的主机通过这个虚拟路由器与外部网络进行通信。
• 备份组内的路由器根据优先级选举出Master路由器承担网关功能。其他路由器作为Backup路由器当Master路由器发生故障时取代Master继续履行网关职责从而保证网络内的主机不间断地与外部网络进行通信。
图 2 VRRP组网示意图
如图 2所示Router A、Router B和Router C组成一个虚拟路由器。此虚拟路由器有自己的IP地址。局域网内的主机将虚拟路由器设置为缺省网关。Router A、Router B和Router C中优先级最高的路由器作为Master路由器承担网关的功能。其余两台路由器作为Backup路由器。
1. 备份组中路由器的优先级
VRRP根据优先级来确定备份组中每台路由器的角色Master路由器或Backup路由器。优先级越高则越有可能成为Master路由器。
VRRP优先级的取值范围为0到255数值越大表明优先级越高可配置的范围是1到254优先级0为系统保留给特殊用途来使用255则是系统保留给IP地址拥有者。当路由器为IP地址拥有者时其优先级始终为255。因此当备份组内存在IP地址拥有者时只要其工作正常则为Master路由器。
2. 备份组中路由器的工作方式
备份组中的路由器具有以下两种工作方式
• 非抢占方式如果备份组中的路由器工作在非抢占方式下则只要Master路由器没有出现故障Backup路由器即使随后被配置了更高的优先级也不会成为Master路由器。
• 抢占方式如果备份组中的路由器工作在抢占方式下它一旦发现自己的优先级比当前的Master路由器的优先级高就会对外发送VRRP通告报文。导致备份组内路由器重新选举Master路由器并最终取代原有的Master路由器。相应地原来的Master路由器将会变成Backup路由器。
3. 备份组中路由器的认证方式
为了防止非法用户构造报文***备份组VRRP通过在VRRP报文中增加认证字的方式验证接收到的VRRP报文。VRRP提供了两种认证方式
• simple简单字符认证。发送VRRP报文的路由器将认证字填入到VRRP报文中而收到VRRP报文的路由器会将收到的VRRP报文中的认证字和本地配置的认证字进行比较。如果认证字相同则认为接收到的报文是真实、合法的VRRP报文否则认为接收到的报文是一个非法报文。
• md5MD5认证。发送VRRP报文的路由器利用认证字和MD5算法对VRRP报文进行摘要运算运算结果保存在Authentication Header认证头中。收到VRRP报文的路由器会利用认证字和MD5算法进行同样的运算并将运算结果与认证头的内容进行比较。如果相同则认为接收到的报文是真实、合法的VRRP报文否则认为接收到的报文是一个非法报文。
在一个安全的网络中用户也可以不设置认证方式。
VRRP定时器
VRRP定时器分为两种VRRP通告报文间隔时间定时器和VRRP抢占延迟时间定时器。
1. VRRP通告报文时间间隔定时器
VRRP备份组中的Master路由器会定时发送VRRP通告报文通知备份组内的路由器自己工作正常。
用户可以通过设置VRRP定时器来调整Master路由器发送VRRP通告报文的时间间隔。如果Backup路由器在等待了3个间隔时间后依然没有收到VRRP通告报文则认为自己是Master路由器并对外发送VRRP通告报文重新进行Master路由器的选举。
2. VRRP抢占延迟时间定时器
为了避免备份组内的成员频繁进行主备状态转换让Backup路由器有足够的时间搜集必要的信息如路由信息Backup路由器接收到优先级低于本地优先级的通告报文后不会立即抢占成为Master而是等待一定时间——抢占延迟时间后才会对外发送VRRP通告报文取代原来的Master路由器。
VRRP报文格式
Master路由器以组播的方式定时发送VRRP报文通告它的存在。这些报文可以用来检测虚拟路由器的各种参数还可以用于Master路由器的选举。
VRRPv2的报文格式如图 3所示VRRPv3的报文格式如图 4所示。
图 3 VRRPv2的报文格式
图 4 VRRPv3的报文格式
各字段解释如下
• Version协议版本号。VRRPv2对应的版本号为2VRRPv3对应的版本号为3。
• TypeVRRP报文的类型。VRRPv2和VRRPv3报文只有一种类型即VRRP通告报文Advertisement该字段取值为1。
• Virtual Rtr IDVRID虚拟路由器号即备份组号取值范围1255。
• Priority路由器在备份组中的优先级取值范围0255数值越大表明优先级越高。
• Count IP Addrs/Count IPv6 Addrs备份组虚拟IP地址的个数。1个备份组可对应多个虚拟IP地址。
• Auth Type认证类型。该值为0表示无认证为1表示简单字符认证为2表示MD5认证。VRRPv3不支持MD5认证。
• Adver Int发送通告报文的时间间隔。VRRPv2中单位为秒缺省为1秒VRRPv3中单位为厘秒缺省为100厘秒。
• Checksum16位校验和用于检测VRRP报文中的数据破坏情况。
• IP Address/IPv6 Address备份组虚拟IP地址表项。所包含的地址数定义在Count IP Addrs/Count IPv6 Addrs字段。
• Authentication Data验证字目前只用于简单字符认证对于其它认证方式一律填0。
VRRP工作过程
VRRP的工作过程如下
(1) 路由器使能VRRP功能后会根据优先级确定自己在备份组中的角色。优先级高的路由器成为Master路由器优先级低的成为Backup路由器。Master路由器定期发送VRRP通告报文通知备份组内的其他路由器自己工作正常Backup路由器则启动定时器等待通告报文的到来。
(2) 在抢占方式下当Backup路由器收到VRRP通告报文后会将自己的优先级与通告报文中的优先级进行比较。如果大于通告报文中的优先级则成为Master路由器否则将保持Backup状态。
(3) 在非抢占方式下只要Master路由器没有出现故障备份组中的路由器始终保持Master或Backup状态Backup路由器即使随后被配置了更高的优先级也不会成为Master路由器。
(4) 如果Backup路由器的定时器超时后仍未收到Master路由器发送来的VRRP通告报文则认为Master路由器已经无法正常工作此时Backup路由器会认为自己是Master路由器并对外发送VRRP通告报文。备份组内的路由器根据优先级选举出Master路由器承担报文的转发功能。
VRRP监视功能
1. 监视指定接口功能
VRRP的监视接口功能更好地扩充了备份功能不仅能在备份组中某路由器的接口出现故障时提供备份功能还能在路由器的其它接口如连接上行链路的接口不可用时提供备份功能。
路由器连接上行链路的接口出现故障时备份组无法感知上行链路的故障如果该路由器此时处于Master状态将会导致局域网内的主机无法访问外部网络。通过监视指定接口的功能可以解决该问题。当连接上行链路的接口处于Down或Removed状态时路由器主动降低自己的优先级使得备份组内其它路由器的优先级高于这个路由器以便优先级最高的路由器成为Master承担转发任务。
2. 监视Track项功能
通过VRRP监视Track项功能可以实现
• 根据上行链路的状态改变路由器的优先级。当上行链路出现故障局域网内的主机无法通过路由器访问外部网络时被监视Track项的状态为Negative并将路由器的优先级降低指定的数额。从而使得备份组内其它路由器的优先级高于这个路由器的优先级成为Master路由器保证局域网内主机与外部网络的通信不会中断。
• 在Backup路由器上监视Master路由器的状态。当Master路由器出现故障时工作在切换模式的Backup路由器能够迅速成为Master路由器以保证通信不会中断。
VRRP应用以基于IPv4的VRRP为例
1. 主备备份
主备备份方式表示转发任务仅由Master路由器承担。当Master路由器出现故障时才会从其他Backup路由器选举出一个接替工作。主备备份方式仅需要一个备份组不同路由器在该备份组中拥有不同优先级优先级最高的路由器将成为Master路由器如图 5中所示。
图 5 主备备份VRRP
初始情况下Router A为Master路由器并承担转发任务Router B和Router C是Backup路由器且都处于就绪监听状态。如果Router A发生故障则备份组内处于Backup状态的Router B和Router C路由器将根据优先级选出一个新的Master路由器这个新Master路由器继续向网络内的主机提供路由服务。
2. 负载分担
在路由器的一个接口上可以创建多个备份组使得该路由器可以在一个备份组中作为Master路由器在其他的备份组中作为Backup路由器。
负载分担方式是指多台路由器同时承担业务因此负载分担方式需要两个或者两个以上的备份组每个备份组都包括一个Master路由器和若干个Backup路由器各备份组的Master路由器各不相同如图 6中所示。
图 6 负载分担VRRP
同一台路由器同时加入多个VRRP备份组在不同备份组中有不同的优先级。
在图 6中有三个备份组存在
• 备份组1对应虚拟路由器1。Router A作为Master路由器Router B和Router C作为Backup路由器。
• 备份组2对应虚拟路由器2。Router B作为Master路由器Router A和Router C作为Backup路由器。
• 备份组3对应虚拟路由器3。Router C作为Master路由器Router A和Router B作为Backup路由器。
为了实现业务流量在Router A、Router B和Router C之间进行负载分担需要将局域网内的主机的缺省网关分别设置为虚拟路由器1、2和3。在配置优先级时需要确保三个备份组中各路由器的VRRP优先级形成交叉对应。
转载于:https://blog.51cto.com/3592063/686840
【转自:盐城网站建设 http://www.1234xp.com/yancheng.html 复制请保留原URL】