网站首页 > 技术教程 正文
VRRP的产生
如图1所示,局域网中只有一个路由器RTA,所有PC使用RTA做为网关,此时如果RTA故障,所有PC将不能和外网通信。
通过部署多网关的方式实现网关的备份,但多网关可能会出现一些问题:网关间IP地址冲突;主机会频繁切换网络出口。
VRRP的出现很好的解决了这个问题,它在不改变组网的情况下,将多台路由设备组成一个虚拟路由器,通过配置虚拟路由器的IP地址为默认网关,实现默认网关的备份。
VRRP基本概念
如图4所示,HostA双归到RouterA和RouterB。在RouterA和RouterB上配置VRRP备份组,对外体现为一台虚拟路由器,实现冗余备份。
在图4所示的网络中部署VRRP协议,下面结合该图介绍VRRP协议的基本概念:
- VRRP路由器(VRRP Router):运行VRRP协议的设备,如RouterA和RouterB。
- 虚拟路由器(Virtual Router):又称VRRP备份组,由一个Master设备和多个Backup设备组成,被当作一个共享局域网内主机的缺省网关。如RouterA和RouterB共同组成了一个虚拟路由器。
- Master路由器(Virtual Router Master):承担转发报文任务的VRRP设备,如RouterA。
- Backup路由器(Virtual Router Backup):一组没有承担转发任务的VRRP设备,当Master设备出现故障时,它们将通过竞选成为新的Master设备,如RouterB。
- vrid:虚拟路由器的标识,如图中RouterA和RouterB组成的虚拟路由器的vrid为1,需手工指定,范围1-255。
- 虚拟IP地址(Virtual IP Address):虚拟路由器的IP地址,一个虚拟路由器可以有一个或多个IP地址,由用户配置。如RouterA和RouterB组成的虚拟路由器的虚拟IP地址为10.1.1.254/24。
- IP地址拥有者(IP Address Owner):如果一个VRRP设备将真实的接口IP地址配置为虚拟路由器IP地址,则该设备被称为IP地址拥有者。如果IP地址拥有者是可用的,则它将一直成为Master。
- 虚拟MAC地址(Virtual MAC Address):虚拟路由器根据vrid生成的MAC地址。一个虚拟路由器拥有一个虚拟MAC地址,格式为:00-00-5E-00-01-{vrid}。当虚拟路由器回应ARP请求时,使用虚拟MAC地址,而不是接口的真实MAC地址。如RouterA和RouterB组成的虚拟路由器的vrid为1,因此这个VRRP备份组的MAC地址为00-00-5E-00-01-01。
VRRP协议报文
VRRP协议只有一种报文类型-VRRP通告(ADVERTISEMENT),只有Master才能发送VRRP通告。VRRP协议报文封装在IP报文中,在IP报文头中,源地址为发送报文接口的主IP地址(不是虚拟IP地址),目的地址是224.0.0.18,TTL是255,协议号是112。
目前,VRRP协议包括两个版本:VRRPv2和VRRPv3。VRRPv2仅适用于IPv4网络,VRRPv3适用于IPv4和IPv6两种网络。
VRRPv2的报文结构分别如图5所示。
各字段的含义如下表所示:
报文字段 | 含义 |
Version | VRRP协议版本号,取值为2。 |
Type | VRRP通告报文的类型,取值为1,表示Advertisement。 |
Virtual Rtr ID | 虚拟路由器ID,取值范围是1~255。 |
Priority | Master设备在备份组中的优先级,取值范围是0~255。0表示设备停止参与VRRP备份组,用来使Backup设备尽快成为Master设备,而不必等到计时器超时;255则保留给IP地址拥有者。缺省值是100。 |
Count IP Addrs | 备份组中虚拟IPv4地址的个数。 |
Auth Type | VRRP报文的认证类型。协议中指定了3种类型:
|
Adver Int | VRRP通告报文的发送时间间隔,单位是秒,缺省值为1秒。 |
Checksum | 16位校验和,用于检测VRRP报文中的数据破坏情况。 |
IP Address | VRRP备份组的虚拟IPv4地址,所包含的地址数定义在Count IP Addrs字段。 |
Authentication Data | VRRP报文的认证字。目前只有明文认证和MD5认证才用到该部分,对于其它认证方式,一律填0。 |
状态机
如图6 所示,VRRP协议状态机有三种状态:Initialize(初始状态)、Master(活动状态)、Backup(备状态)。
状态 | 说明 |
Initialize | 该状态为VRRP不可用状态,在此状态时设备不会对VRRP报文做任何处理。 通常刚配置VRRP时或设备检测到故障时会进入Initialize状态。 收到接口Up的消息后,如果设备的优先级为255,则直接成为Master设备;如果设备的优先级小于255,则会先切换至Backup状态。 |
Master | 当VRRP设备处于Master状态时,它将会做下列工作:
|
Backup | 当VRRP设备处于Backup状态时,它将会做下列工作:
|
VRRP工作过程
VRRP的工作过程如下:
- VRRP备份组中的设备根据优先级选举出Master。Master设备通过发送免费ARP报文,将虚拟MAC地址通知给与它连接的设备或者主机,从而承担报文转发任务。
- Master设备周期性向备份组内所有Backup设备发送VRRP通告报文,以公布其配置信息(优先级等)和工作状况。
- 如果Master设备出现故障,VRRP备份组中的Backup设备将根据优先级重新选举新的Master。
- VRRP备份组状态切换时,Master设备由一台设备切换为另外一台设备,新的Master设备会立即发送携带虚拟路由器的虚拟MAC地址和虚拟IP地址信息的免费ARP报文,刷新与它连接的主机或设备中的MAC表项,从而把用户流量引到新的Master设备上来,整个过程对用户完全透明。
- 原Master设备故障恢复时,若该设备为IP地址拥有者(优先级为255),将直接切换至Master状态。若该设备优先级小于255,将首先切换至Backup状态,且其优先级恢复为故障前配置的优先级。
下面以图7 VRRP冗余备份的基本过程为例进行简要说明
- SwitchA为Master设备,优先级设置为120,抢占方式为延迟抢占。
- SwitchB为Backup设备,优先级为默认值100,抢占方式为立即抢占。
- SwitchC为Backup设备,优先级设置为110,抢占方式为立即抢占。
- 正常情况下,SwitchA为Master设备并承担业务转发任务,SwitchB和SwitchC为Backup设备且不承担业务转发。用户侧的上行流量路径为:Switch1->SwitchA->Router。此时,SwitchA定期发送VRRP报文通知SwitchB和SwitchC自己工作正常。
- 当SwitchA发生故障时,SwitchA上的VRRP会处于不可用状态。由于SwitchC优先级高于SwitchB,因此SwitchC变为Master设备,并开始发送VRRP报文和免费ARP报文,SwitchB继续保持为Backup设备。用户侧的上行流量路径为:Switch1->SwitchC->Router。
- 当SwitchA故障恢复时,VRRP的优先级为120,状态变为Backup。此时SwitchC继续定期发送VRRP报文,当SwitchA收到VRRP报文后,会比较优先级,发现自己的优先级更高,等待抢占延迟后抢占为Master设备,并开始发送VRRP报文和免费ARP报文。用户侧的上行流量路径恢复为:Switch1->SwitchA->Router。
管理VRRP
为了提高网络可靠性,通常部署主备双归属。为了满足不同的业务需要,设备之间可以运行多个VRRP备份组。此时每个VRRP备份组都需要维护自己的状态机,这样设备之间就会存在大量的VRRP协议报文。
如图8所示,为了减少协议报文对带宽的占用及CPU资源的消耗,可以将其中一个VRRP备份组配置为管理VRRP备份组(mVRRP),其余的业务VRRP备份组与管理VRRP备份组进行绑定。此时,管理VRRP负责发送协议报文来协商设备的主备状态;业务VRRP不发送协议报文,其主备状态与管理VRRP的主备保持一致,以此减少协议报文对CPU与带宽资源的消耗。
管理VRRP备份组
管理VRRP备份组与普通VRRP备份组一样,会通过VRRP协议报文来协商VRRP设备的主备状态。管理VRRP可以部署在网络中的以下位置:
- 管理VRRP与业务VRRP部署在同一侧。此时管理VRRP备份组作为网关使用(如图8中的mVRRP1),管理VRRP既负责协商设备的主备状态,也承担业务流量。此时在配置管理VRRP之前必须先创建普通VRRP备份组并配置虚拟IP地址,该虚拟IP地址即为用户设置的网关地址。
- 管理VRRP部署在SwitchA和SwitchB之间的直连链路上。此时管理VRRP备份组不作为网关使用时(如图8中的mVRRP2),管理VRRP只负责协商设备的主备状态,不承担业务流量。因此管理VRRP不需要具有虚拟IP地址,用户可以直接在接口上创建管理VRRP备份组。该配置在一定程度上降低了用户维护的复杂度。
业务VRRP备份组
普通VRRP备份组与管理VRRP备份组绑定后成为业务VRRP备份组(也叫成员VRRP备份组)。业务VRRP备份组不再发送VRRP协议报文,它的状态由所在接口状态及与其绑定的管理VRRP备份组的状态共同决定。
VRRP与链路状态联动
VRRP冗余备份功能有时需要额外的技术来完善其工作。例如,Master设备到达某网络的链路突然断掉时,VRRP无法感知故障进行切换,此时主机无法通过Master设备远程访问该网络。此时,可以通过VRRP监视链路状态,解决这个问题。
VRRP直接监视连接上行链路的接口状态
当连接上行链路的接口Down时,Master设备通过降低自身的优先级,使得Backup设备抢占成为Master,承担转发任务。
如图9所示,SwitchA和SwitchB之间配置VRRP备份组,其中SwitchA为Master设备,SwitchB为Backup设备,SwitchA和SwitchB皆工作在抢占方式下。在SwitchA上配置VRRP监视上行接口Interface1,当Interface1故障时,SwitchA降低自身优先级,通过报文协商,SwitchB抢占成为Master,确保用户流量正常转发。
VRRP利用BFD/NQA/路由技术监视上行链路连接的远端主机或者网络状况
BFD/NQA/路由用于检测Master设备上行链路的连通状况,当Master设备的上行链路发生故障时,BFD/NQA/路由可以检测故障并通知Master设备调整自身优先级,触发主备切换,确保流量正常转发。
如图10所示,SwitchA和SwitchB之间配置VRRP备份组,其中SwitchA为Master设备,SwitchB为Backup设备,SwitchA和SwitchB皆工作在抢占方式下。配置BFD/NQA/路由监测SwitchA到SwitchE之间的链路,并在SwitchA上配置VRRP与BFD/NQA/路由联动。当BFD/NQA/路由检测到SwitchA到SwitchE之间的链路故障时,通知SwitchA降低自身优先级,通过VRRP报文协商,SwitchB抢占成为Master,确保用户流量正常转发。
VRRP心跳线
如图11所示,在VRRP+STP场景中,SwitchA和SwitchB上配置VRRP备份组。若与用户相连的Switch1不能转发VRRP协议报文(如配置了未知组播丢弃),或者为了防止VRRP协议报文(心跳报文)所经过的链路不通或不稳定,可以在SwitchA和SwitchB之间部署一条心跳线,用于传递VRRP协议报文。
由于配置了心跳线之后,需要将Interface1和Interface2加入与VRRP备份组相对应的VLAN(例如,VRRP备份组配置在VLANIF100接口下,则需要配置Interface1和Interface2加入VLAN100),SwitchA、SwitchB和Switch1之间会存在环路,因此还需要配置破环协议来破除环路(例如,可以配置STP协议来破除环路)。
- 上一篇: 简单了解VRRP协议以及基础配置 vrrp协议的优点有哪些
- 下一篇: VRRP的简介 vrrp介绍
猜你喜欢
- 2024-09-29 弱电工程选择交换机需要考虑的几个重要参数
- 2024-09-29 一文告诉你企业网络架构剖析与常用配置
- 2024-09-29 VRRP 原理 vrrp原理通俗理解
- 2024-09-29 MSTP和VRRP的小实验 mstp和pvst
- 2024-09-29 VRRP虚拟路由器冗余协议实战 路由器里的虚拟服务器是什么意思
- 2024-09-29 企业网络冗余技术(EthernetChannel、HSRP、VRRP)
- 2024-09-29 VRRP和HSRP的区别: vrrp hsrp glbp
- 2024-09-29 VRRP的原理和运用 vrrp的工作原理
- 2024-09-29 网工:VRRP-虚拟路由冗余协你不会不知道吧?
- 2024-09-29 图解网络:什么是热备份路由器协议HSRP?
你 发表评论:
欢迎- 05-1613步震撼淘宝大促闪光裂纹破墙立体字PS制作教程
- 05-16AI教程 | 绘制扁平的萌萌哒图标
- 05-160基础学平面设计所需了解的基础常识汇总
- 05-16自学平面设计需要多长时间?十六年职业设计总监告诉你
- 05-16平面设计都要学习哪些内容?
- 05-16李涛PS教程 高手之路PS教程 合成教程 —制作一个小星球
- 05-16Illustrator实例教程:制作炫酷的漩涡效果
- 05-16Illustrator实例教程:利用混合工具制作一朵炫酷的花
- 最近发表
- 标签列表
-
- sd分区 (65)
- raid5数据恢复 (81)
- 地址转换 (73)
- 手机存储卡根目录 (55)
- tcp端口 (74)
- project server (59)
- 双击ctrl (55)
- 鼠标 单击变双击 (67)
- debugview (59)
- 字符动画 (65)
- flushdns (57)
- ps复制快捷键 (57)
- 清除系统垃圾代码 (58)
- web服务器的架设 (67)
- 16进制转换 (69)
- xclient (55)
- ps源文件 (67)
- filezilla server (59)
- 句柄无效 (56)
- word页眉页脚设置 (59)
- ansys实例 (56)
- 6 1 3固件 (59)
- sqlserver2000挂起 (59)
- vm虚拟主机 (55)
- config (61)
本文暂时没有评论,来添加一个吧(●'◡'●)