华为路由器:虚拟路由冗余协议VRRP的讲解

VRRP网关冗余技术

一、技术背景

在这里插入图片描述

如上图所示,如果我们局域网中只有一个路由器作为网关,假如某天我们的路由器宕机了,那么整个局域网就无法上网,我们一般称之为单点故障。那么如何解决网关的单点故障呢? 我们可以在加一个网关。就变成了下面的图:

在这里插入图片描述

如图所示,我们加了一个路由器,设置了两个网关,如果AR1宕机了,我们可以使用AR2 这样就可以解决网关单点故障。那么问题又来了,如何来切换客户端的网关呢?假如客户端有500台PC,如果AR1宕机,我们需要将客户端的网关修改为:192.168.1.253,500台客户端不可能一个一个去修改。也不可能让员工自己去修改。我们如何解决呢?就是我们今天要说的VRRP。

在这里插入图片描述

首先我们设想,可不可以让客户端的网关指向一个虚拟的网关:192.168.1.254 (上图中黄色的路由器),然后这个虚拟的网关代理真实的R1、R2网关,然后再在真实的网关之间来回的自动切换。答案是可以的。VRRP就是做这个的。

二、VRRP介绍

Virtual Router Redundancy Protocol 虚拟路由器冗余协议,简称VRRP

VRRP(虚拟路由冗余协议):通过把几台路由设备联合组成一台虚拟路由设备,将虚拟路由设备的ip地址作为用户的默认网关地址实现与外部的通讯。当网关设备发生故障时,VRRP协议能够快速选举新的网关设备承担数据流量,保障网络的可靠通信。VRRP使用ip报文作为传输协议报文,协议号为112,使用固定的组播地址224.0.0.18进行发送,通过协议报文选举处一台路由器作为master,其他设备作为backup,来实现网关备份功能。VRRP只使用到advertisement这一种报文。

master路由器的选举:首先比较每台路由器的优先级,优先级大的成为master,优先级相同的话,就比较接口ip地址,ip地址大的成为master。master会周期性的发送advertisement报文,其实也就是一秒发送一次,如果backup每隔3秒没收到master发来的advertisement报文,则认为master down,就会进行新一轮的选举。

三、VRRP的概念

1、VRRP路由器

运行VRRP的路由器,一台VRRP路由器可以同时参与到多个VRRP组中,在不同的组中,一台VRRP路由器可以充当不同的角色。

2、VRRP组

一个VRRP组由多个VRRP路由器组成,使用group ID进行标识,属于同一VRRP组的VRRP路由器互相交换信息,每一个VRRP组中只能有一个Master。

3、虚拟路由器

对于每一个VRRP组,抽象出来的一个逻辑路由器,该路由器充当网络用户的网关,该路由器并非真实存在,事实上对于用户而言,只需要知道虚拟路由器的IP,至于具体的虚拟路由器的角色由谁来承担、数据转发任务由谁来承担、Master挂掉之后谁来接替,这是VRRP的工作。

4、虚拟IP地址、MAC地址

虚拟IP地址表示虚拟路由器,该地址实际上就是用户的网关。与虚拟IP地址对应的MAC也是虚拟的,该MAC地址由固定位加上VRRP组ID构成,当PC发ARP请求虚拟IP地址对应的MAC地址,Master路由器响应这个RP请求并告知虚拟MAC地址。

5、Master、Backup路由器

  • Master路由器:就是VRRP组实际转发数据包的路由器,在每个VRRP组中,仅有Master响应对虚拟IP地址的ARP请求。Master路由器同时以一定的时间间隔发送VRRP消息,以便通知Backup路由器自己的存活。

  • Backup路由器:就是在VRRP组处于监听状态的路由器。一旦Master路由器出现故障,Backup路由器就开始接替工作。

  • 选举依据:先比较接口优先级(比大),如果相等则比接口IP地址(比大)。

6、虚拟MAC地址

通过VRRP形成的虚拟路由器使用虚拟IP地址和虚拟MAC与网络中的PC进行通信。虚拟MAC的格式如下,最后1个字节的VRID表示VRRP ID号是16进制,例如VRID是1,虚拟MAC地址为00-00-5E-00-01-01
在这里插入图片描述

四、基本配置实验

在这里插入图片描述

R1配置

<Huawei>sy
Enter system view, return user view with Ctrl+Z.
[Huawei]sy R1
[R1]un in en 
Info: Information center is disabled.
[R1]in g0/0/1
[R1-GigabitEthernet0/0/1]ip add 192.168.1.253 24

[R1-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192.168.1.254
[R1-GigabitEthernet0/0/1]vrrp vrid 1 priority 120
[R1-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 192.168.1.253 255.255.255.0 
 vrrp vrid 1 virtual-ip 192.168.1.254
 vrrp vrid 1 priority 120
#
return
[R1-GigabitEthernet0/0/1]q
[R1]dis vrrp
  GigabitEthernet0/0/1 | Virtual Router 1  #在GigabitEthernet0/0/1接口上启用了VRRP
    State : Master     
    Virtual IP : 192.168.1.254         #虚拟IP地址192.168.1.254
    Master IP : 192.168.1.253          #当前组的主路由器IP地址,是本地
    PriorityRun : 120                  #自己的优先级是120
    PriorityConfig : 120               #配置的优先级是120
    MasterPriority : 120               #当前组Master的优先级
    Preempt : YES   Delay Time : 0 s   #抢占是开启的,延迟的时间是0秒
    TimerRun : 1 s                     #运行了多长时间
    TimerConfig : 1 s
    Auth type : NONE                   #验证类型,暂时没有
    Virtual MAC : 0000-5e00-0101       #虚拟MAC
    Check TTL : YES
    Config type : normal-vrrp
    Backup-forward : disabled
    Create time : 2021-02-25 13:22:59 UTC-08:00
    Last change time : 2021-02-25 13:23:03 UTC-08:00

[R1]

R2配置

[Huawei]sys R2
[R2]un in en
Info: Information center is disabled
[R2]in g0/0/1
[R2-GigabitEthernet0/0/1]ip add 192.168.1.252 24
[R2-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192.168.1.254
[R2-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 192.168.1.252 255.255.255.0 
 vrrp vrid 1 virtual-ip 192.168.1.254
#
return
[R2-GigabitEthernet0/0/1]



[R2]dis vrrp
  GigabitEthernet0/0/1 | Virtual Router 1
    State : Backup
    Virtual IP : 192.168.1.254
    Master IP : 192.168.1.253
    PriorityRun : 100                                     #自己的优先级100
    PriorityConfig : 100                                  #配置的优先级100,其实SW2上我没有配置,默认是100
    MasterPriority : 120                                  #Master的优先级120
    Preempt : YES   Delay Time : 0 s
    TimerRun : 1 s
    TimerConfig : 1 s
    Auth type : NONE
    Virtual MAC : 0000-5e00-0101
    Check TTL : YES
    Config type : normal-vrrp
    Backup-forward : disabled
    Create time : 2021-02-25 13:24:45 UTC-08:00
    Last change time : 2021-02-25 13:24:45 UTC-08:00

PC2验证

Welcome to use PC Simulator!

PC>ping 192.168.1.253

Ping 192.168.1.253: 32 data bytes, Press Ctrl_C to break
From 192.168.1.253: bytes=32 seq=1 ttl=255 time=63 ms
From 192.168.1.253: bytes=32 seq=2 ttl=255 time=31 ms
From 192.168.1.253: bytes=32 seq=3 ttl=255 time=47 ms
From 192.168.1.253: bytes=32 seq=4 ttl=255 time=31 ms
From 192.168.1.253: bytes=32 seq=5 ttl=255 time=31 ms

--- 192.168.1.253 ping statistics ---
  5 packet(s) transmitted
  5 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 31/40/63 ms

PC>ping 192.168.1.252

Ping 192.168.1.252: 32 data bytes, Press Ctrl_C to break
From 192.168.1.252: bytes=32 seq=1 ttl=255 time=47 ms
From 192.168.1.252: bytes=32 seq=2 ttl=255 time=31 ms
From 192.168.1.252: bytes=32 seq=3 ttl=255 time=31 ms
From 192.168.1.252: bytes=32 seq=4 ttl=255 time=31 ms
From 192.168.1.252: bytes=32 seq=5 ttl=255 time=31 ms

--- 192.168.1.252 ping statistics ---
  5 packet(s) transmitted
  5 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 31/34/47 ms

PC>ping 192.168.1.254

Ping 192.168.1.254: 32 data bytes, Press Ctrl_C to break
From 192.168.1.254: bytes=32 seq=1 ttl=255 time=31 ms
From 192.168.1.254: bytes=32 seq=2 ttl=255 time=31 ms
From 192.168.1.254: bytes=32 seq=3 ttl=255 time=32 ms
From 192.168.1.254: bytes=32 seq=4 ttl=255 time=31 ms
From 192.168.1.254: bytes=32 seq=5 ttl=255 time=47 ms

--- 192.168.1.254 ping statistics ---
  5 packet(s) transmitted
  5 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 31/34/47 ms

PC>arp -a

Internet Address    Physical Address    Type
192.168.1.252       00-E0-FC-D3-09-0E   dynamic  #backup
192.168.1.253       00-E0-FC-5E-02-D1   dynamic  #master
192.168.1.254       00-00-5E-00-01-01   dynamic  #虚拟

PC>

五、VRRP实验-track接口状态

如图所示,假如R1是Master,如红色箭头所指的上联接口挡掉会不会切换呢?答案是不会,因为R1G0/0/0是OK的。不会切换,那就意味着我们配置的主备切换就没有意义,所以我们必须配置跟踪g0/0/1接口的状态。让VRRP去检测R1的g0/0/1口,如果挡掉。则自动减去优先级某一个值,达到切换的目的。
在这里插入图片描述

实验拓扑

在这里插入图片描述

按照拓扑先配置好

sw1

<Huawei>sy
Enter system view, return user view with Ctrl+Z.
[Huawei]sy R1
[R1]un in en 
Info: Information center is disabled.
[R1]in g0/0/1
[R1-GigabitEthernet0/0/1]ip add 192.168.1.253 24

[R1-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192.168.1.254
[R1-GigabitEthernet0/0/1]vrrp vrid 1 priority 120
[R1-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 192.168.1.253 255.255.255.0 
 vrrp vrid 1 virtual-ip 192.168.1.254
 vrrp vrid 1 priority 120
#
return
[R1-GigabitEthernet0/0/1]q

[R1]in g0/0/0
[R1-GigabitEthernet0/0/0]ip add 10.1.1.253 24	
[R1-GigabitEthernet0/0/0]vrrp vrid 2 virtual-ip 10.1.1.254	
[R1-GigabitEthernet0/0/0]vrrp vrid 2 priority 120
[R1-GigabitEthernet0/0/0]dis this

[R1]dis vrrp
  GigabitEthernet0/0/1 | Virtual Router 1  #在GigabitEthernet0/0/1接口上启用了VRRP
    State : Master     
    Virtual IP : 192.168.1.254     #虚拟IP地址192.168.1.254
    Master IP : 192.168.1.253      #当前组的主路由器IP地址,是本地
    PriorityRun : 120              #自己的优先级是120
    PriorityConfig : 120           #配置的优先级是120
    MasterPriority : 120           #当前组Master的优先级
    Preempt : YES   Delay Time : 0 s   #抢占是开启的,延迟的时间是0秒
    TimerRun : 1 s                     #运行了多长时间
    TimerConfig : 1 s
    Auth type : NONE                   #验证类型,暂时没有
    Virtual MAC : 0000-5e00-0101       #虚拟MAC
    Check TTL : YES
    Config type : normal-vrrp
    Backup-forward : disabled
    Create time : 2021-02-25 13:22:59 UTC-08:00
    Last change time : 2021-02-25 13:23:03 UTC-08:00
    
  GigabitEthernet0/0/0 | Virtual Router 2
    State : Master
    Virtual IP : 10.1.1.254
    Master IP : 10.1.1.253
    PriorityRun : 120
    PriorityConfig : 120
    MasterPriority : 120
    Preempt : YES   Delay Time : 0 s
    TimerRun : 1 s
    TimerConfig : 1 s
    Auth type : NONE
    Virtual MAC : 0000-5e00-0102
    Check TTL : YES
    Config type : normal-vrrp
    Backup-forward : disabled
    Create time : 2021-02-25 14:06:14 UTC-08:00
    Last change time : 2021-02-25 14:06:18 UTC-08:00


[R1]

SW2

[Huawei]sys R2
[R2]un in en
Info: Information center is disabled
[R2]in g0/0/1
[R2-GigabitEthernet0/0/1]ip add 192.168.1.252 24
[R2-GigabitEthernet0/0/1]vrrp vrid 1 virtual-ip 192.168.1.254
[R2-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 192.168.1.252 255.255.255.0 
 vrrp vrid 1 virtual-ip 192.168.1.254
#
return
[R2-GigabitEthernet0/0/1]q

[R2]in g0/0/0
[R2-GigabitEthernet0/0/0]ip add 10.1.1.252 24
[R2-GigabitEthernet0/0/0]vrrp vrid 2 virtual-ip 10.1.1.254


[R2]dis vrrp
  GigabitEthernet0/0/1 | Virtual Router 1
    State : Backup
    Virtual IP : 192.168.1.254
    Master IP : 192.168.1.253
    PriorityRun : 100   #自己的优先级100
    PriorityConfig : 100  #配置的优先级100,其实SW2上我没有配置,默认是100
    MasterPriority : 120  #Master的优先级120
    Preempt : YES   Delay Time : 0 s
    TimerRun : 1 s
    TimerConfig : 1 s
    Auth type : NONE
    Virtual MAC : 0000-5e00-0101
    Check TTL : YES
    Config type : normal-vrrp
    Backup-forward : disabled
    Create time : 2021-02-25 13:24:45 UTC-08:00
    Last change time : 2021-02-25 13:24:45 UTC-08:00
    
  GigabitEthernet0/0/0 | Virtual Router 2
    State : Backup
    Virtual IP : 10.1.1.254
    Master IP : 10.1.1.253
    PriorityRun : 100
    PriorityConfig : 100
    MasterPriority : 120
    Preempt : YES   Delay Time : 0 s
    TimerRun : 1 s
    TimerConfig : 1 s
    Auth type : NONE
    Virtual MAC : 0000-5e00-0102
    Check TTL : YES
    Config type : normal-vrrp
    Backup-forward : disabled
    Create time : 2021-02-25 14:07:53 UTC-08:00
    Last change time : 2021-02-25 14:07:53 UTC-08:00

用PC1 ping PC2验证

PC>ping 192.168.1.1

Ping 192.168.1.1: 32 data bytes, Press Ctrl_C to break
From 192.168.1.1: bytes=32 seq=1 ttl=127 time=63 ms
From 192.168.1.1: bytes=32 seq=2 ttl=127 time=62 ms
From 192.168.1.1: bytes=32 seq=3 ttl=127 time=63 ms

--- 192.168.1.1 ping statistics ---
  3 packet(s) transmitted
  3 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 62/62/63 ms

PC>tracert 192.168.1.1

traceroute to 192.168.1.1, 8 hops max
(ICMP), press Ctrl+C to stop
 1  10.1.1.253   31 ms  47 ms  47 ms     #VRRP组1是从10.1.1.253走的
 2  192.168.1.1   62 ms  63 ms  62 ms

用PC2 ping PC1验证

PC>ping 10.1.1.1

Ping 10.1.1.1: 32 data bytes, Press Ctrl_C to break
From 10.1.1.1: bytes=32 seq=1 ttl=127 time=47 ms
From 10.1.1.1: bytes=32 seq=2 ttl=127 time=78 ms
From 10.1.1.1: bytes=32 seq=3 ttl=127 time=47 ms
From 10.1.1.1: bytes=32 seq=4 ttl=127 time=62 ms
From 10.1.1.1: bytes=32 seq=5 ttl=127 time=63 ms

--- 10.1.1.1 ping statistics ---
  5 packet(s) transmitted
  5 packet(s) received
  0.00% packet loss
  round-trip min/avg/max = 47/59/78 ms

PC>tracert 10.1.1.1

traceroute to 10.1.1.1, 8 hops max
(ICMP), press Ctrl+C to stop
 1  192.168.1.253   31 ms  31 ms  47 ms   #VRRP组1是从192.168.1.253走的
 2  10.1.1.1   63 ms  62 ms  63 ms

PC>

配置跟踪

接下来我们配置分别来配置VRRP组1、VRRP组2的跟踪接口
在这里插入图片描述
如图所示,我们的优先级分别是120、100,那么我们减掉的值必须大于20。这里我们选择30

VRRP 1的配置
[R1]in g0/0/1
[R1-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 192.168.1.253 255.255.255.0 
 vrrp vrid 1 virtual-ip 192.168.1.254
 vrrp vrid 1 priority 120
#
return

[R1-GigabitEthernet0/0/1]vrrp vrid 1 track interface GigabitEthernet 0/0/0 reduced 30
[R1-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 192.168.1.253 255.255.255.0 
 vrrp vrid 1 virtual-ip 192.168.1.254
 vrrp vrid 1 priority 120
 vrrp vrid 1 track interface GigabitEthernet0/0/0 reduced 30
#
return

VRRP 2的配置
[R1]in g0/0/0
[R1-GigabitEthernet0/0/0]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/0
 ip address 10.1.1.253 255.255.255.0 
 vrrp vrid 2 virtual-ip 10.1.1.254
 vrrp vrid 2 priority 120
#
return
	
[R1-GigabitEthernet0/0/0]vrrp vrid 2 track interface GigabitEthernet 0/0/1 reduced 30
[R1-GigabitEthernet0/0/0]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/0
 ip address 10.1.1.253 255.255.255.0 
 vrrp vrid 2 virtual-ip 10.1.1.254
 vrrp vrid 2 priority 120
 vrrp vrid 2 track interface GigabitEthernet0/0/1 reduced 30
#
return
[R1-GigabitEthernet0/0/0]

验证结果

PC1连续pingPC2,然后断开R1的g0/0/0/接口,切换速度3-5秒
在这里插入图片描述

  • 4
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

亦良Cool

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值