网络:VRRP技术

网络:VRRP

一、VRRP简介

定义

虚拟路由冗余协议VRRP(Virtual Router Redundancy Protocol)通过把几台路由设备联合组成一台虚拟的路由设备,将虚拟路由设备的IP地址作为用户的默认网关实现与外部网络通信。当网关设备发生故障时,VRRP机制能够选举新的网关设备承担数据流量,从而保障网络的可靠通信。

VRRP工作过程

VRRP的工作过程如下:

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

  2. Master设备周期性向备份组内所有Backup设备发送VRRP通告报文,以公布其配置信息(优先级等)和工作状况。

    Master报文的发送:当Master正常工作时,它会每隔一段时间(缺省为1秒)向组内Backup设备发送vrrp通告报文,通告自己工作正常。(注:只有Master发送VRRP报文)
    VRRP通告报文被封装在IP报文里,通过组播地址224.0.0.18发送,TTL为255,协议号为112
    
  3. 如果Master设备出现故障,VRRP备份组中的Backup设备将根据优先级重新选举新的Master。

  4. VRRP备份组状态切换时,Master设备由一台设备切换为另外一台设备,新的Master设备会立即发送携带虚拟路由器的虚拟MAC地址和虚拟IP地址信息的免费ARP报文,刷新与它连接的主机或设备中的MAC表项,从而把用户流量引到新的Master设备上来,整个过程对用户完全透明。

  5. 原Master设备故障恢复时,若该设备为IP地址拥有者(优先级为255),将直接切换至Master状态。若该设备优先级小于255,将首先切换至Backup状态,且其优先级恢复为故障前配置的优先级。

  6. Backup设备的优先级高于Master设备时,由Backup设备的工作方式(抢占方式和非抢占方式)决定是否重新选举Master。

    抢占模式:在抢占模式下,如果Backup设备的优先级比当前Master设备的优先级高,则主动将自己切换成Master。
    
    非抢占模式:在非抢占模式下,只要Master设备没有出现故障,Backup设备即使随后被配置了更高的优先级也不会成为Master设备。
    
    

VRRP协议报文

VRRP报文

VRRP报文是一种组播报文,由Master路由器发出来通告它的存在,使用VRRP报文可以检测虚拟路由器的各种参数,用于主路由器的选择。VRRP报文是封装在IP报文中,通过组播的方式传送。也就是说VRRP协议跟ICMP协议一样,工作在第三层(网络层),它是不具有端口的说法的。

报文字段含义
VRRPv2VRRPv3
VersionVRRP协议版本号,取值为2。VRRP协议版本号,取值为3。
TypeVRRP通告报文的类型,取值为1,表示Advertisement。VRRP通告报文的类型,取值为1,表示Advertisement。
Virtual Rtr ID(VRID)虚拟路由器ID,取值范围是1~255。虚拟路由器ID,取值范围是1~255。
PriorityMaster设备在备份组中的优先级,取值范围是0~255。0表示设备停止参与VRRP备份组,用来使备份设备尽快成为Master设备,而不必等到计时器超时;255则保留给IP地址拥有者。缺省值是100。Master设备在备份组中的优先级,取值范围是0~255。0表示设备停止参与VRRP备份组,用来使备份设备尽快成为Master设备,而不必等到计时器超时;255则保留给IP地址拥有者。缺省值是100。
Count IP Addrs/Count IPvX Addr备份组中虚拟IPv4地址的个数。备份组中虚拟IPv4或虚拟IPv6地址的个数。
Auth TypeVRRP报文的认证类型。协议中指定了3种类型:

- 0:Non Authentication,表示无认证。
- 1:Simple Text Password,表示明文认证方式。
- 2:IP Authentication Header,表示MD5认证方式。
-
Adver Int/Max Adver IntVRRP通告报文的发送时间间隔,单位是秒,缺省值为1秒。VRRP通告报文的发送时间间隔,单位是厘秒,缺省值为100厘秒(1秒)。
Checksum16位校验和,用于检测VRRP报文中的数据破坏情况。16位校验和,用于检测VRRP报文中的数据破坏情况。
IP Address/IPvX Address(es)VRRP备份组的虚拟IPv4地址,所包含的地址数定义在Count IP Addrs字段。VRRP备份组的虚拟IPv4地址或者虚拟IPv6地址,所包含的地址数定义在Count IPvX Addrs字段。
Authentication DataVRRP报文的认证字。目前只有明文认证和MD5认证才用到该部分,对于其它认证方式,一律填0。-
rsvd-VRRP报文的保留字段,必须设置为0。

VRRP状态机

VRRP协议中定义了三种状态机:初始状态(Initialize)、活动状态(Master)、备份状态(Backup)。其中,只有处于Master状态的设备才可以转发那些发送到虚拟IP地址的报文。

二、VRRP配置示例

配置VRRP主备备份示例

如图所示,HostA通过Switch双归属到RouterA和RouterB。用户希望实现:

  • 正常情况下,主机以RouterA为默认网关接入Internet,当RouterA故障时,RouterB接替作为网关继续进行工作,实现网关的冗余备份。

  • RouterA故障恢复后,可以重新成为网关。

配置VRRP主备备份示例

操作步骤

  1. 配置设备间的网络互连

    配置设备各接口的IP地址

    RouterA:

    <Huawei> system-view
    [Huawei] sysname RouterA
    [RouterA] interface gigabitethernet 2/0/0
    [RouterA-GigabitEthernet2/0/0] undo portswitch
    [RouterA-GigabitEthernet2/0/0] ip address 10.1.1.1 24
    [RouterA-GigabitEthernet2/0/0] quit
    [RouterA] interface gigabitethernet 1/0/0
    [RouterA-GigabitEthernet1/0/0] undo portswitch
    [RouterA-GigabitEthernet1/0/0] ip address 192.168.1.1 24
    [RouterA-GigabitEthernet1/0/0] quit
    

    RouterB:

    <Huawei> system-view
    [Huawei] sysname RouterB
    [RouterB] interface gigabitethernet 2/0/0
    [RouterB-GigabitEthernet2/0/0] undo portswitch
    [RouterB-GigabitEthernet2/0/0] ip address 10.1.1.2 24
    [RouterB-GigabitEthernet2/0/0] quit
    [RouterB] interface gigabitethernet 1/0/0
    [RouterB-GigabitEthernet1/0/0] undo portswitch
    [RouterB-GigabitEthernet1/0/0] ip address 192.168.2.1 24
    [RouterB-GigabitEthernet1/0/0] quit
    

    RouterC:

    <Huawei> system-view
    [Huawei] sysname RouterC
    [RouterC] interface gigabitethernet 2/0/0
    [RouterC-GigabitEthernet2/0/0] undo portswitch
    [RouterC-GigabitEtrnet2/0/0] ip address 192.168.2.2 24
    [RouterC-GigabitEthernet2/0/0] quit
    [RouterC] interface gigabitethernet 1/0/0
    [RouterC-GigabitEthernet1/0/0] ip address 192.168.1.2 24
    [RouterC-GigabitEthernet1/0/0] quit
    [RouterC] interface gigabitethernet 3/0/0
    [RouterC-GigabitEthernet1/0/0] undo portswitch
    [RouterC-GigabitEthernet1/0/0] ip address 172.16.1.1 24
    [RouterC-GigabitEthernet1/0/0] quit
    

    配置RouterA、RouterB和RouterC间采用静态’路由进行互连。

    RouterA:

    [RouterA] ip route-static 0.0.0.0 0.0.0.0 192.168.1.2
    

    RouterB:

    [RouterB] ip route-static 0.0.0.0 0.0.0.0 192.168.2.2
    

    RouterC:

    [RouterC] ip route-static 10.1.1.0 255.255.255.0 192.168.1.1
    [RouterC] ip route-static 10.1.1.0 255.255.255.0 192.168.2.1 preference 100
    
  2. 配置VRRP备份组

    在RouterA上创建VRRP备份组1,配置RouterA在该备份组中的优先级为120,并配置抢占时间为20秒。

    [RouterA] interface gigabitethernet 2/0/0
    [RouterA-GigabitEthernet2/0/0] vrrp vrid 1 virtual-ip 10.1.1.111
    [RouterA-GigabitEthernet2/0/0] vrrp vrid 1 priority 120
    [RouterA-GigabitEthernet2/0/0] vrrp vrid 1 preempt-mode timer delay 20
    [RouterA-GigabitEthernet2/0/0] quit
    

    在RouterB上创建VRRP备份组1,其在该备份组中的优先级为缺省值100。

    [RouterB] interface gigabitethernet 2/0/0
    [RouterB-GigabitEthernet2/0/0] vrrp vrid 1 virtual-ip 10.1.1.111
    [RouterB-GigabitEthernet2/0/0] quit
    
  3. 验证配置结果

    完成上述配置以后,在RouterA和RouterB上分别执行display vrrp命令,可以看到RouterA在备份组中的状态为Master,RouterB在备份组中的状态为Backup。

    [RouterA] display vrrp
     GigabitEthernet2/0/0 | Virtual Router 1
       State        : Master
       Virtual IP     : 10.1.1.111
       Master IP      : 10.1.1.1
       PriorityRun    : 120
       PriorityConfig : 120                                                        
       MasterPriority : 120                                                        
       Preempt : YES   Delay Time : 20 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 : 2012-05-11 11:39:18                                           
       Last change time : 2012-05-26 11:38:58 
    
    [RouterB] display vrrp
     GigabitEthernet2/0/0 | Virtual Router 1
       State        : Backup
       Virtual IP     : 10.1.1.111
       Master IP      : 10.1.1.1
       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-0101                                                
       Check TTL : YES                                                             
       Config type : normal-vrrp                                                   
       Backup-forward : disabled
       Create time : 2012-05-11 11:39:18                                           
       Last change time : 2012-05-26 11:38:58 
    

    在RouterA的接口GE2/0/0上执行shutdown命令,模拟RouterA出现故障。

    [RouterA] interface gigabitethernet 2/0/0
    [RouterA-GigabitEthernet2/0/0] shutdown
    [RouterA-GigabitEthernet2/0/0] quit
    

    在RouterB上执行display vrrp命令查看VRRP状态信息,可以看到RouterB的状态是Master。

    [RouterB] display vrrp
     GigabitEthernet2/0/0 | Virtual Router 1
       State        : Master
       Virtual IP     : 10.1.1.111
       Master IP      : 10.1.1.2
       PriorityRun    : 100
       PriorityConfig : 100                                                        
       MasterPriority : 100                                                        
       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 : 2012-05-11 11:39:18                                           
       Last change time : 2012-05-26 11:38:58 
    

    在RouterA的接口GE2/0/0上执行undo shutdown命令,等待20秒后,在RouterA上执行display vrrp命令查看VRRP状态信息,可以看到RouterA的状态恢复成Master。

    [RouterA] interface gigabitethernet 2/0/0
    [RouterA-GigabitEthernet2/0/0] undo shutdown
    [RouterA-GigabitEthernet2/0/0] quit
    
    [RouterA] display vrrp
     GigabitEthernet2/0/0 | Virtual Router 1
       State        : Master
       Virtual IP     : 10.1.1.111
       Master IP      : 10.1.1.1
       PriorityRun    : 120
       PriorityConfig : 120                                                        
       MasterPriority : 120                                                        
       Preempt : YES   Delay Time : 20 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 : 2012-05-11 11:39:18                                           
       Last change time : 2012-05-26 11:38:58
    
    

配置VRRP与接口状态联动监视上行接口示例

如图所示,局域网主机通过Switch双归属到部署了VRRP备份组的RouterA和RouterB,其中RouterA为Master。

用户希望当RouterA的上行接口GE1/0/0状态Down时,VRRP备份组能够及时感知并进行主备切换,由RouterB接替作为网关继续承担业务转发,以减小接口状态Down对业务传输的影响。

配置VRRP与接口状态联动

操作步骤

  1. 配置设备间的网络互连

    配置设备各接口的IP地址

    RouterA:

    <Huawei> system-view
    [Huawei] sysname RouterA
    [RouterA] interface gigabitethernet 2/0/0
    [RouterA-GigabitEthernet2/0/0] undo portswitch
    [RouterA-GigabitEthernet2/0/0] ip address 10.1.1.1 24
    [RouterA-GigabitEthernet2/0/0] quit
    [RouterA] interface gigabitethernet 1/0/0
    [RouterA-GigabitEthernet1/0/0] undo portswitch
    [RouterA-GigabitEthernet1/0/0] ip address 192.168.1.1 24
    [RouterA-GigabitEthernet1/0/0] quit
    

    RouterB:

    <Huawei> system-view
    [Huawei] sysname RouterB
    [RouterB] interface gigabitethernet 2/0/0
    [RouterB-GigabitEthernet2/0/0] undo portswitch
    [RouterB-GigabitEthernet2/0/0] ip address 10.1.1.2 24
    [RouterB-GigabitEthernet2/0/0] quit
    [RouterB] interface gigabitethernet 1/0/0
    [RouterB-GigabitEthernet1/0/0] undo portswitch
    [RouterB-GigabitEthernet1/0/0] ip address 192.168.2.1 24
    [RouterB-GigabitEthernet1/0/0] quit
    

    RouterC:

    <Huawei> system-view
    [Huawei] sysname RouterC
    [RouterC] interface gigabitethernet 2/0/0
    [RouterC-GigabitEthernet2/0/0] undo portswitch
    [RouterC-GigabitEtrnet2/0/0] ip address 192.168.2.2 24
    [RouterC-GigabitEthernet2/0/0] quit
    [RouterC] interface gigabitethernet 1/0/0
    [RouterC-GigabitEthernet1/0/0] ip address 192.168.1.2 24
    [RouterC-GigabitEthernet1/0/0] quit
    [RouterC] interface gigabitethernet 3/0/0
    [RouterC-GigabitEthernet1/0/0] undo portswitch
    [RouterC-GigabitEthernet1/0/0] ip address 172.16.1.1 24
    [RouterC-GigabitEthernet1/0/0] quit
    

    配置RouterA、RouterB和RouterC间采用静态’路由进行互连。

    RouterA:

    [RouterA] ip route-static 0.0.0.0 0.0.0.0 192.168.1.2
    

    RouterB:

    [RouterB] ip route-static 0.0.0.0 0.0.0.0 192.168.2.2
    

    RouterC:

    [RouterC] ip route-static 10.1.1.0 255.255.255.0 192.168.1.1
    [RouterC] ip route-static 10.1.1.0 255.255.255.0 192.168.2.1 preference 100
    
    
  2. 配置VRRP备份组

    在RouterA上创建VRRP备份组1,配置RouterA在该备份组中的优先级为120,并配置抢占时间为20秒。

    [RouterA] interface gigabitethernet 2/0/0
    [RouterA-GigabitEthernet2/0/0] vrrp vrid 1 virtual-ip 10.1.1.3
    [RouterA-GigabitEthernet2/0/0] vrrp vrid 1 priority 120
    [RouterA-GigabitEthernet2/0/0] vrrp vrid 1 preempt-mode timer delay 20
    [RouterA-GigabitEthernet2/0/0] quit
    

    在RouterB上创建VRRP备份组1,其在该备份组中的优先级为缺省值100。

    [RouterB] interface gigabitethernet 2/0/0
    [RouterB-GigabitEthernet2/0/0] vrrp vrid 1 virtual-ip 10.1.1.3
    [RouterB-GigabitEthernet2/0/0] quit
    
  3. 配置VRRP与接口状态联动

    在RouterA上配置VRRP与接口状态联动,当监视的接口GE1/0/0状态Down时,RouterA的优先级降低40。

[RouterA] interface gigabitethernet 2/0/0
[RouterA-GigabitEthernet2/0/0] vrrp vrid 1 track interface gigabitethernet 1/0/0 reduced 40
[RouterA-GigabitEthernet2/0/0] quit
  1. 验证配置结果

完成上述配置后,在RouterA和RouterB上分别执行display vrrp命令,可以看到RouterA为Master设备,联动的接口状态为Up,RouterB为Backup设备。

[RouterA] display vrrp
  GigabitEthernet2/0/0 | Virtual Router 1
    State          : Master
    Virtual IP       : 10.1.1.3
    Master IP        : 10.1.1.1
    PriorityRun      : 120
    PriorityConfig   : 120
    MasterPriority   : 120
    Preempt          : YES   Delay Time : 20 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
    Track IF         : GigabitEthernet1/0/0   Priority reduced : 40
    IF state       : UP
    Create time      : 2012-05-22 17:32:56
    Last change time : 2012-05-22 17:33:00

[RouterB] display vrrp
  GigabitEthernet2/0/0 | Virtual Router 1
    State          : Backup
    Virtual IP       : 10.1.1.3
    Master IP        : 10.1.1.1
    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-0101
    Check TTL        : YES
    Config type      : normal-vrrp
    Backup-forward   : disabled
    Create time      : 2012-05-22 17:33:00
    Last change time : 2012-05-22 17:33:04

在RouterA的接口GE1/0/0上执行shutdown命令模拟链路故障,在RouterA和RouterB上分别执行display vrrp命令,可以看到RouterA状态切换成Backup,联动的接口状态为Down,RouterB的状态切换为Master。

[RouterA] interface gigabitethernet 1/0/0
[RouterA-GigabitEthernet1/0/0] shutdown
[RouterA-GigabitEthernet1/0/0] quit
[RouterA] display vrrp
  GigabitEthernet2/0/0 | Virtual Router 1
    State          : Backup
    Virtual IP       : 10.1.1.3
    Master IP        : 10.1.1.2
    PriorityRun      : 80
    PriorityConfig   : 120
    MasterPriority   : 100
    Preempt          : YES   Delay Time : 20 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
    Track IF         : GigabitEthernet1/0/0   Priority reduced : 40
    IF state       : DOWN
    Create time      : 2012-05-22 17:33:56
    Last change time : 2012-05-22 17:34:00

[RouterB] display vrrp
  GigabitEthernet2/0/0 | Virtual Router 1
    State          : Master
    Virtual IP       : 10.1.1.3
    Master IP        : 10.1.1.2
    PriorityRun      : 100
    PriorityConfig   : 100
    MasterPriority   : 100
    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      : 2012-05-22 17:34:00
    Last change time : 2012-05-22 17:34:04

在RouterA的接口GE1/0/0上执行undo shutdown命令恢复链路故障,在RouterA和RouterB上分别执行display vrrp命令,20秒后,可以看到RouterA状态恢复为Master,联动的接口状态为Up,RouterB的状态恢复为Backup。

[RouterA] interface gigabitethernet 1/0/0
[RouterA-GigabitEthernet1/0/0] undo shutdown
[RouterA-GigabitEthernet1/0/0] quit
[RouterA] display vrrp
 GigabitEthernet2/0/0 | Virtual Router 1
 State : Master
 Virtual IP : 10.1.1.3
 Master IP : 10.1.1.1
 PriorityRun : 120
 PriorityConfig : 120
 MasterPriority : 120
 Preempt : YES Delay Time : 20 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
 Track IF : GigabitEthernet1/0/0 Priority reduced : 40
 IF state : UP
 Create time : 2012-05-22 17:34:56
 Last change time : 2012-05-22 17:35:00
[RouterB] display vrrp
  GigabitEthernet2/0/0 | Virtual Router 1
  State          : Backup
  Virtual IP       : 10.1.1.3
  Master IP        : 10.1.1.1
  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-0101
  Check TTL        : YES
  Config type      : normal-vrrp
  Backup-forward   : disabled
  Create time      : 2012-05-22 17:35:00
  Last change time : 2012-05-22 17:35:04

此文仅为个人理解,请各位点评

  • 10
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值