• 2022-08-18 网工进阶(二十七) VRRP进阶知识-报文格式、定时器、状态机、主备(选举、切换、回切)、负载分担、监视、与MSTP结合应用


    VRRP基础知识

    详见

    2022-01-12 网工基础(二十)GRE原理与配置 VRRP原理与配置_鹅一只的博客-CSDN博客_gre的应用场景

    相关命令

    创建VRRP备份组并给备份组配置虚拟IP地址

    [SW1-Vlanif10]vrrp vrid 10 virtual-ip 192.168.1.254

    配置路由器在备份组中的优先级

    1. [SW1-Vlanif10]vrrp vrid 10 priority ?
    2. INTEGER<1-254> The level of priority(default is 100)

    VRRP报文格式

    VRRP只有一种报文,即Advertisement报文,基于组播方式发送,因此只能在同一个广播域传递。 Advertisement报文的目的组播地址为224.0.0.18。

    Ver:VRRP目前有两个版本,其中VRRPv2仅适用于IPv4网络,VRRPv3适用于IPv4和IPv6两种网络。
    Virtual Rtr ID:该报文所关联的虚拟路由器的标识。
    Priority:发送该报文的VRRP路由器的优先级。(缺省值100)
    Count IP Addrs:该VRRP报文中所包含的虚拟IP地址的数量。
    Auth Type:VRRP支持三种认证类型:不认证、纯文本密码认证、MD5方式认证,对应值分别为0、1、2。
    Adver Int:发送VRRP通告消息的间隔。默认为1秒
    IP Address:所关联的虚拟路由器的虚拟IP地址,可以为多个。
    Authentication Data:验证所需要的密码信息。

    相关命令

    修改MASTER设备通告间隔时间

    1. [SW1-Vlanif10]vrrp vrid 10 timer advertise ?
    2. INTEGER<1-255> Value of timer, in seconds(default is 1)

    配置VRRP报文认证

    1. [SW1-Vlanif10]vrrp vrid 10 authentication-mode md5 ?
    2. STRING<1-8>/<24> Password of MD5 authentication mode

    抓包观察

    1 VRRP版本:2

    2 VRID组号:10

    3 优先级:100

    4 包含的虚拟IP地址数量:1个

    5 认证类型:不认证

    6 通告间隔时间:1秒

    7 虚拟IP地址:192.168.1.254

    VRRP定时器

    在VRRP协议工作过程中,VRRP定义了两个定时器

    1 ADVER_INTERVAL定时器:Master发送VRRP通告报文时间周期,缺省值为1秒。

    2 MASTER_DOWN定时器:Backup设备监听该定时器超时后,会变为Master状态。

    MASTER_DOWN定时器计算公式

    MASTER_DOWN =(3* ADVER_INTERVAL)+ Skew_time(偏移时间)

    Skew_Time=(256–Priority)/256

    VRRP状态机

    VRRP协议状态机有三种状态:Initialize(初始状态)、Master(活动状态)、Backup(备份状态)。

    VRRP协议状态

    Master状态

    1 定期(ADVER_INTERVAL)发送VRRP报文。

    2 以虚拟MAC地址响应对虚拟IP地址的ARP请求。

    3 转发目的MAC地址为虚拟MAC地址的IP报文。

    4 默认允许ping通虚拟IP地址。

    5 当多台设备同时为Master时,若设备收到与自己优先级相同的报文时,会进一步比较IP地址的大小。如果收到报文的源IP地址比自己大,则切换到Backup状态,否则保持Master状态。

    Backup状态

    1 接收Master设备发送的VRRP报文,判断Master设备的状态是否正常。

    2 对虚拟IP地址的ARP请求,不做响应。

    3 丢弃目的MAC地址为虚拟MAC地址的IP报文。

    4 丢弃目的IP地址为虚拟IP地址的IP报文。

    5 如果收到优先级和自己相同或者比自己优先级大的报文时,重置MASTER_DOWN定时器,不进一步比较IP地址的大小。
     

    VRRP主备选举

    1 当接口IP地址与VRRP的IP地址相同时,此时优先级为255(无法手动配置为255),无需等待任何定时器超时,可以直接切换至Master状态。

    2 上述情况外,设备初始化后先进入Backup状态,MASTER_DOWN定时器开始计时,在等待时间内,如果收到优先级更高的报文 或者 优先级相同的情况下收到IP地址更大的报文,则维持在Backup状态,反之,当MASTER_DOWN定时器超时后,进入Master状态,并根据ADVER_INTERVAL定时器的时间间隔持续发送报文告知其他设备。

    3 当设备处于Master状态下,收到更优的报文时,则停止发送报文,并进入Backup状态。

    4 当主备选举完成后,Master路由器立即发送免费ARP报文将虚拟MAC地址通告给与它连接的设备和主机。

    VRRP主备切换

    VRRP主备切换分为2种情况。

    1 当Master设备主动放弃Master地位(如Master设备退出备份组)时,会发送优先级为0的通告报文,用来使Backup设备快速切换成Master设备,切换时间为Skew_time(小于1秒)。

    2 当Master设备发生网络(链路)故障而不能发送通告报文的时候,Backup设备等到MASTER_DOWN定时器超时后,状态切换为Master。
     

    VRRP主备回切

    1 当Master设备出现故障时,网络会重新进行VRRP主备选举。

    2 VRRP抢占模式(Preempt Mode)

    抢占模式(默认激活):如果Backup路由器激活了抢占功能,那么当它发现Master路由器的优先级比自己更低时,它将立即切换至Master状态,成为新的Master路由器,当主备进行切换时,总共时长为:3xAdver_Interval+Skew_time+Delay_time

    非抢占模式:如果Backup路由器没有激活抢占功能,那么即使它发现Master路由器的优先级比自己更低,也只能依然保持Backup状态,直到Master路由器失效。

    注意:在抢占模式下,当Master的设备状态不稳定或者网络质量差时,会导致VRRP备份组频繁切换,从而引发终端ARP表项频繁刷新,为缓解此问题,通常设置抢占延时定时器,通过MASTER_INTERVAL定时器超时时间加上延时时间,确定状态稳定后,再进行主备回切。

    相关命令

    配置备份组中设备的抢占延迟时间

    1. [SW1-Vlanif10]vrrp vrid 10 preempt-mode timer delay ?
    2. INTEGER<0-3600> Value of timer, in seconds(default is 0)

    配置VRRP备份组中设备采用非抢占模式

    [SW1-Vlanif10]vrrp vrid 10 preempt-mode disable 

    VRRP负载分担

    通过创建多个虚拟路由器,每个物理路由器在不同的VRRP组中扮演不同的角色,不同虚拟路由器的Virtual IP作为不同的内网网关地址可以实现流量转发负载分担。

    配置举例示意

    单个设备:

    Vrid 1 Master

    Vrid 2 Backup

    VRRP监视上行端口

    VRRP可监视(Track)上行端口状态,当设备感知上行端口或者链路发生故障时,可主动降低VRRP优先级,从而保证上行链路正常的Backup设备能够通过选举切换为Master状态,指导报文转发。

    注意:如果未配置VRRP监视上行端口,则当VRRP备份组中的Master设备的上行接口或者链路出现故障时,VRRP备份组无法感知,Master无法向外转发流量。但是由于主备不会发生切换,导致出现流量黑洞。

    相关命令

    配置VRRP备份组监视接口

    1. [SW1-Vlanif10]vrrp vrid 10 track interface Vlanif 10 reduced ?
    2. INTEGER<1-255> Reduced or increased value of priority

    可配置设备当检测到上行接口或链路出现故障时,减少(也可以增加)自身优先级,IP地址拥有者和Eth-trunk成员口不允许配置VRRP监视功能。

    配置VRRP备份组监视路由

    1. [SW1-Vlanif10]vrrp vrid 10 track ip route 1.1.1.1 24 reduced ?
    2. INTEGER<1-255> Reduced or increased value of priority

    除了监视接口以外,还可以监视指定的路由。

    VRRP与MSTP结合应用

    MSTP是将一个或多个VLAN映射到一个生成树的实例,若干个VLAN共用一个生成树,MSTP可以实现负载均衡。

    VRRP配置网关可以灵活根据网络拓扑变化而自动切换,提高网络可靠性。

    VRRP+MSTP可以在实现负载分担的同时保证网络冗余备份。

    配置举例示意

    SW1配置

    1. Instance 1 vlan 10 primary
    2. Instance 2 vlan 20 secondary
    3. VRID 1 : Master
    4. VRID 2 : Backup

    SW2配置

    1. Instance 1 vlan 10 secondary
    2. Instance 2 vlan 20 primary
    3. VRID 1 : Backup
    4. VRID 2 : Master

  • 相关阅读:
    Maven依赖的作用域你到底用对了没有
    3. 自定义datasource
    Hive3.1.2的Beeline执行过程
    小红书 x Hugging Face 邀请你一起晒「创意新春照」
    Simulink导出FMU模型文件方法
    MySQL高手炼成记:29+超实用监控与优化技巧,你的数据库够快吗?
    云原生|kubernetes |kubelet服务加入系统守护进程supervisor(centos7系统下演示通过)
    国产化Kettle、JDK、MySQL下载安装操作步骤
    FreeRTOS的学习(四)—— 信号量之间的优先级翻转问题和互斥信号量
    【易售小程序项目】后端部署、Uniapp项目Web部署
  • 原文地址:https://blog.csdn.net/x629242/article/details/126399040