概念:

VRRP(虚拟路由冗余协议),是一种容错协议,可通过把几台三层设备联合组成一台虚拟的路由设备,然后使用一定的机制保证在下一跳路由设备,出现故障时上一跳设备及时将业务切换到备份路由设备,从而保持通信的连续性和可靠性。

VRRP协议报文用来将Master设备的优先级和状态通告给同一备份组的所有Backup设备。VRRP协议报文封装在IP报文中,发送到分配给VRRP的IP组播地址。

在IP报文头中,源地址为发送报文接口的主IP地址(不是虚拟IP 地址),目的地址是224.0.0.18,TTL是255,协议号是112。

目前,VRRP协议包括两个版本:VRRPv2和VRRPv3。VRRPv2 和VRRPv3的主要区别为:

  1. 支持的网络类型不同。VRRPv3适用于IPv4和IPv6两种网络,而VRRPv2和VRRPv3的主要区别。
  2. 认证功能不同。VRRPv3不支持认证功能,而VRRPv2支持认证功能。
  3. 发送通告报文的时间间隔的单位不同。VRRPv3支持的是离秒级,而VRRPv2支持的是秒级。

VRRP基本工作原理:定义了三种状态,初始状态(Initialize),活动状态(Master),备份状态(Backup),其中,只有处于活动状态(Master)的设备才可以转发发送到虚拟路由器IP地址的数据报文,转换关系如下图:

选举过程:

  1. 初始创建的设备都是Initialize状态,当VRRP设备在收到VRRP接口Statup消息后,如果此设备的优先级等于255(虚拟网关和自己真实IP地址相同,可以配置的为1-254,默认为100),将直接切换至Master状态,并且无需进行下面的Master选举。否则,将会直接切换Backup状态,等待一个专门为接收Master通告的定时器超时,变成Master。

  2. 切换成Backup状态的设备,在Master_Down_Interval 定时器超时后再切换至Master状态(定时器取值为:(3* Advertisement_Interval) +Skew_time, Skew_time= (256-Backup设备的优先级) /256;默认情况下Advertisement_nteval为1秒。可以看到,优先级越高,切换为Master的时间越短。

  3. 首先切换至Master状态的VRRP设备通告报文的交互获知虚拟设备中其他成员的优先级,然后其余Backup设备执行如下步骤:
    • 如果收到的VRRP报文中显示的Master设备优先级高于或等于自己的优先级,则当前Backup设备保持Backup状态。
    • 如果收到VRRP报文中Master设备的优先级低于自己的优先级,当采用抢占方式是(缺省),则当前Backup设备将切换至Master状态,当采用非抢占方式时,当前Backup设备仍保持Backup状态。
    • 如果Master_Down_Interval 超时,没有收到VRRP报文,自己就将切换至Master状态。

  4. 新的Master设备会立即发送携带虚拟路由器的虚拟MAC地址,00-00-5E-00-01-{VRID} (VRRP for IPv4);00-00-5E-00-02-{VRID} (VRRPfor IPV6)和虚拟IP地址信息的免费ARP报文,刷新与它连接的主机或设备中的MAC从而把用户流量引到新的Master设备上来。

  5. 如果有多个VRRP设备同时切换到Master状态,通过VRRP通告报文的交互进行协商后,优先级较低的VRRP设备将切换成Backup状态,优先级最高的设备成为最终的Master设备,优先级相同时,再根据VRRP设备上VRRP备份组所在接口主IP地址大小进行比较,IP地址较大的成为Master设备。

  6. 原Master设备故障恢复时,若该设备为IP地址拥有者(优先级为255), 将直接切换至Master状态。

  7. 优先级0和255是不可以手动设置的,只有虚拟IP和接口IP为同一个IP地址时,该设备的优先级会自动调为255.Master设备要退出该VRRP时,会发送优先级为0的VRRP通告报文。

Master设备状态的通告:

Master设备会周期性地发送VRRP通告报文,在VRRP备份组中公布其配置信息等,Backup设备通过接受到Master设备发来的VRRP报文情况来判断Master设备是否工作正常。这里分为两种情况:

  1. 当Master设备主动放弃Master地位时,会发送优先级为0(终于派上用途了)的VRRP通告报文,使Backup设备快速切换成Master设备,当有多台Backup设备时也要进行之前介绍的Master选举。
  2. 当因为Master设备发生故障而不能发送VRRP报文时,Backup设备需要等到定时器超时后才能发觉Master可能出现问题,然后自己成为Master,如果有多台Backup设备的话,同样会进行选举,最后选举出唯一的一个Master设备。

VRRP的两种模式:

  1. VRRP的主备备份:在一个VRRP组内,一个Master设备,一个或多个备份设备,流量通过Master设备传输。
  2. VRRP负载分担模式:分为多网关负载分担和单网关负载分担,所谓多网关负载分担,就是先创建多个VRRP备份组,可以让一部分用户(如一个vlan)走其中一个备份组的网关,让另外一部分用户走另外一个备份组的网关,实现了流量的负载分担。单网关负载分担是多网关负载分担的升级版,这里不进行过多的介绍。
    注意:VRRP与三层有关,比较的参数一般是越大越好,如果参数相同时比较的是IP地址,越大越好,而生成树,链路聚合与二层有关的协议,比较的参数一般是越小越好,如果相同的话比较的是MAC地址,越小的越优先。

VRRP和MSTP同时存在时注意点:

VRRP主设备和同一VLAN的MSTP根桥需要时同一设备,避免次优路径的产生:

在此拓扑中,例如VLAN10的根桥为SW8,VRRP的Master却是SW7,就会出现次优路径。

SW5的e0/0/1接口被阻塞,报文(目的IP和MAC是VRRP的地址)无法直接发送给SW7,必须要经过SW8。如果SW7即是根桥也是Master,则不会出现此问题,如下图,报文可以直接通过SW5转发到SW7上。

华为设备VRRPv2配置:

  1. 指定虚拟ip地址:vrrp vrid 1 virtual-ip x.x.x.x //指定的是组1的虚拟IP地址
  2. 指定优先级:vrrp vrid 1 priority x(1-254)
  3. 抢占关闭: vrrp vrid 1 preempt-mode disable
  4. 抢占时延:vrrp vrid 1 preempt-mode timer delay x(0-3600,默认为0,表示立刻进行抢占,单位秒)
  5. VRRP通告报文的时间:vrrp vrid 1 timer advertise x(1-255) //默认是1

参考资料:HCIE培训文档

VRRP技术原理与注意点相关推荐

  1. 【直通华为HCNA/HCNP系列R篇8】VRRP技术原理及配置与管理-王达-专题视频课程

    [直通华为HCNA/HCNP系列R篇8]VRRP技术原理及配置与管理-10465人已学习 课程介绍         本课程以笔者编写,由华为公司指定作为ICT认证培训教材--<华为路由器学习指南 ...

  2. 【转载】SLB技术原理浅析

    产品介绍 SLB技术原理浅析 阿里云产品团队 发表于2014年3月21日 | 阅读(28,417) 评论 (10) 1 SLB功能介绍 SLB(Server Load Balance)服务通过设置虚拟 ...

  3. 负载均衡技术原理浅析

    1.技术架构 2.LVS技术特点 FULLNAT技术概述 SYNPROXY技术概述 集群部署方式 Keepalived优化 3.Tengine技术特点 4.更多功能 SLB(Server Load B ...

  4. 使用VRRP技术实现网关设备冗余,附详细配置实验

    文章目录 前言 一.VRRP技术的原理 二.VRRP实验与配置 1.实验拓扑 2.实验拓扑介绍 3.实验配置 VRRP配置命令 设备配置 三.实验结果 总结 前言 企业的网络中一般会使用三层交换机或路 ...

  5. php 伪静态 page-18.html,PHP 伪静态实现技术原理讲解

    PHP 伪静态实现技术原理讲解 发布于 2015-01-18 23:52:58 | 129 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文名: Hypertext Pre ...

  6. 看了极光推送技术原理的几点思考

    看了极光推送技术原理的几点思考 分类: android2012-11-26 20:50 16586人阅读 评论(18) 收藏 举报 目录(?)[+] 移动互联网应用现状 因为手机平台本身.电量.网络流 ...

  7. 秋色园QBlog技术原理解析:性能优化篇:用户和文章计数器方案(十七)

    2019独角兽企业重金招聘Python工程师标准>>> 上节概要: 上节 秋色园QBlog技术原理解析:性能优化篇:access的并发极限及分库分散并发方案(十六)  中, 介绍了 ...

  8. 详解微信域名防封的方法以及检测等工具的技术原理

    微信域名完全防封是绝对不可能的,这是必须明确的,曾经有人打折<不死域名>的概念,它不是不死,是稍微命长一点,在推广上成本更低一下,效果更好一些, 主要的技术原理是利用了腾讯云的域名安全联盟 ...

  9. NLP实践:对话系统技术原理和应用

    本文节选自电子工业出版社<自然语言处理实践:聊天机器人技术原理与应用> 作者:王昊奋&邵浩&李方圆&张凯&宋亚楠 以下是节选内容 按照技术实现,我们可将任务 ...

  10. 范成法加工matlab_光学非球面技术原理与加工技术

    光学非球面的定义 广义来说,非球面是不包括球面和平面的其他表面.从应用的角度来说,非球面可以分成轴对称的非球面.具有两个对称面的非球面.没有对称性的自由曲面. 非球面分类 通常把非球面分成二次非球面和 ...

最新文章

  1. 做好三个“避免”,加速网站排名提升!
  2. html如何超链接到servlet
  3. 新的一年,请以这样的标准完善自我
  4. Java静态方法调用非静态方法
  5. SAP UI5 System Test 的工具之一:uiveri5
  6. DFS应用——找出无向图的割点
  7. centos6.5安装配置zabbix3.0.3
  8. 多场景下的AI疫情防控“天网”:解读云边端联动下的全栈 AI 技术
  9. mysql创建表时,表的类型与java的数据类型映射(常用)
  10. shell中注释一段代码的方法
  11. vb怎么判断整数_VB数学函数大全
  12. ES6 中的 Set、Map 和 WeakMap
  13. Android Material Components – MaterialAlertDialog
  14. 线索二叉树实现(中序)
  15. Weex组件库-Dialog
  16. property_自己编写一个读取Property文件的Util类
  17. 51单片机电子琴设计
  18. “某某云词典” – 纠结的初体验
  19. 鸿蒙系统应用(HarmonyOS)2
  20. @Transactional 失效的几种情况

热门文章

  1. 一段平平无奇的秋招经历
  2. PyTorch学习—19.模型的加载与保存(序列化与反序列化)
  3. leetcode—9.分离双指针题型python解答
  4. tensorflow2.报错与解决 Cannot convert a symbolic Tensor
  5. 对数线性模型:逻辑斯谛回归和最大熵模型
  6. numpy无法导入的问题--ModuleNotFoundError: No module named 'numpy'总结
  7. 新型消防机器人作文_说一说消防机器人
  8. python窗口怎么显示我输入的_Python分别用两个窗口显示和输入
  9. Ubuntu 全部命令
  10. Android Studio3.5开发工具(安卓开发工具)的安装步骤