【网络阶段学习之五】VRRP的工作原理与配置

VRRP

一、VRRP的概念

VRRP 全称是虚拟路由器冗余协议,它是一种容错协议。该协议通过把几台路由设备联合组成一台虚拟的路由设备,该虚拟路由器在本地局域网拥有唯一的一个虚拟ID和虚拟IP地址。实际上,该虚拟路由器是由一个Master 设备和若干Backup 设备组成。正常情况下,业务全部由Master 承担 ,所有用户端仅需设置此虚拟IP为网关地址。当Master 出现故障时,Backup接替工作,及时将业务切换到备份路由器,从而保持通信的连续性和可靠性。而用户端无需做任何配置更改,对故障无感知。

二、VRRP的三种状态

VRRP协议中定义了三种状态机:

  • 初始状态(Initialize)
  • 活动状态(Master)
  • 备份状态(Backup)

三、VRRP的设备类型

master路由器

  • 通过比较VRRP优先级,优先级大的是master路由器
  • 周期性的发送VRRP报文,维护master路由器和备份路由器的身份(周期时间默认是1s
  • 备份网关,通过比较VRRP优先级,优先级小的是备份路由器

备份路由器

  • 通过不断的接收master路由器发送的VRRP报文来判断master路由器的状态
  • 如果在一定的时间内(默认是3s),收不到 VRRP 报文,则认为master路由器出现故障,自己升级为master路由器

虚拟网关 :通过VRRP虚拟出来的网关IP地址,这个网关IP地址,是配置在终端设备上的。
VRID:虚拟路由器的标识。(只有在同一个组中,才会共享虚拟ip)

四、VRRP的作用

  1. 出口网关的备份,保证出口网关的高可用性。
  2. 主路由器失效后,备份路由器立即顶替路由器的工作,保证数据不丢失。
  3. 两个不同的路由器成为不同组的主路由器,相互备份。
  4. 跟踪上行链路接口状态,当上行链路接口失效时,自动备份路由提示为主路由器,保证数据不丢失。

五、VRRP的工作原理

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

  • Master路由器周期性发送VRRP报文,以公布其配置信息和工作状况

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

  • 虚拟路由器状态切换时,Master路由器由一台设备切换为另外一台设备,新的Master路由器只是简单地发送一个携带虚拟路由器的MAC地址和虚拟IP地址信息的免费ARP报文,这样就可以更新与它连接的主机或设备中的ARP相关信息。网络中的主机感知不到Master路由器已经切换为另外一台设备

  • Backup路由器的优先级高于Master路由器时,由Backup路由器的工作方式决定是否重新选举Master

VRRP的配置

一、如何配置VRRP

  • 配置IP、网关、子网掩码
  • 在路由器上配置端口地址
  • VRRP配置在端口地址上
  • 配置静态路由

二、VRRP的实验

1.配置好主机ip和网关

PC1:192.168.1.1/24。

PC3:192.168.2.1/24。

2.配置好路由器R2

以R2为例,两个接口的IP地址和子网掩码分别为:192.168.1.10/24和10.0.0.1/24,设置1组和配置虚拟网关,配置优先级,延迟抢占,监听上行端口,并且将非直连网段、子网掩码、下一跳地址添加进路由表中,为R2添加路由信息。

路由器R2配置命令如下:

LHEY 复制代码
<Huawei>u t m                                                   //关闭华为提示信息
Info: Current terminal monitor is off.
<Huawei>sys                                                     //切换至系统视图
Enter system view, return user view with Ctrl+Z.
[Huawei]sys R2                                                  //重命名
[R2]int g0/0/0                                                  //进入接口g0/0/0
[R2-GigabitEthernet0/0/0]ip add 192.168.1.10 24                 //设置子接口的IP地址(即R2下面所属主机的网关地址)
[R2-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.1.254   //设置1组和配置虚拟网关
[R2-GigabitEthernet0/0/0]vrrp vrid 1 priority 120               //配置优先级为120
[R2-GigabitEthernet0/0/0]vrrp vrid 1 preempt-mode timer delay 30//延迟抢占  延迟 30s
[R2-GigabitEthernet0/0/0]vrrp vrid 1 track int g0/0/1 reduced 50//监听上行端口
[R2-GigabitEthernet0/0/0]int g0/0/1                             //进入接口g0/0/1
[R2-GigabitEthernet0/0/1]ip add 10.0.0.1 24                     //设置子接口的IP地址(即sys R2下面所属主机的网关地址)
[R2-GigabitEthernet0/0/1]q                                      //返回上一级
[R2]ip route-static 192.168.2.0 24 10.0.0.2                     //配置网段为10.0.0.2的路由信息
[R2]dis this
#
sysname R2
#
ip route-static 192.168.2.0 255.255.255.0 10.0.0.2
#
return

3.配置好路由器R3

以R2为例,两个接口的IP地址和子网掩码分别为:192.168.1.20/24和20.0.0.1/24,设置1组和配置虚拟网关,并且将非直连网段、子网掩码、下一跳地址添加进路由表中,为R3添加路由信息。

路由器R3配置命令如下:

LHEY 复制代码
<Huawei>u t m                                                //关闭华为提示信息
Info: Current terminal monitor is off.
<Huawei>sys                                                  //切换至系统视图
Enter system view, return user view with Ctrl+Z.
[Huawei]sys R3                                               //重命名
[R3]int g0/0/0                                               //进入接口g0/0/0
[R3-GigabitEthernet0/0/0]ip add 192.168.1.20 24              //设置子接口的IP地址(即R3下面所属主机的网关地址)
[R3-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.1.254//设置1组和配置虚拟网关
[R3-GigabitEthernet0/0/0]int g0/0/1                          //进入接口g0/0/1
[R3-GigabitEthernet0/0/1]ip add 20.0.0.1 24                  //设置子接口的IP地址(即R3下面所属主机的网关地址)
[R3-GigabitEthernet0/0/1]q                                   //返回上一级
[R3]ip route-static 192.168.2.0 24 20.0.0.2                  //配置网段为20.0.0.2的路由信息
[R3]dis this
#
sysname R3
#
ip route-static 192.168.2.0 255.255.255.0 20.0.0.2
#
return

4.配置好路由器R1

以R1为例,三个接口的IP地址和子网掩码分别为:20.0.0.2/24和10.0.0.1/24以及192.168.2.254/24,将非直连网段、子网掩码、下一跳地址添加进路由表中,为R3添加路由信息。

路由器R3配置命令如下:

LHEY 复制代码
<Huawei>u t m                                            //关闭华为提示信息
Info: Current terminal monitor is off.
<Huawei>sys                                              //切换至系统视图
Enter system view, return user view with Ctrl+Z.
[Huawei]sys R1                                           //重命名
[R1]int g0/0/0                                           //进入接口g0/0/0
[R1-GigabitEthernet0/0/0]ip add 20.0.0.2 24              //设置子接口的IP地址(即R1下面所属主机的网关地址)
[R1-GigabitEthernet0/0/0]int g0/0/1                      //进入接口g0/0/1
[R1-GigabitEthernet0/0/1]ip add 10.0.0.2 24              //设置子接口的IP地址(即R1下面所属主机的网关地址)
[R1-GigabitEthernet0/0/1]int g0/0/2                      //进入接口g0/0/2
[R1-GigabitEthernet0/0/2]ip add 192.168.2.254 24         //设置子接口的IP地址(即R1下面所属主机的网关地址)
[R1-GigabitEthernet0/0/2]q                               //返回上一级
[R1]ip route-static 192.168.1.0 24 10.0.0.1              //配置网段为20.0.0.1的路由信息
[R1]ip route-static 192.168.1.0 24 20.0.0.1 preference 70//配置网段为20.0.0.1的路由信息
[R1]dis this
#
sysname R1
#
ip route-static 192.168.1.0 255.255.255.0 10.0.0.1
ip route-static 192.168.1.0 255.255.255.0 20.0.0.1 preference 70
#
return

5.检测联通性

用PC1 ping PC3,发现能够进行通信。

三、总结

VRRP是一种路由容错协议,也可以叫做备份路由协议。一个局域网络内的所有主机都设置缺省路由,当网内主机发出的目的地址不在本网段时,报文将被通过缺省路由发往外部路由器,从而实现了主机与外部网络的通信。当缺省路由器down掉(即端口关闭)之后,内部主机将无法与外部通信,如果路由器设置了VRRP时,那么这时,虚拟路由将启用备份路由器,从而实现全网通信。

相关推荐
咩咩大主教1 小时前
C++在Linux实现多线程和多进程的TCP服务器和客户端通信
linux·服务器·c语言·开发语言·c++·网络协议·tcp/ip
A尘埃2 小时前
RPC远程调用的序列化框架
网络·网络协议·rpc·序列化
杰瑞的猫^_^3 小时前
【Linux】网络基础
linux·运维·网络·网络协议·osi七层模型·数据包的封装和分用
听我一言3 小时前
ESP32-WROOM-32 [创建AP站点-客户端-TCP透传]
网络·网络协议·tcp/ip·esp32
小堃学编程5 小时前
计算机网络(八) —— Udp协议
网络协议·计算机网络·udp
Tony聊跨境8 小时前
Facebook运营:账号类型有哪些?有必要用静态住宅IP吗?
网络协议·tcp/ip·facebook
Michael的跨境生活大杂烩8 小时前
Facebook直播限流是什么原因?是ip地址导致的吗
网络协议·tcp/ip·facebook
Liveweb视频汇聚平台10 小时前
Liveweb视频汇聚平台支持GB28181转RTMP、HLS、RTSP、FLV格式播放方案
websocket·网络协议·音视频·实时音视频·视频编解码
一个很帅的帅哥1 天前
axios(基于Promise的HTTP客户端) 与 `async` 和 `await` 结合使用
javascript·网络·网络协议·http·async·promise·await
温有情1 天前
UDP_SOCKET编程实现
网络·网络协议·udp