HSRP+PVSTP+综合实验
目的:实现冗余和负载,用于多生成树(多个vlan)
多生成树指定vlan的根交换机,阻塞指定端口,实现链路负载均衡
HRSP通过设置不同vlan的活跃路由和备份路由,实现vlan 10\vlan 20的虚拟路由器,从而达到冗余效果。
二层交换机
创建vlan并将对应接口加入到vlan,与三层交换机相连的链路设置为trunk模式
Switch>en
Switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#vlan 10
Switch(config-vlan)#exit
Switch(config)#vlan 20
Switch(config-vlan)#exit
Switch(config)#int f0/1
Switch(config-if)#sw mode acc
Switch(config-if)#sw acc vlan 10
Switch(config-if)#exit
Switch(config)#int f0/2
Switch(config-if)#sw mode acc
Switch(config-if)#sw acc vlan 20
Switch(config-if)#exit
Switch(config)#int range f0/3-4
Switch(config-if-range)#sw mode trunk
Switch(config-if-range)#exit
Switch(config)#
三层交换机0
开启路由功能、创建vlan 将接口加入到vlan、配置虚接口IP地址,与二层交换机相连链路设置为trunk模式,要提前将该链路配置为标准帧,指定根交换机,创建活跃和备份路由器,配置端口追踪
活跃路由器配置占先是因为当路由器坏了,重新启用后可以占先作为活跃路由器
备份路由器配置占先是因为当活跃路由器优先级降低,低于了备份路由器,备份路由器可以启用起来配置端口追踪,需要在备份路由配置占先,不然就算优先级减掉10,备份路由器依然无法称为活跃路由
端口追踪原理:当发现接口关闭,将该设备优先级减掉10
Switch>en
Switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
/* 开启路由功能 */
Switch(config)#ip routing
Switch(config)#vlan 10
Switch(config-vlan)#exit
Switch(config)#vlan 20
Switch(config-vlan)#exit
Switch(config)#int f0/3
/* 将该链路封装为标准帧格式 */
Switch(config-if)#sw trunk encapsulation dot1q
Switch(config-if)#sw mode trunk
Switch(config-if)#exit
Switch(config)#int f0/1
Switch(config-if)#sw trunk encapsulation dot1q
Switch(config-if)#sw mode trunk
Switch(config-if)#exit
/* 配置虚接口IP地址 */
Switch(config)#int vlan 10
Switch(config-if)#ip add 192.168.10.254 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#int vlan 20
Switch(config-if)#ip add 192.168.20.254 255.255.255.0
Switch(config-if)#no shutdown
/* 配置路由接口IP,关闭交换接口 */
Switch(config-if)#int f0/24
Switch(config-if)#no switchport
Switch(config-if)#ip add 10.10.10.1 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
/* 配置vlan 10根交换机,通过设置优先级来确定 */
Switch(config)#spanning-tree vlan 10
Switch(config)#spanning-tree vlan 10 priority 4096
/* 配置vlan 10活跃和备份路由,两者均需设置占先 */
Switch(config)#int vlan 10
Switch(config-if)#standby 11 ip 192.168.10.250
Switch(config-if)#standby 11 priority 200
Switch(config-if)#standby 11 preempt
Switch(config-if)#exit
/* 配置vlan 10端口追踪 当检测到该接口关闭,会自动切换到备用路由 */
Switch(config)#int vlan 10
Switch(config-if)#standby 11 track f0/24
Switch(config-if)#exit
/* 配置vlan 20活跃和备份路由,两者均需设置占先 */
Switch(config)#int vlan 20
Switch(config-if)#standby 12 ip 192.168.20.250
Switch(config-if)#standby 12 priority 150
Switch(config-if)#exit
/* 配置静态路由 */
Switch(config)#ip route 30.30.30.0 255.255.255.0 f0/24
Switch(config)#exit
三层交换机1
Switch>en
Switch#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)#ip routing
Switch(config)#vlan 10
Switch(config-vlan)#exit
Switch(config)#vlan 20
Switch(config-vlan)#exit
Switch(config)#int f0/4
Switch(config-if)#sw trunk encapsulation dot1q
Switch(config-if)#sw mode trunk
Switch(config-if)#exit
Switch(config)#int f0/1
Switch(config-if)#sw trunk encapsulation dot1q
Switch(config-if)#sw mode trunk
Switch(config-if)#exit
Switch(config)#int vlan 10
Switch(config-if)#ip add 192.168.10.253 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#int vlan 20
Switch(config-if)#ip add 192.168.20.253 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#int f0/24
Switch(config-if)#no switchport
Switch(config-if)#ip add 20.20.20.1 255.255.255.0
Switch(config-if)#no shutdown
Switch(config-if)#exit
Switch(config)#spanning-tree vlan 20
Switch(config)#spanning-tree vlan 20 priority 4096
Switch(config)#int vlan 10
Switch(config-if)#standby 11 ip 192.168.10.250
Switch(config-if)#standby 11 priority 150
Switch(config-if)#standby 11 preempt
Switch(config-if)#exit
Switch(config)#int vlan 20
Switch(config-if)#standby 12 ip 192.168.20.250
Switch(config-if)#standby 12 priority 200
Switch(config-if)#standby 12 preempt
Switch(config-if)#exit
Switch(config)#int vlan 20
Switch(config-if)#standby 12 track f0/24
Switch(config-if)#exit
Switch(config)#ip route 30.30.30.0 255.255.255.0 f0/24
Switch(config)#exit
路由器
Router>en
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#int g0/0
Router(config-if)#ip add 10.10.10.254 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#int g0/1
Router(config-if)#ip add 20.20.20.254 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#int g0/2
Router(config-if)#ip add 30.30.30.254 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#ip route 0.0.0.0 0.0.0.0 10.10.10.1
Router(config)#ip route 0.0.0.0 0.0.0.0 20.20.20.1
Router(config)#
验证
三层交换机0是VLAN10的生成树
三层交换机1是VLAN20的生成树
三层交换机0是VLAN10的活跃路由,VLAN 20的备份路由
三层交换机1是VLAN20的活跃路由,VLAN 10的备份路由
Vlan10生成树阻塞的是三层交换机1 的f0/4
Vlan 10数据流向
Vlan20生成树阻塞的是三层交换机0 的f0/3
Vlan 20数据流向
配置IP验证通信
PC0 Ping PC2
验证备份路由是否生效(以vlan 10为例)
验证端口追踪是否生效
当在三层交换机0上将接口关闭后
三层交换机1上将vlan 10从备用转为活跃路由