VRRP协议

一.基本概念

1.概念

  • VRRP能够在不改变组网的情况下,将多台路由器虚拟成一个虚拟路由器,通过配置虚拟路由器的IP地址为默认网关,实现网关的备份。
  • 协议版本:VRRPv2(常用)和VRRPv3:
  • VRRPv2仅适用于IPv4网络,VRRPv3适用于IPv4和IPv6两种网络。
  • VRRP协议报文:

        只有一种报文----Advertisement报文:

            其目的IP地址是224.0.0.18

            目的MAC地址是01-00-5e-00-00-12

            协议号是112。

2.基本结构

设备类型

主(master)路由器
通过比较VRRP优先级,优先级大的是master路由器;

周期性的发送VRRP报文,维护master路由器和备份路由器的身份;周期时间默认是1s; 备份

关,通过比较 VRRP 优先级,优先级小的是备份路由器;

备份(backup)路由器:
通过不断的接收master路由器发送的 VRRP 报文来判断master路由器的状态;

如果在一定的时间内,收不到 VRRP 报文,则认为master路由器出现故障,自己升级为master路

由器;

这个“一定的时间”,默认是“master路由器发送VRRP的周期”的3倍,所以默认是 3s 。 

虚拟网关
通过VRRP虚拟出来的网关IP地址,这个网关IP地址,是配置在终端设备上的;

终端设备访问其他网段时,直接将数据发送给虚拟网关IP地址,

此时只有master路由器会回应针对虚拟网关IP地址的ARP请求,所以最终终端设备发送的数据

发送到了master路由器设备上

VRID
虚拟路由器的标识。有相同VRID的一组路由器构成一个虚拟路由器
 


状态机

优先级

  • 默认0 - 255

  • 0 代表主要退出

  • 255代表 有设备和虚拟ip冲突

  • 可手动配置 1-254

  • 优先级相同会比较接口地址大的优先

  • 优先级默认为100

二.主备份过程

1.备份过程

①选出Master: 虚拟路由器中的路由器根据优先级选举出Master。选举出主备路由器后,Backup就不在发送报文;Master路由器通过发送免费ARP报文,将自己的虚拟MAC地址通知给与它连接的设备或者主机,从而承担报文转发任务;

②状态维持:Master每间隔1秒发送一个ARRP报文,Backup 始终监听Master,Backup一段时间内收不到Master的报文会成为主路由器。 

③如果Master路由器出现故障,虚拟路由器中的Backup路由器将根据优先级重新选举新的Master

在主发生故障的时,Backup在3秒没回成为主(此时间核优先级等设置有关)

  • 虚拟路由器状态切换时,Master路由器由一台设备切换为另外一台设备,新的Master路由器只是简单地发送一个携带虚拟路由器的MAC地址和虚拟IP地址信息的免费ARP报文,这样就可以更新与它连接的主机或设备中的ARP相关信息。网络中的主机感知不到Master路由器已经切换为另外一台设备。
  • Backup路由器的优先级高于Master路由器时,由Backup路由器的工作方式(抢占方式和非抢占方式)决定是否重新选举Master

④VRRP主备路由器切换过程

  • Backup在Master_Down_Interval时间内未收到Master发送的状态通告报文,则立即成为Master。

  • 发现收到RouterB的VRRP报文中的优先级比自己低,RouterA立即抢占成为Master。

2.负载均担

传统的主备方式流量都经由单个Master转发,Master负担过重

通过配置不同的备份组,使RouterB成为新备份组的Master,这样就可以分担网络中流量了

相关推荐

最近更新

  1. TCP协议是安全的吗?

    2023-12-17 05:00:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2023-12-17 05:00:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2023-12-17 05:00:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2023-12-17 05:00:04       18 阅读

热门阅读

  1. rpc和http的区别,使⽤场景

    2023-12-17 05:00:04       39 阅读
  2. AR游戏开发

    2023-12-17 05:00:04       38 阅读
  3. 【Linux应用编程笔记】输入设备

    2023-12-17 05:00:04       40 阅读
  4. Python学习笔记第七十六天(OpenCV视频应用)

    2023-12-17 05:00:04       36 阅读
  5. 第十七章 : Spring Boot 集成RabbitMQ(一)

    2023-12-17 05:00:04       32 阅读
  6. 求一个数组中的最大子序列和。

    2023-12-17 05:00:04       33 阅读
  7. python之画动态图 gif效果图

    2023-12-17 05:00:04       37 阅读