VRRP协议个人理解+报文示例+典型配置-RFC2338/RFC3768/RFC5798/RFC9568

个人认为,理解报文就理解了协议。通过报文中的字段可以理解协议在交互过程中相关传递的信息,更加便于理解协议。

因此本文将在VRRP协议报文的基础上进行介绍。

在这里插入图片描述VRRP协议发展

  • 关于VRRPv2基本原理,可重点参考2004年发布的RFC3768-Virtual Router Redundancy Protocol
  • 关于VRRPv3基本原理,可重点参考2024年发布的RFC9568-VRRP Version 3 for IPv4 and IPv6

历史RFC

  • 关于VRRPv2的历史版本RFC,可查看1998年发布的RFC2338
  • 关于VRRPv3的历史版本RFC,可查看2010年发布的RFC5798
  • 关于VRRP所使用的协议号,可查看IANA发布的Assigned Internet Protocol Numbers
  • 关于VRRPv2的RFC2338版本资料,可查看博客VRRP协议RFC2338文档翻译
  • 关于VRRPv3的RFC5798版本资料,可查看博客VRRP协议RFC5798文档翻译
  • 关于VRRPv3所涉及的ICMPv6协议,可查看博客IPv6/ICMPv6-原理介绍+报文分析+配置示例
  • 关于单播VRRP的相关内容,可参考Keepalived Configuration Manual Page


相比于VRRPv2支持IPv4网络,VRRPv3主要用于支持IPv6网络。同时允许VRRPv3兼容VRRPv2标准。不同版本之间除部分字段有所不同外,相关内容无较大差别。

Note:不同版本RFC之间略有差异,这里以其中一版VRRP协议进行说明。个人能力有限,敬请各位指导。

目录

Virtual Router Redundancy Protocol

  • 目录

  • 1.VRRP原理
    • 1.1.VRRP相关概念
    • 1.2.VRRP报文格式
      • 1.2.1.VRRP的包格式
      • 1.2.2.VRRP的帧格式
    • 1.3.VRRP状态机切换
  • 2.VRRP的实际应用
    • 2.1.VRRP的典型配置
    • 2.2.VRRP的其他应用
      • 2.2.1.VRRP与路由协议
      • 2.2.2.单播VRRP
  • 更新

1.VRRP原理

VRRP(Virtual Router Redundancy Protocol,虚拟路由器冗余协议)主要用于消除静态路由下固有的单点故障导致的业务转发异常故障。VRRP 通过定义选举机制,将虚拟路由器的责任分配给 LAN 上的 VRRP 路由器之一。控制与虚拟路由器关联的 IP 地址的 VRRP 路由器称为 Master 路由器,它会响应并转发发送到这些虚拟 IP 地址的数据包。如果 Master 路由器故障,选举过程会在转发责任中提供动态故障转移。然后,终端主机可以使用 LAN 上的任何虚拟路由器 IP 地址作为默认的第一跳路由器。使用 VRRP 的优势在于,默认路径可用性更高,无需在每个终端主机上配置动态路由或路由器发现协议。VRRP 提供的功能类似于专有协议“热备用路由器协议 (HSRP)”[HSRP] (《RFC2281-Cisco Hot Standby Router Protocol》) 和“IP 备用协议”[IPSTB] (《Development of router clusters to provide fast failover in IP networks》

其基本原理在于:通过一次竞争选举出承担虚拟 IP 及其虚拟 MAC 功能的路由器角色。

1.1.VRRP相关概念

基本概念
VRRP Router:VRRP 路由器,也即参与 VRRP 选举的路由器。
Virtual Router:一个由 VRRP 管理的虚拟对象。对外以 IP/MAC 的形式存在,用于作为主机的虚拟网关。

虚拟路由器的 Virtual IP 由管理员定义,同时其 MAC 为单播 MAC 由 IANA 所分配。
IPv4 网络下取 00-00-5E-00-01-{VRID}IPv6 网络下取 00-00-5E-00-02-{VRID}
该 00-00-5E 及其组播 01-00-5E 形式的 OUI,由 IANA 向 IEEE 所注册使用。相关地址分配可查看IANA发布的IANA OUI Ethernet Numbers

IP Address Owner:真实IP地址与 VRRP 虚拟路由器 IP相同的路由器。
Primary IP Address:真实路由器上被选出用于发送 VRRP advertisements 报文源地址的接口地址。

在 IPv4 网络中通常选择为接口主地址,在 IPv6 网络中通常选择为接口 link-local 地址。

Virtual Router Master:VRRP 路由器中被选举出来用于承载虚拟路由器角色的路由器。Master 路由器应当转发数据包 DMAC 为虚拟路由器的数据包,并响应虚拟路由器相关的 ARP/ND 报文。
Virtual Router Backup:VRRP 路由器中 Master 路由器的备选路由器。并且可以有多个。

在 RFC9568 中舍弃了 Master 路由器的概念,用以 ACTIVE 路由器替代。但保留了 Backup 路由器的相关概念。并且通常 Backup 路由器不转发数据包 DMAC 为虚拟路由器的数据包。
在这里插入图片描述vrrp vrid backup-forward 用于设置 Backup 路由器转发数据包 DMAC 为虚拟路由器的数据包。该功能主要用于防止 VRRP 状态切换过程中的流量中断问题,但同时有可能引入多包问题。

Drop Route:RFC9568 中新提出的概念。该路由用于防止 VRRP 状态切换中的流量微环。

状态机相关参数

virtual router IPv4_Addresses:虚拟路由器的 IPv4 地址。虚拟路由器可能有多个 IPv4 地址,参与选举的路由器应当相同。
virtual router IPv6_Addresses:虚拟路由器的 IPv6 地址。虚拟路由器可能有多个 IPv4 地址,参与选举的路由器应当相同。
Virtual_Router_MAC_Address:虚拟路由器的 MAC。在 RFC5798/RFC9568 中明确定义 VRRP advertisements 和 ARP/ND messages 的 SMAC 应当选择该 MAC。

IPv4 网络下取 00-00-5E-00-01-{VRID}IPv6 网络下取 00-00-5E-00-02-{VRID}
该 00-00-5E 及其组播 01-00-5E 形式的 OUI,由 IANA 向 IEEE 所注册使用。相关地址分配可查看IANA发布的IANA OUI Ethernet Numbers

Advertisement_Interval:VRRP advertisements 报文的发送间隔。VRRPv2 和 VRRPv3 都默认 1s。
Master_Adver_Interval:RFC5798/RFC9568 中明确定义由 Backup 路由器记录用于计算 Skew_Time 和 Master_Down_Interval。

在这里插入图片描述vrrp vrid timer advertise用于设置 VRRPv2 虚拟路由器的通告间隔。
在这里插入图片描述vrrp vrid timer advertise用于设置 VRRPv3 虚拟路由器的通告间隔。
在这里插入图片描述vrrp6 vrid timer advertise用于设置 VRRPv3 虚拟路由器的通告间隔。

Skew_Time:Master_Down 后的额外等待时间。

在 RFC2338/RFC3768 中该时间定义为:
( 256 − P r i o r i t y ) / 256 (256 - Priority) / 256 (256Priority)/256
在 RFC5798/RFC9568 中该时间定义为:
( ( 256 − p r i o r i t y ) ∗ M a s t e r _ A d v e r _ I n t e r v a l ) / 256 ((256 - priority) * Master\_Adver\_Interval) / 256 ((256priority)Master_Adver_Interval)/256

Master_Down_Interval:从 Backup 过渡到 Master/Active 状态的时间。

( 3 ∗ M a s t e r _ A d v e r _ I n t e r v a l ) + S k e w t i m e (3 * Master\_Adver\_Interval) + Skew_time (3Master_Adver_Interval)+Skewtime

Preempt_Mode/Accept_Mode:用于控制优先级较高的 Backup 路由器是否抢占优先级较低的 Master。默认抢占。RFC5798/RFC9568 中明确定义 Accept_Mode 用于控制是否响应发往虚拟路由器所在真实路由器的接口地址的报文。

在这里插入图片描述vrrp vrid preempt-mode 用于设置 vrrp 的抢占模式。

Master_Down_Timer:该定时器用于监听没有收到 VRRP ADVERTISEMENT 报文的时间。
Adver_Timer:该定时器用于触发 VRRP ADVERTISEMENT 报文的发送。

点击此处回到目录

1.2.VRRP报文格式

1.2.1.VRRP的包格式

VRRPv2 for IPv4:RFC2338/RFC3768
在这里插入图片描述在 RFC2338/RFC3768 中定义了相同格式的 VRRPv2 报文。

在这里插入图片描述VRRPv2 报文示例。

VRRPv3 for IPv4/IPv6:RFC5798/RFC9568
在这里插入图片描述在 RFC5798/RFC9568 中定义了相同格式的 VRRPv3 报文。其内容与 VRRPv2 格式基本相同,因此 VRRPv3 可以兼容 VRRPv2。

在这里插入图片描述VRRPv3 报文示例。

由于 VRRPv2 和 VRRPv3 格式基本相同,在此统一介绍各个字段含义
Version:4-bits,用于表示 VRRP 协议版本。取 2 时表示 VRRPv2,取 3 时表示 VRRPv3。

在这里插入图片描述vrrp version 用于设置 VRRP 的版本。

Type:4-bits,用于表示 VRRP 协议报文类型。目前 VRRPv2 和 VRRPv3 都只定义了一种 ADVERTISEMENT 报文,取值 1。
Virtual Rtr ID:8-bits,虚拟路由器 ID,用于区分所报告的虚拟路由器。取值 1-255。

在这里插入图片描述vrrp vrid 用于配置 VRID,该参数是 VRRP 选举相关参数之一

Priority:8-bits,用于表示发送 VRRP 虚拟路由器的优先级。Priority 越大,越优先。取值 1-255。

在这里插入图片描述vrrp vrid priority 用于配置特定虚拟路由器的优先级。VRID 取 0 时表示 VRRP Master/ACTIVE 主动退出 VRRP 选举,以便快速完成 VRRP 状态切换。VRID 取 255 时表示 IP 拥有者,IP 拥有者不参与 VRRP 选举直接过渡到 Master/ACTIVE 状态。该参数是 VRRP 选举相关参数之一

Count IPvX Addr:8-bits,用于表示后文携带 IP address 的个数。RFC5798/RFC9568 明确规定其值最小为 1,并忽略取值为 0 的 VRRP 通告报文。
Auth Type仅在 RFC2338/RFC3768 所定义的 VRRPv2 版本中存在。8-bits,用于表示 VRRP 所使用的认证类型。

RFC2338 仅提供了 VRRP 认证的三种模式:取 0 的不认证;取 1 的简单文本认证;取 2 的 IP 认证头。RFC3768 则只定义取 0 的不认证,实际上已取消了 VRRPv2 的认证。这是因为 VRRP 的认证并不能带来所预想的安全保护,并往往导致网络的多 Master 状态。
因此从 RFC3768 后不在定义 VRRP 的认证。在这里插入图片描述vrrp vrid authentication-mode 用于定义 VRRPv2 的认证模式。

rsvd仅在 RFC5798/RFC9568 所定义的 VRRPv3 版本中存在。4-bits,保留字段,要求置 0 并在接收时忽略该字段以便兼容之前版本。
Adver Int仅在 RFC2338/RFC3768 所定义的 VRRPv2 版本中存在。8-bits,VRRP ADVERTISEMENTS 通告间隔。取值 1-255,默认 1s。

在这里插入图片描述vrrp vrid timer advertise用于设置 VRRPv2 虚拟路由器的通告间隔。

Max Adver Int仅在 RFC5798/RFC9568 所定义的 VRRPv3 版本中存在。12-bits,VRRP ADVERTISEMENTS 通告间隔。取值 1-40,默认 1s。在 VRRPv3 中该字段单位为 100 centiseconds厘秒(1s)。

在这里插入图片描述vrrp vrid timer advertise用于设置 VRRPv3 虚拟路由器的通告间隔。由于仅占据 12-bits,也即 0-4095 因此取值 40s。
在这里插入图片描述vrrp6 vrid timer advertise用于设置 VRRPv3 虚拟路由器的通告间隔。由于仅占据 12-bits,也即 0-4095 因此取值 100-4095 centisecond。
自动换行
在最新的《RFC9568-1.1.Differences from RFC 5798 》中对该字段说明:
在这里插入图片描述应当检查该字段是否匹配。并在《RFC9568-7.1.Receiving VRRP Packets》中详细说明。
在这里插入图片描述当收到的 VRRP Advertisement 中该字段与本地不匹配时将有可能造成网络的不稳定。

Checksum:16-bits,用于校验整个 VRRP message 消息。
IPvX Address:不定长,用于携带一个或多个与虚拟路由器相关的 IP address 信息。

该字段为 VRRP 虚拟路由器的 IP address,并且参与路由器所填充的该字段应当在IP 数量和 IP address 上都保持一致。该参数是 VRRP 选举相关参数之一
在这里插入图片描述vrrp vrid virtual-ip 用于设置虚拟路由器的 ipv4 addres。
在这里插入图片描述vrrp vrid virtual-ip 用于设置虚拟路由器的 ipv6 addres。

Authentication Data仅在 RFC2338/RFC3768 所定义的 VRRPv2 版本中存在。认证数据信息。

1.2.2.VRRP的帧格式

除上述所介绍的 VRRP 包格式外,还应注意的是 VRRP 的 Ethernet Header 和 IP Header
SMAC:VRRP 通告报文的 SMAC 应使用协议规定 MAC。

IPv4 网络下取 00-00-5E-00-01-{VRID}IPv6 网络下取 00-00-5E-00-02-{VRID}。该 00-00-5E 及其组播 01-00-5E 形式的 OUI,由 IANA 向 IEEE 所注册使用。相关地址分配可查看IANA发布的IANA OUI Ethernet Numbers

DMAC:VRRP 通告报文为组播报文,因此其 DMAC 应由 DIP 映射而来。

IPv4 网络下固定取 01-00-5E-00-00-12IPv6 网络下固定取 33-33-00-00-00-12

SIP:协议规定 SIP 使用 primary IP Address 也即接口地址作为 VRRP 通告报文的源地址。

IPv4 网络下往往取接口主地址IPv6 网络下固定link-local地址

DIP:协议规定 VRRP 通告报文为组播报文。

IPv4 网络下固定取 224.0.0.18IPv6 网络下固定取 FF02:0:0:0:0:0:0:12

DSCP:协议未对 VRRP 报文做 QOS 规定,一般取 CS6。
TTL/Hop Limit:协议规定 VRRP 的 TTL/Hop Limit 必须取 255 以便将其控制在局域网范围。

在这里插入图片描述vrrp un-check ttl 用于取消 IPv4 网络下的 TTL 检查。
在这里插入图片描述vrrp6 un-check hop-limit 用于取消 IPv6 网络下的 hop-limit 检查。

Protocol Number:协议规定取 112。

点击此处回到目录

1.3.VRRP状态机切换

VRRP 主要定义了三种状态:Initialize、Backup 和 Master。在 RFC9568 中将之前三个版本中的 Master 状态重新定义为 Active,但基本内容相同。接下来进行详细介绍。

Initialize
在这里插入图片描述该图中需要解释的是:

  1. 优先级 255 不可设置。VRRP 路由器接口 IP 与 虚拟路由器 IP 相同者自动具有 255 优先级。
  2. Master/Active 路由器将周期性发送免费 ARP 以刷新表象。

在这里插入图片描述vrrp gratuitous-arp timeout 用于修改免费 arp 发送间隔。
Cisco 友商对应命令为:

vrrpinterface vlan10vrrp 1 periodic-arp-na interval 30$
$
  1. IPv6 网络下发送的 unsolicited ND Neighbor Advertisement 报文,应当将 R-bit 和 O-bit 置位,S-bit 清空。

在这里插入图片描述unsolicited ND Neighbor Advertisement 报文示例,应以虚拟 MAC 填充 Target Link-layer address Option。
并且由于 IPv6 虚拟路由器有全球单播地址和链路本地地址,因此会有两个 unsolicited ND Neighbor Advertisement 报文示例。

  1. Master_Adver_Interval 为 RFC5798/RFC9568 新定义,主要用于 Backup 路由器计算 Skew_Time 和 Master_Down_Interval。

自动换行
Backup和Master之间的切换
在这里插入图片描述该图中需要解释的是:

  1. Master_Down_Timer 触发其实意味者在一定时间内未收到来自 Master/Active 路由器的 ADVERTISEMENT 通告报文。
  2. 优先级为 0 的 ADVERTISEMENT 通告报文通常意味着 Master/Active 路由器用于主动退出 VRRP 选举。此时可缩短 Backup 路由器向 Master/Active 状态转变的时间。
  3. Master 路由器收到优先级等于自己且 primary IP Address 大于自己接口地址的ADVERTISEMENT 将向 Backup 状态转变。但实际上这一行为很难发生,因为 Backup 路由器会一直保持 Backup 状态不会发送 ADVERTISEMENT 报文。
  4. 图中未提及 VRRP 的抢占模式。实际在抢占模式下只要收到 ADVERTISEMENT 报文,就重置 Master_Down_Timer 定时器。因此不会触发 Backup 向 Master 的状态转变。
  5. 对于 IPv6 网络下,接口启动时涉及 IPv6 地址的 DAD 等过程。因此还将叠加其他过程。

点击此处回到目录

2.VRRP的实际应用

2.1.VRRP的典型配置

在这里插入图片描述此处以上图为例简单介绍下 IPv6 网络下 VRRPv3 的使用。

AR:
#sysname AR1
#
ipv6
#
interface GigabitEthernet0/0/0ipv6 enable ipv6 address 2001:DB8::1:1/64 ipv6 address FE80::1 link-localvrrp6 vrid 1 virtual-ip FE80::1:1 link-localvrrp6 vrid 1 virtual-ip 2001:DB8::1:FFFFvrrp6 vrid 1 priority 120vrrp6 vrid 1 preempt-mode timer delay 5vrrp6 vrid 1 timer advertise 200vrrp6 vrid 1 track interface GigabitEthernet0/0/1 reduced 50
#

此处需要说明的是:

  1. 由于 IPv6 网络下有 link-local 地址的要求。因此 VRRP 路由器都必须指定相同的全球单播地址和 link-local 地址。并且应当全球单播地址被包含于本地接口地址中。
  2. VRRP 可设置 track 联动端口。在上行链路中断后可及时改变优先级过渡到 Backup 状态来使得向外的路径及时收敛。除 track 联动端口外,还可 track bfd/nqa 甚至静态路由等方式来实现。
  3. VRRP 的抢占延时应当仅在 Master/Active 路由器上设置,以便防止回切影响网络收敛。
  4. 通常 VRRP Backup 路由器不响应发往虚拟路由器的数据包。但在某种情况下也可通过命令方式 (vrrp6 vrid backup-forward) 来使得 Backup 路由器转发数据流。
  5. 由于 VRRP 虚拟 IP 实际上为非真实 IP,因此 VRRPv3 在启动时不进行 DAD 的 IP 地址冲突检测。对于 IPv6 网络下直接发送针对全球单播地址和 link-local 地址的未经请求 ND 协议的 NA 报文 (R-bit 和 O-bit 置位,S-bit 不置位)。

VRRP相关查询命令在这里插入图片描述display vrrp6 interface 用于查看 VRRP 接口状态及其相关配置信息。
在这里插入图片描述display vrrp6 brief 用于查看 VRRPv3 相关状态。

点击此处回到目录

2.2.VRRP的其他应用

2.2.1.VRRP与路由协议

VRRP场景下的路由协议
直连路由:成为 Master/Active 路由器的 VRRP 路由器角色将生成一条虚地址对应的主机路由。

IGP路由:当 Master/Active 路由器虚地址所在的接口宣告进 OSPF/ISIS 进程时,会将虚地址对应的主机路由作为叶子路由引入 IGP 协议中。

在这里插入图片描述OSPF 的 datebase。
在这里插入图片描述ISIS 的 datebase。

BGP路由:BGP 仅在 network 或 重分布情况下才会引入该主机路由。

VRRP的admin-group管理组
VRRP 的 admin-group 管理组主要在设备上需要配置多个 VRRP 虚拟 IP 的场景下,用于减少网络中 VRRP 报文的发送且提高设备性能。

其基本原理在于,指定设备接口上的一个 VRRP 虚拟路由成为管理组通过 VRRP Advertisement 报文完成 VRRP 选举。其他 VRRP 虚拟路由通过 track VRRP admin-group,成为 VRRP 成员备份组。而 VRRP 成员备份组不发送 VRRP Advertisement 报文进行 VRRP 竞争选举而是直接继承 VRRP admin-group 的选举状态。

在此种状态下,所有 VRRP 路由器都必须在其 VRRP 虚拟路由上 track admin-group,以防止 VRRP 状态的不同步。

在这里插入图片描述vrrp vrid admin 用于指定某一 VRRP 虚拟路由成为 admin-group 管理组。
在这里插入图片描述vrrp vrid track admin-vrrp interface GE 1/0/0 vrid 用于 track 成为 VRRP 成员备份组。

2.2.2.单播VRRP

单播下的VRRP
对于某些在服务器上的运行 VRRP 协议会使用一种单播形式通告的 VRRP advertisements 报文。目前暂未发现有标准文档描述这种单播 VRRP,这里仅做相关说明。感兴趣者可查阅相关资料。

此处以keepalived 网站的 Keepalived Configuration Manual Page所提供资料进行介绍。

单播 VRRP 协议主要由 Keepalived 程序软件驱动。这是一款用 C 语言编写用于为 Linux 系统和基于 Linux 的基础设施提供简单的负载均衡和高可用性工具。负载均衡框架依赖于知名且广泛使用的 Linux Virtual Server (IPVS,Linux 虚拟服务器) 内核模块,提供第 4 层负载均衡。

服务器管理员通过 root 或其他用户 C 语言编写创建 /etc/keepalived/conf.d 文件。

服务器管理员通过 root 或其他用户在 /etc/keepalived/keepalived.conf 文件中创建基本的配置文件,并在 /run/keepalived 路径下创建命名空间。如果有多个 keepalived 进程使用相同的 namespace,则在 /run/keepalived 以 pid 文件进行区分。

keepalived.conf文件结构
keepalived.conf 文件主要有 4 种顶级结构:GLOBAL CONFIGURATION,BFD CONFIGURATION,VRRPD CONFIGURATION 和 LVS CONFIGURATION。每种顶级结构又包含了多种子模块。

在这里插入图片描述keepalived.conf 文件主要包含上图所示的结构。

1@GLOBAL CONFIGURATION
1@Global definitions:主要包含一些全局条件下定义的内容。例如 net_namespace全局守护程序,instance实例名(多实例间的区分),linkbeat_use_polling轮询故障检测接口,global_defs全局配置模块等。

global_defs全局配置模块包含协议运行的一些必要参数信息。这里仅介绍部分内容。

global_defs{#一些必要的程序名字。process_name NAMEvrrp_process_name NAMEchecker_process_name NAMEbfd_process_name NAME#字符串格式的文本以标识设备。router_id <STRING>#遵循 RFC5798 IANA 取 224.0.0.18。vrrp_mcast_group4 224.0.0.18。#遵循 RFC5798 IANA 取 ff02::12。vrrp_mcast_group6 ff02::12#静态地址的默认接口。default_interface p33p1.3#过渡到MASTER后发送第二组免费ARP的延迟时间,默认5秒。vrrp_garp_master_delay 10#VRRP版本,默认取2。vrrp_version 3#严格遵循协议规定的VRRP要求。vrrp_strict#指定上报的SNMP服务器信息。snmp_socket udp:1.2.3.4:705#使能SNMP处理KEEPALIVED MIBenable_snmp_vrrp#使能SNMP trapenable_traps}

1@Linkbeat interfaces:指定允许哪些接口应该通过 MII、Ethtool 或 ioctl status 使用轮询,而不是依赖 netlink 状态更新。

1@Static track groups:允许 VRRP 实例 track 包括静态地址、静态路由和规则的方式来过渡到错误状态。

2@BFD CONFIGURATION:基于 RFC5880 (双向转发检测) 原理实现的快速检测。当配置为在 2 个 keepalived 实例之间工作,但在 VRRP 实例的主/备份对之间使用未加权 track_bfds 意味着 VRRP 实例只有在两个 VRRP 实例都运行时才能启动,这在某种程度上违背了 VRRP 的目的。

3@VRRPD CONFIGURATION
3@VRRP script(s):定期执行的监控代码。
3@VRRP synchronization group(s):VRRP 同步组是 VRRP 协议的扩展。主要目标是定义一组 VRRP 实例以一起同步,以便一个实例的转换将反映给其他组成员。
3@VRRP instance(s):VRRP 实例是 VRRP 协议的关键功能。每个 VRRP 实例都与一个唯一的接口相关。

VRRP instance <STRING>{#初始VRRP状态。state MASTER#与VRRP实例绑定的接口。interface eth0#VRRP的虚拟MAC。use_vmac [<VMAC_INTERFACE_NAME>] [MAC_ADDRESS]。#遵循 RFC5798 IANA 取 ff02::12。use_vmac_addr#从基本接口而不是 VMAC 接口发送/接收 VRRP 消息。单播peer该值必须设置。vmac_xmit_base#多播或单播 vrrp 数据包的src_addr。默认 IP 是接口上的主 IP。mcast_src_ipunicast_src_ip <IPADDR>#VRRP版本,默认取2。vrrp_version 3#在单播模式下,检查VRRP 数据包的源地址是否为本地对等体之一。check_unicast_src#使用单播方式通告VRRP报文。unicast_peer {<IPADDR> [min_ttl {0..255}] [max_ttl {0..255}]...}#Bacup向Master转变的监听间隔次数。默认3次。down_timer_adverts [1-100]#VRRP优先级。priority 100#VRRP通告间隔。advert_int 1#VRRP的虚拟IP。virtual_ipaddress{192.168.200.17/24 dev eth1192.168.200.18/24 dev eth2 label eth2:1}#过渡到Master时添加的路由。过渡到Backup时删除virtual_routes {src 192.168.100.1 to 192.168.109.0/24 via 192.168.200.254 dev eth1192.168.110.0/24 via 192.168.200.254 dev eth1192.168.111.0/24 dev eth2 no_track}#使能VRRPv3的Accept Modeaccept#使能抢占模式preempt#是否开启全局下的VRRP严格检查。单播模式不应检查。strict_mode [on|off|true|false|yes|no]}

4@VRRPD CONFIGURATION:主要包含Virtual server group(s) 和Virtual server(s)子模块

点击此处回到目录

更新

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/1554674.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

深入理解NumPy库:常用函数详解与数组操作指南

在数据科学和数值计算领域&#xff0c;NumPy无疑是一个强大的工具&#xff0c;它为Python提供了高效的多维数 组处理能力。无论是进行数据分析、构建机器学习模型&#xff0c;还是进行复杂的科学计算&#xff0c;NumPy都是 不可或缺的核心库之一。 numpy.array 是 NumPy 库中…

UART通信—基于江科大源码基础进行的改进和解析

我就不讲理论了&#xff0c;CSDN上大佬属实多&#xff0c;我就只讲代码了&#xff0c;串口的基本理论&#xff0c;大家去看其他大佬写的吧 一、源文件的组成 1、包含的头文件 stm32f10x.h 是STM32F10x系列微控制器的标准外设库&#xff08;Standard Peripheral Library&…

【算法业务】数据驱动的用户增长实践、收益及思考

这篇内容是多年之前&#xff08;2020年&#xff09;的用户增长项目时自己写的总结&#xff0c;这里做一下对于实践和思考的回顾&#xff0c;便于知识的记录和经验分享&#xff0c;内容涉及用户增长理解、个性化推送系统框架、个性化推送问题建模、推送内容池构建、智能文案生成…

zotero使用koofr+google drive/onedrive同步

最早了解到这个思路是来自 知乎-【从零开始使用Zotero】(3) Zotero文献同步方式 和 How to Sync Zotero Files Using WebDAV and Google Drive with Koofr: A Step-by-Step Guide 虽然周围很多人都在用Readpaper这种web端的了&#xff0c;但是经常逛Arxiv而且zotero的web插…

MATLAB|电气互联系统有功-无功协同优化模型

目录 1 主要内容 模型示意图 目标函数 程序亮点 2 部分程序 3 程序结果 4 下载链接 1 主要内容 本程序基本复现《“碳中和”目标下电气互联系统有功-无功协同优化模型》&#xff0c;文献模型提供了一个很好的创新思路&#xff0c;把常规电气互联系统的调度和有功无功优化…

Android Framework AMS(01)AMS启动及相关初始化1-4

该系列文章总纲链接&#xff1a;专题总纲目录 Android Framework 总纲 本章关键点总结 & 说明&#xff1a; 说明&#xff1a;本章节主要涉及systemserver启动AMS及初始化AMS相关操作。同时由于该部分内容分析过多&#xff0c;因此拆成2个章节&#xff0c;本章节是第一章节&…

10.4学习

1.Transactional 注意事项&#xff1a; ①事务函数中不要处理耗时任务&#xff0c;会导致长期占有数据库连接。 ②事务函数中不要处理无关业务&#xff0c;防止产生异常导致事务回滚。 ●事务传播属性 ①REQUIRED&#xff08;默认属性&#xff09; 如果存在一个事务&#…

基于Springboot+VUE的二手奢侈品商城的设计与实现

一、摘要 当前&#xff0c;二手奢侈品市场持续蓬勃发展&#xff0c;吸引了越来越多的消费者。然而&#xff0c;现有的二手奢侈品交易平台在用户体验、安全性和功能方面仍存在一些问题&#xff0c;需要进一步改进。本研究旨在设计和实现一种基于Spring Boot 和 Vue 技术框架的二…

17 链表——21. 合并两个有序链表 ★

17 链表 21. 合并两个有序链表 将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1: 输入:l1 = [1,2,4], l2 = [1,3,4] 输出:[1,1,2,3,4,4] 算法设计: 合并两个有序链表,并保持有序性,可以采用迭代法和递归法两种…

Unity代码组件,代码控制旋转+RotateAround、Translate,LookAt相关

创建脚本 在Project面板创建一个Scripts文件夹&#xff0c;用于专门存放脚本&#xff0c;创建一个脚本&#xff0c;命名为RotationControl,将该脚本拖拽到Tank上&#xff0c;则Tank物体成功挂载该脚本。 双击打开脚本&#xff0c;编写脚本如下&#xff1a; using System.Coll…

国外电商系统开发-运维系统批量添加服务器

您可以把您准备的txt文件&#xff0c;安装要求的格式&#xff0c;复制粘贴到里面就可以了。注意格式&#xff01; 如果是“#” 开头的&#xff0c;则表示注释&#xff01;

746. 使用最小花费爬楼梯

文章目录 746. 使用最小花费爬楼梯思路总结 746. 使用最小花费爬楼梯 746. 使用最小花费爬楼梯 给你一个整数数组 cost &#xff0c;其中 cost[i] 是从楼梯第 i 个台阶向上爬需要支付的费用。一旦你支付此费用&#xff0c;即可选择向上爬一个或者两个台阶。 你可以选择从下标…

Java之队列

1. 概念 队列&#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端进行删除数据操作的特殊线性 特点&#xff1a; 队列具有先进先出FIFO(First In First Out) 入队列&#xff1a;进行插入操作的一端称为队尾&#xff08;Tail/Rear&#xff09; 出队列&#xff1a;进…

【论文笔记】DKTNet: Dual-Key Transformer Network for small object detection

【引用格式】&#xff1a;Xu S, Gu J, Hua Y, et al. Dktnet: dual-key transformer network for small object detection[J]. Neurocomputing, 2023, 525: 29-41. 【网址】&#xff1a;https://cczuyiliu.github.io/pdf/DKTNet%20Dual-Key%20Transformer%20Network%20for%20s…

等额本金和等额本息是什么意思?

等额本金和等额本息是两种常见的贷款还款方式&#xff0c;它们各自有着不同的特点和适用场景。下面我将用通俗易懂的语言来解释这两种还款方式&#xff1a; 等额本金 定义&#xff1a;等额本金指的是在贷款期限内&#xff0c;每月偿还相同数额的本金&#xff0c;而利息则随着剩…

buuctf[安洵杯 2019]easy misc1

解压的一个文件夹和图片一个&#xff0c;zip压缩包有密码 FLAG IN ((√2524921X8552)15-1794)NNULLULL, ((√2524921X8552)15-1794)7 我用passware kit 2022 所以试试7位数字NNULLULL,掩码&#xff08;mask&#xff09;攻击试试 mask &#xff1a;?d?d?d?d?d?d?dNNUL…

C++【类和对象】(友元、内部类与匿名对象)

文章目录 1.友元2.内部类3.匿名对象结语 1.友元 友元提供了⼀种突破类访问限定符封装的方式&#xff0c;友元分为&#xff1a;友元函数和友元类&#xff0c;在函数声明或者类声明的前面加friend&#xff0c;并且把友元声明放到⼀个类的里面。外部友元函数可访问类的私有和保护…

图文深入理解Oracle DB企业级集中管理神器-GC

值此国庆佳节&#xff0c;深宅家中&#xff0c;闲来无事&#xff0c;就多写几篇博文。今天继续宅继续写。 本文将图文深入介绍Oracle DB企业级集中管理神器-GC&#xff1a;即Oracle Grid Control&#xff08;Oracle 企业管理器网格控制&#xff09;。 Oracle DB的牛逼之处实在太…

GS-SLAM论文阅读笔记-CaRtGS

前言 这篇文章看起来有点像Photo-slam的续作&#xff0c;行文格式和图片类型很接近&#xff0c;而且貌似是出自同一所学校的&#xff0c;所以推测可能是Photo-slam的优化与改进方法&#xff0c;接下来具体看看改进了哪些地方。 文章目录 前言1.背景介绍GS-SLAM方法总结 2.关键…

基于Keras的U-Net模型在图像分割与计数中的应用

关于深度实战社区 我们是一个深度学习领域的独立工作室。团队成员有&#xff1a;中科大硕士、纽约大学硕士、浙江大学硕士、华东理工博士等&#xff0c;曾在腾讯、百度、德勤等担任算法工程师/产品经理。全网20多万粉丝&#xff0c;拥有2篇国家级人工智能发明专利。 社区特色&a…