前言
二层交换机为了破环发明了堆叠,把几台实际的交换机视作一个虚拟的交换机,实现了链路的复用和环路的破坏。那么对应到三层的路由器,我们有 VRRP(Virtual Router Redundancy Protocol)
,它可以让路由器分主备,对外仍被视为一个虚拟的统一的路由器。
1. 整体拓扑
我们整体的拓扑图非常简单,最下面是接入层PC,中间是核心交换机,最上面是出口路由器。我们将首先配置接入交换机,让不同vlan的MAC帧可以被 AccessSW
接收。
我们可以看到拓扑图上,进入核心交换机这一块,都是vlan10,所以我们给连接PC的端口加一个默认vlan:
[AccessSW]undo info-center enable
[AccessSW]vlan 10
[AccessSW-vlan10]quit
[AccessSW]interface GigabitEthernet 0/0/3
[AccessSW-GigabitEthernet0/0/3]port link-type access
[AccessSW-GigabitEthernet0/0/3]port default vlan 10
[AccessSW-GigabitEthernet0/0/3]quit
[AccessSW]interface GigabitEthernet 0/0/1
[AccessSW-GigabitEthernet0/0/1]port link-type trunk
[AccessSW-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[AccessSW-GigabitEthernet0/0/1]quit
[AccessSW]interface GigabitEthernet 0/0/2
[AccessSW-GigabitEthernet0/0/2]port link-type trunk
[AccessSW-GigabitEthernet0/0/2]port trunk allow-pass vlan all
配置 CoreSW1
接下来我们配置 CoreSW1
,这个三层交换机需要配置两个IP:一个IP负责和 CoreSW2
一起复合成虚拟路由;另一个IP则与出口路由器R1
进行通讯。
[CoreSW1]undo info-center enable
[CoreSW1]vlan batch 10 100
[CoreSW1]interface Vlanif 10
[CoreSW1-Vlanif10]ip address 192.168.10.252 24
[CoreSW1-Vlanif10]q
[CoreSW1]interface Vlanif 100
[CoreSW1-Vlanif100]ip address 192.168.100.1 30
[CoreSW1-Vlanif100]q
我们需要把 vlan10 所覆盖的接口都配置成 trunk 类型,然后把2口直连到AR1.
[CoreSW1]interface GigabitEthernet 0/0/1
[CoreSW1-GigabitEthernet0/0/1]port link-type trunk
[CoreSW1-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[CoreSW1-GigabitEthernet0/0/1]q
[CoreSW1]interface GigabitEthernet 0/0/3
[CoreSW1-GigabitEthernet0/0/3]port link-type trunk
[CoreSW1-GigabitEthernet0/0/3]port trunk allow-pass vlan all
[CoreSW1-GigabitEthernet0/0/3]q
[CoreSW1]interface GigabitEthernet 0/0/2
[CoreSW1-GigabitEthernet0/0/2]port link-type access
[CoreSW1-GigabitEthernet0/0/2]port default vlan 100
[CoreSW1-GigabitEthernet0/0/2]q
配置 CoreSW2
同理,我们需要配置第二个核心交换机,我们同样是先配置vlan相关的内容,然后配置接口的帧转发:
[CoreSW2]vlan batch 10 200
[CoreSW2]interface Vlanif 10
[CoreSW2-Vlanif10]ip address 192.168.10.253 24
[CoreSW2-Vlanif10]q
[CoreSW2]interface Vlanif 200
[CoreSW2-Vlanif200]ip address 192.168.200.1 30
[CoreSW2-Vlanif200]q
配置直连口时要注意,默认的vlan是200了。
[CoreSW2]int GigabitEthernet 0/0/1
[CoreSW2-GigabitEthernet0/0/1]port link-type trunk
[CoreSW2-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[CoreSW2-GigabitEthernet0/0/1]q
[CoreSW2]interface GigabitEthernet 0/0/3
[CoreSW2-GigabitEthernet0/0/3]port link-type trunk
[CoreSW2-GigabitEthernet0/0/3]port trunk allow-pass vlan all
[CoreSW2-GigabitEthernet0/0/3]q
[CoreSW2]interface GigabitEthernet 0/0/2
[CoreSW2-GigabitEthernet0/0/2]port link-type access
[CoreSW2-GigabitEthernet0/0/2]port default vlan 200
[CoreSW2-GigabitEthernet0/0/2]q
此时我们 ping CoreSW1
的IP地址应该是能通的:
[CoreSW2]ping 192.168.10.252
PING 192.168.10.252: 56 data bytes, press CTRL_C to break
Reply from 192.168.10.252: bytes=56 Sequence=1 ttl=255 time=70 ms
Reply from 192.168.10.252: bytes=56 Sequence=2 ttl=255 time=60 ms
Reply from 192.168.10.252: bytes=56 Sequence=3 ttl=255 time=50 ms
Reply from 192.168.10.252: bytes=56 Sequence=4 ttl=255 time=80 ms
Reply from 192.168.10.252: bytes=56 Sequence=5 ttl=255 time=60 ms
--- 192.168.10.252 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 50/64/80 ms
配置VRRP
我们要先后在 CoreSW1
和 CoreSW2
上配置 VRRP,让他们的优先级不同(优先级的值越高优先级越大),让1作为主,2作为备。我们首先配置 CoreSW1
:
[CoreSW1]interface Vlanif 10
[CoreSW1-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.1
[CoreSW1-Vlanif10]vrrp vrid 1 priority 120
[CoreSW1-Vlanif10]vrrp vrid 1 preempt-mode timer delay 5
对于 CoreSW2 ,可以简化配置:
[CoreSW2]interface Vlanif 10
[CoreSW2-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.1
如未给出 priority (优先级),默认为 100.
此时,我们可以查看vrrp:
[CoreSW2]display vrrp
Vlanif10 | Virtual Router 1
State : Backup
Virtual IP : 192.168.10.1
Master IP : 192.168.10.252
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
Create time : 2025-04-29 14:17:33 UTC-08:00
Last change time : 2025-04-29 14:17:33 UTC-08:00
<CoreSW1>display vrrp
Vlanif10 | Virtual Router 1
State : Master
Virtual IP : 192.168.10.1
Master IP : 192.168.10.252
PriorityRun : 120
PriorityConfig : 120
MasterPriority : 120
Preempt : YES Delay Time : 5 s
TimerRun : 1 s
TimerConfig : 1 s
Auth type : NONE
Virtual MAC : 0000-5e00-0101
Check TTL : YES
Config type : normal-vrrp
Create time : 2025-04-29 14:16:27 UTC-08:00
Last change time : 2025-04-29 14:16:31 UTC-08:00
我们可以看到,此时1号交换机已经成为主,2号为备。
我们配置PC1的网关为该虚拟IP地址,此时也能通了:
此时与 VRRP
相关的配置就讲解完了,后续我还会配置NAT以及默认路由,感兴趣的可以继续看下去。
配置 AR1 与 AR2
现在我们配置 AR1
与 AR2
,AR2
比较简单,只需要配置一个 IP 地址,我们可以敲击:
[AR2]interface GigabitEthernet 0/0/0
[AR2-GigabitEthernet0/0/0]ip address 10.1.1.1 30
对于 AR1
,我们先配置各接口 IP 地址:
[AR1]interface GigabitEthernet 0/0/1
[AR1-GigabitEthernet0/0/1]ip address 192.168.100.2 30
[AR1]interface GigabitEthernet 0/0/2
[AR1-GigabitEthernet0/0/2]ip address 192.168.200.2 30
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]ip address 100.1.1.2 30
然后,我们用 《【HCIA】4种NAT的配置方式》 中提到的 EasyIP 的方式在出接口,也就是 GE 0/0/0
配置一个NAT:
[AR1]acl 2000
[AR1-acl-basic-2000]rule 5 permit source 192.168.10.0 0.0.0.255
[AR1-acl-basic-2000]rule permit source 192.168.100.0 0.0.0.255
[AR1-acl-basic-2000]rule permit source 192.168.200.0 0.0.0.255
[AR1-acl-basic-2000]quit
[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]nat outbound 2000
ACL 中添加匹配规则时,如不指定序号,则序号默认加5,如下所示:
[AR1-acl-basic-2000]display this
[V200R003C00]
#
acl number 2000
rule 5 permit source 192.168.10.0 0.0.0.255
rule 10 permit source 192.168.100.0 0.0.0.255
rule 15 permit source 192.168.200.0 0.0.0.255
#
return
PC 要能 Ping 通 AR2
在这个例子中,AR2
相当于公网上的路由器,我们现在尝试着 ping 通 AR2
,此时发现超时!超时不要慌,我们跟踪一下链路,看看在哪里断开了?
PC>tracert 100.1.1.1
traceroute to 100.1.1.1, 8 hops max
(ICMP), press Ctrl+C to stop
1 192.168.10.252 47 ms 31 ms 47 ms
2 * * *
3 * * *
4 * * *
5 * * *
6 * * *
7 * * *
8 * * *
发现是到达 PC1
配置的网关地址后,就无法再向前了,应该是被丢弃了。所以我们开始检查 CoreSW1
的路由表:
<CoreSW1>display ip routing-table
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
Destinations : 7 Routes : 7
Destination/Mask Proto Pre Cost Flags NextHop Interface
127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0
127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0
192.168.10.0/24 Direct 0 0 D 192.168.10.252 Vlanif10
192.168.10.1/32 Direct 0 0 D 127.0.0.1 Vlanif10
192.168.10.252/32 Direct 0 0 D 127.0.0.1 Vlanif10
192.168.100.0/30 Direct 0 0 D 192.168.100.1 Vlanif100
192.168.100.1/32 Direct 0 0 D 127.0.0.1 Vlanif100
发现去往 100.1.1.1
确实没有任何路由方式,此时我们可以给它配置静态路由:
<CoreSW1>system-view
[CoreSW1]ip route-static 0.0.0.0 0 192.168.100.2
此时实验完毕,一个更高可用的路由就配置完成了。
后记
老铁们,我们配置完一个设备后,记得ping一下临近的设备,不然有时候ensp模拟器会出奇怪的问题,导致实验失败,而你的配置无任何错误。还有的时候删了设备重新配置,就会得到正确的结果。
文中有任何错误、遗漏,烦请各位老铁在评论区指出,共同学习进步。
修改记录
更新日期 | 修改内容 |
---|---|
2025年4月29日 | 完成初稿 |