一、实验原理:

HSRP协议利用一个优先级方案来决定哪个配置了HSRP协议的路由器成为默认的主动路由器。如果一个路由器的优先级设置得比所有其他路由器的优先级高,则该路由器成为主动路由器。路由器的缺省优先级是100,所以如果只设置一个路由器的优先级高于100,则该路由器将成为主动路由器。 

通过在设置了HSRP协议的路由器之间广播HSRP优先级,HSRP协议选出当前的主动路由器。当在预先设定的一段(Hold Time 缺省为10秒)时间内主动路由器不能发送hello消息,或者说HSRP检测不到主动路由器的hello消息时,将认为主动路由器有故障,这时HSRP会选择优先级最高的备用路由器变为主动路由器,同时将按HSRP优先级在配置了HSRP的路由器中再选择一台路由器作为新的备用路由器。

所有参与HSRP的路由器共享一个虚的IP地址,网络中的工作站将缺省网关指向该虚地址,被选出的主动路由器负责转发由工作站发到虚地址的数据包。

Hello消息是基于UDP的信息包,配置了HSRP的路由器将会周期性的广播Hello消息包,并利用Hello消息包来选择主动路由器和备用路由器及判断路由器是否失效。

如图所示,PC将数据包发送到设置的缺省网关(配置HSRP路由器所共享的虚拟IP地址),假设图中的7609设置了较高的优先级,7609将被选为主动路由器,并负责转发网络中所有由PC发送到其网关(HSRP地址)的数据包。当7609发生故障时,7609就不会广播Hello信息包,HSRP如果经过Hold Time还未收到来自7609的Hello信息包,将认为7609实效,这时HSRP将选择备用的5500作为主动路由器,并由5500来负责转发网络中所有由PC发送到其网关(HSRP地址)的数据包。而当7609恢复后,将继续发送Hello信息包,HSRP检测到其发送的Hello信息包具有高的优先级,则会重新将7609选为主动路由器,5500则仍将恢复成为备用路由器。

配置了HSRP协议的路由器交换以下三种多点广播消息: 

● Hello──hello消息通知其他路由器,发送路由器的HSRP优先级和状态信息,HSRP路由器默认为每3秒钟发送一个hello消息; 

● Coup──当一个备用路由器变为一个主动路由器时发送一个coup消息; 

● Resign──当主动路由器要宕机或者当有优先级更高的路由器发送hello消息时,主动路由器发送一个resign消息。 

在任一时刻,配置了HSRP协议的路由器处于由以下六种状态: 

● Initial ——表示路由器的HSRP还未运行,一般在配置第一台HSRP路由器时会显示此状态;

● Learn——表示配置HSRP的路由器还未知道虚地址,并一直监听来自主动路由器的消息包;

● Listening──表示配置HSRP的路由器还已知道虚地址,路由器还在监听hello消息;

● Speaking and listening──路由器正在发送和监听hello消息; 

● Standby──处于被用状态,当主动路由器失效时路由器可被选为主动路由器,接管包转发功能;

● Active──路由器执行包转发功能。

二、实验拓扑:

wps_clip_image-6762

 

 

三、参考配置:

R1配置:

Router(config)#hostname R1

R1(config)#interface fastEthernet 0/0.10

R1(config-subif)#encapsulation dot1Q 10

R1(config-subif)#ip address 192.168.10.1 255.255.255.0

R1(config-subif)#standby 10 ip 192.168.10.254
R1(config-subif)#standby 10 priority 120
R1(config-subif)#standby 10 preempt

R1(config)#interface fastEthernet 0/0.20

R1(config-subif)#encapsulation dot1Q 20

R1(config-subif)#ip address 192.168.20.1 255.255.255.0

R1(config-subif)#standby 20 ip 192.168.20.254

R2配置:

Router(config)#hostname R2

R2(config)#interface fastEthernet 0/0.10

R2(config-subif)#encapsulation dot1Q 10

R2(config-subif)#ip address 192.168.10.2 255.255.255.0

R2(config-subif)#standby 10 ip 192.168.10.254

R2(config)#interface fastEthernet 0/0.20

R2(config-subif)#encapsulation dot1Q 20

R2(config-subif)#ip address 192.168.20.2 255.255.255.0

R2(config-subif)#standby 20 ip 192.168.20.254
R2(config-subif)#standby 20 priority 120
R2(config-subif)#standby 20 preempt

SW1配置:

Router(config)#hostname sw1

sw1(config)#lin console 0

sw1(config-line)#logg synchronous

sw1(config-line)#no exec-timeout

sw1(config-line)#exit

sw1#vlan database

sw1(vlan)#vlan 10

sw1(vlan)#vlan 20

sw1(vlan)#exit

sw1(config)#interface range fastEthernet 0/3 – 5

sw1(config-if-range)#switchport mode access

sw1(config-if-range)#switchport access vlan 10

sw1(config-if-range)#exit

sw1(config)#interface range fastEthernet 0/6 – 10

sw1(config-if-range)#switchport mode access

sw1(config-if-range)#switchport access vlan 20

sw1(config-if-range)#exit

sw1(config)#interface fastEthernet 0/0

sw1(config-if)#switchport mode trunk

sw1(config)#interface fastEthernet 0/1

sw1(config-if)#switchport mode trunk

sw1(config-if)#channel-group 1 mode on

sw1(config)#interface fastEthernet 0/2

sw1(config-if)#switchport mode trunk

sw1(config-if)#channel-group 1 mode on

SW2配置:

Router(config)#hostname sw1

sw2(config)#lin console 0

sw2(config-line)#logg synchronous

sw2(config-line)#no exec-timeout

sw2(config-line)#exit

sw2#vlan database

sw2(vlan)#vlan 10

sw2(vlan)#vlan 20

sw2(vlan)#exit

sw2(config)#interface range fastEthernet 0/3 – 5

sw2(config-if-range)#switchport mode access

sw2(config-if-range)#switchport access vlan 10

sw2(config-if-range)#exit

sw2(config)#interface range fastEthernet 0/6 – 10

sw2(config-if-range)#switchport mode access

sw2(config-if-range)#switchport access vlan 20

sw2(config-if-range)#exit

sw2(config)#interface fastEthernet 0/0

sw2(config-if)#switchport mode trunk

sw2(config)#interface fastEthernet 0/1

sw2(config-if)#switchport mode trunk

sw2(config-if)#channel-group 1 mode on

sw2(config)#interface fastEthernet 0/2

sw2(config-if)#switchport mode trunk

sw2(config-if)#channel-group 1 mode on

四、测试结果:

vlan10主机地址

wps_clip_image-6954

vlan20主机地址

wps_clip_image-394

vlan10主机ping vlan20主机

wps_clip_image-17994

vlan20主机ping vlan10主机

wps_clip_image-26267