9.VRRP

VRRP

虚拟网关冗余协议 Virtual Router Redundancy Protocol.三层网关冗余技术。对用户的网关做冗余。

拓扑图

image-20230925224719231

R1、R2、PC1通过交换机SW1连接到一个LAN里,现在希望通过在R1和R2连接SW1的接口上启用VRRP来实现主机上网的第一跳冗余,R1为master,R2为Backup。交换机不做额外的配置,仅透明转发。R3作为局域网和外部网络的网关,通过交换机SW1和汇聚路由器R1、R2互联。

VRRP配置

这里需要4个可用地址,网关一个地址,R1、R2、PC 三个地址,所需主机位为3位,掩码位29位,即255.255.255.248

R1配置接口IP以及冗余网关

<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sys AR1
[AR1]inter gi 0/0/0
[AR1-GigabitEthernet0/0/0]ip add 192.168.10.2 29
[AR1-GigabitEthernet0/0/0]
[AR1-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.10.1   #创建虚拟组1,并指定虚拟ip地址,该虚拟地址作为用户网关
[AR1-GigabitEthernet0/0/0]vrrp vrid 1 priority 105              #将R1优先级改为105
如果没有配置优先级,主备优先级都是100,这种情况下如果R2先启动,那么主设备会变成R2,优先级数字越大越优先,将R1优先级改为105,则R1会成为主设备。

R2配置接口IP以及冗余网关

<Huawei>sys
Enter system view, return user view with Ctrl+Z.
[Huawei]sys AR2
[AR2]inter gi 0/0/0
[AR2-GigabitEthernet0/0/0]ip add 192.168.10.3 24
[AR2-GigabitEthernet0/0/0]
[AR2-GigabitEthernet0/0/0]vrrp vrid 1 virtual-ip 192.168.10.1

查看vrrp信息

image-20230925215455274

image-20230925215526554

PC配置

image-20230925213319604

PC上ping网关10.1

image-20230925213345816

工作原理

核心路由器 master会每隔一段时间(约2s)发送一个特定的vrrp 报文。backup如果一段时间没有收到对方发来的vrrp 报文,就认为对方master 设备出现故障。此时backup会自动切换为master。

image-20230925214519654

根据上行链路状态切换vrrp的master

VRRP主备切换是通过侦听通告报文实现的,如果Backup路由器侦听不到Master的消息或自己优先级更高,那么执行抢占(默认无抢占等待时间)。

如果故障点发生在上行链路,主备不切换,那么所有上网流量到达R1之后将无法转发。因此这里引入一个VRRP的特性——跟踪上行链路。确保在上行链路出现故障的时候,R1自动降低自己的优先级,R2可以执行抢占,从而将流量引导到备用路由器和备用上行链路进行转发。

  1. 配置上行接口的IP
[AR1]inter gi 0/0/1
[AR1-GigabitEthernet0/0/1]ip add 12.1.1.2 29
Sep 25 2023 22:35:20-08:00 AR1 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP
 on the interface GigabitEthernet0/0/1 has entered the UP state. 
[AR1-GigabitEthernet0/0/1]q
[AR1]

[AR2]inter gi 0/0/1
[AR2-GigabitEthernet0/0/1]ip add 12.1.1.3 29
Sep 25 2023 22:35:44-08:00 AR2 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP
 on the interface GigabitEthernet0/0/1 has entered the UP state. 
[AR2-GigabitEthernet0/0/1]

[Huawei]sys AR3
[AR3]inter gi 0/0/0
[AR3-GigabitEthernet0/0/0]ip add 12.1.1.1 29
Sep 25 2023 22:36:33-08:00 AR3 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP
 on the interface GigabitEthernet0/0/0 has entered the UP state. 
[AR3-GigabitEthernet0/0/0]inter loop 0
[AR3-LoopBack0]ip add 1.1.1.1 32
[AR3-LoopBack0]q
[AR3]
  1. 配置路由
    可以换成OSPF
[AR1]ip route-static 1.1.1.1 29 12.1.1.1

[AR2]ip route-static 1.1.1.1 29 12.1.1.1

[AR3]ip route-static 192.168.10.0 29 12.1.1.2
----[AR3]ip route-static 192.168.10.0 29 12.1.1.3
  1. 在AR1和AR2上配置跟踪上行链路状态
[AR1]inter gi 0/0/0
[AR1-GigabitEthernet0/0/0]vrrp vrid 1 track interface GigabitEthernet 0/0/1 reduced 30
[AR1-GigabitEthernet0/0/0]q
[AR1]

[AR2]inter gi 0/0/0
[AR2-GigabitEthernet0/0/0]vrrp vrid 1 track interface GigabitEthernet 0/0/1 reduced 30
[AR2-GigabitEthernet0/0/0]

跟踪上联接口gi 0/0/1 的状态,当发现gi 0/0/1口down时,自动减少优先级(默认是10,可以通过配置reduced指定减少的额度),以让出 master的位置。

  1. 配置完后,将AR1的上联口gi 0/0/1 shutdown,测试vrrp主备切换。
[AR1]inter gi 0/0/1
[AR1-GigabitEthernet0/0/1]shutdown 
  1. 查看vrrp状态

AR2的vrrp状态,变为master

image-20230925225630968

AR1的优先级降低30,变成75

image-20230925230302813

配置密码(可选配置)

[AR1]inter gi 0/0/0
[AR1-GigabitEthernet0/0/0]vrrp vrid 1 authentication-mode simple plain 123     #配置认证简单明文密码123

image-20230925230629385

配置VRRP 多组负载均衡

正常状态下,所有流量都从Master设备转发,Backup设备处于闲置状态。

image-20230925235949358

如果想实现双网关的负载均衡,可以采用VRRP多组的方式:在R1和R2上分别建立VRRP组1,虚拟地址为192.168.10.1,Master设备是R1,VRRP组2,虚拟地址为192.168.10.5,Master设备是R2。并且将PC1的默认网关指向192.168.10.1,PC2的默认网关设置为192.168.10.5。这样的设计,可以将这个网段上的主机上网流量,分担到两台网关上。

设置另一组vrrp的虚拟地址为192.168.10.5,注意让AR2成为master。

[AR2-GigabitEthernet0/0/0]vrrp vrid 2 virtual-ip 192.168.10.5
[AR1-GigabitEthernet0/0/0]vrrp vrid 2 virtual-ip 192.168.10.5

image-20230925233658068

此时重新加一台PC2,设置IP为192.168.10.6,网关设置为192.168.10.5。

image-20230925233946508

image-20230925233939226

问题

问题1:

ping 1.1.1.1 的会包路由 这个时候要么到AR1,要么到AR2,必然只能生效一条。

如果这个时候AR2为master,但是AR3到192.168.10.0的路由到AR1上,对于PC1的去包走的AR2,回包走的却是AR1;

image-20230926174833381

image-20230926183606151

如果这个时候AR1为master,但是AR3到192.168.10.0的路由到了AR2上,对于PC1的去包走的AR1,回包走的却是AR2。

所以 如果希望在主路由器故障时保护回包路由也能切换,那么确实需要在另一侧的接口上也配置VRRP。这样可以确保无论哪个方向的流量,只要主路由器出现故障,备份路由器都能立即接管并继续转发数据

问题2:

先配置这条路由,对于PC2的去包走的AR2,回包走的却是AR1。
[AR3]ip route-static 192.168.10.0 255.255.255.248 12.1.1.2

再添加以下路由之后,回包会被泛洪给AR1和AR2
-----[AR3]ip route-static 192.168.10.0 255.255.255.248 12.1.1.3

image-20230926184033729

LSW1的mac转发表变化

image-20230926175052466

交换机VRRP+MSTP实现二层和三层的冗余

拓扑图

image-20230927214840395

配置vlan和接口模式

[SW4]vlan batch 10 20
[SW4]inter gi 0/0/1
[SW4-GigabitEthernet0/0/1]port link-type trunk
[SW4-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20
[SW4-GigabitEthernet0/0/1]
[SW4-GigabitEthernet0/0/1]inter gi 0/0/2
[SW4-GigabitEthernet0/0/2]port link-type trunk
[SW4-GigabitEthernet0/0/2]port trunk allow-pass vlan 10 20
[SW4-GigabitEthernet0/0/2]
[SW5]vlan batch 10 20
[SW5]inter gi 0/0/2
[SW5-GigabitEthernet0/0/2]port link-type trunk
[SW5-GigabitEthernet0/0/2]port trunk allow-pass vlan 10 20
[SW5-GigabitEthernet0/0/2]
[SW5-GigabitEthernet0/0/2]inter gi 0/0/1
[SW5-GigabitEthernet0/0/1]port link-type trunk
[SW5-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20
[SW5-GigabitEthernet0/0/1]
[SW6]inter gi 0/0/1
[SW6-GigabitEthernet0/0/1]port link-type trunk
[SW6-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20
[SW6-GigabitEthernet0/0/1]inter gi 0/0/2
[SW6-GigabitEthernet0/0/2]port link-type trunk
[SW6-GigabitEthernet0/0/2]port trunk allow-pass vlan 10 20
[SW6-GigabitEthernet0/0/2]q
[SW6]vlan batch 10 20
Info: This operation may take a few seconds. Please wait for a moment...done.
[SW6]inter gi 0/0/3
[SW6-GigabitEthernet0/0/3]port link-type access 
[SW6-GigabitEthernet0/0/3]port default vlan 10
[SW6-GigabitEthernet0/0/3]
[SW6-GigabitEthernet0/0/3]inter gi 0/0/4	
[SW6-GigabitEthernet0/0/4]port link-type access 
[SW6-GigabitEthernet0/0/4]port default vlan 20

配置VRRP组1

[SW4]inter vlan 10
[SW4-Vlanif10]ip add 192.168.10.2 29
[SW4-Vlanif10]vrrp vrid  1 virtual-ip 192.168.10.1
[SW4-Vlanif10]vrrp vrid  1 priority 105
[SW4-Vlanif10]

[SW5]inter Vlanif 10
[SW5-Vlanif10]ip add 192.168.10.3 29
[SW5-Vlanif10]vrrp vrid  1 virtual-ip 192.168.10.1
[SW5-Vlanif10]

配置VRRP组2

[SW4]inter vlan 20
[SW4-Vlanif10]ip add 192.168.20.2 29
[SW4-Vlanif10]vrrp vrid 2 virtual-ip 192.168.20.1
[SW4-Vlanif10]

[SW5]inter Vlanif 20
[SW5-Vlanif20]ip add 192.168.20.3 29
[SW5-Vlanif20]vrrp vrid 2 virtual-ip 192.168.20.1
[SW5-Vlanif20]vrrp vrid 2 priority 105

配置跟踪接口

[SW4]inter vlan 10
[SW4-Vlanif10]vrrp vrid 1 track interface GigabitEthernet0/0/1
[SW4-Vlanif10]q
[SW4]

[SW5]inter vlan 20
[SW5-Vlanif20]vrrp vrid 2 track interface GigabitEthernet0/0/1
[SW5-Vlanif20]q

配置MSTP

在MSTP(Multiple Spanning Tree Protocol)中引⼊了域的概念,可以将⼀个⼤型交换网络可以被划分为多个MST域(MST Region),但是每个交换机只能配置一个MST域。这意味着在一个大的交换网络中,可以有多个交换机,每个交换机配置一个不同的MST域。然后在每个MST域内,可以运行多个生成树实例(MSTI)。每个生成树实例之间彼此独立。这样可以实现链路的负载分担和避免资源浪费。

该协议不是基于VLAN,⽽是基于Instance(实例)运⾏的:可以将⼀个或多个VLAN映射到⼀个 Instance,然后MSTP基于该Instance计算⽣成树。映射到同⼀个Instance的 VLAN共享⼀颗⽣成树。可以针对MSTI进⾏主根桥,次根桥,接⼝优先级或cost等相关配置。

SW4、SW5、SW6上面配置MSTP

# 进入系统视图
system-view

# 切换到MSTP模式
stp mode mstp

#配置STP(Spanning Tree Protocol)的区域配置

stp region-configuration              #进入STP区域配置模式

region-name hcnp                      #指定STP区域名称

instance 1 vlan 10                    #创建实例1,并指定VLAN 10

instance 2 vlan 20

active region-configuration           #应用配置:使上面的配置生效

设置根桥

vlan 10实例(也就是instance 1) 的根桥设置:

[sw4]stp instance 1 root primary           #设置sw4的实例1的主根桥

[sw5]stp instance 1 root secondary         #设置sw5的实例1的备用根桥


vlan 20实例(也就是instance 2) 的根桥设置:

[sw4]stp instance 2 root secondary         #设置sw4的实例2的备用根桥

[sw5]stp instance 2 root primary           #设置sw5的实例2的主根桥

MSTP其他常用命令

stp instance 0 priority 81       #设置优先级

display stp brief                #查看端口状态

display stp region-configurat    #查看MSTP实例和VLAN的映射关系

display stp instance 1           #查看实例1的状态信息

display stp instance 1 br        #查看MSTP实例1端口角色
posted @ 2023-09-05 23:47  姬雨晨  阅读(62)  评论(0编辑  收藏  举报