设为首页收藏本站language 语言切换
查看: 2292|回复: 6
收起左侧

[分享] 思科设备配置新手篇--HSRP热备份路由器协议

[复制链接]
 成长值: 63775
发表于 2018-12-27 10:31:31 | 显示全部楼层 |阅读模式
简介
HSRP(Hot StandbyRouter Protocol 热备份路由器协议)是Cisco的专有协议。HSRP把多台路由器组成一个“热备份组”,形成一个虚拟路由器。这个组内只有一个路由器是Active(活动)的,并由它来转发数据包,如果活动路由器发生了故障,备份路由器将成为活动路由器。从网络内的主机来看,网关并没有改变。

HSRP的工作过程
HSRP路由器利用Hello包来互相监听各自的存在。当路由器长时间没有接收到Hello包时,就认为活动路由器故障,备份路由器就会成为活动路由器。HSRP协议利用优先级决定哪个路由器成为活动路由器。如果一个路由器的优先级比其它路由器的优先级高,则该路由器成为活动路由器。路由器的默认优先级是100。在一个组中,最多有一个活动路由器和一个备份路由器。HSRP路由器发送的组播(224.0.0.2)消息有以下三种:
Hello:通知其它路由器发送者的HSRP优先级和状态信息,HSRP路由器默认每3秒发送一个Hello消息。
Coup:当一个备用路由器变为一个活动路由器时发送一个Coup消息。
Resign:当活动路由器要当机或者当有优先级更高的路由器发送Hello消息时,主动发送一个Resign消息。

HSRP路由器的6中状态:
1.Initial:HSRP启动时的状态,HSRP还没有运行,一般是在改变配置或端口刚刚启动时进入该状态。
2.Learn:在该状态下,路由器还没有决定虚拟IP地址,也没有看到认证的、来自活动路由器的Hello报文。路由器仍在等待活动路由器发来的Hello报文。
3.Listen:路由器已经得到了虚拟IP地址,但是它既不是活动路由器也不是等待路由器。它一直监听从活动路由器和等待路由器发来的Hello报文。
4.Speak:在该状态下,路由器定期发送Hello报文,并且积极参加活动路由器或等待路由器的竞选。如果选出活动路由和等待路由,则变成监听状态(Listen)。而此时只有活动路由器和等待路由处于说话状态。
5.Standby:处于该状态的路由器是下一个候选的活动路由器,它定时发送Hello报文。
6.Active:处于活动状态的路由器承担转发数据包的任务,这些数据包是发给该组的虚拟MAC地址的。它定时发出Hello报文。

HSRP的2个定时器
HSRP使用2个定时器:
Hello间隔和Hold时间。默认Hello间隔是3秒,默认的Hold间隔是10秒。Hello间隔定义了两组路由器之间交换信息的频率。Hlod间隔定义了经过多长时间后,没有收到其它路由器的信息,则活动路由器或者备用路由器就会被宣告为失败。配置计时器并不是越小越好,虽然计时器越小则切换时间越短。计时器的配置需要和STP等的切换时间相一致。
另外,Hold间隔最少应该是Hello间隔的3倍。

1.jpg

在路由器和三层交换机上都可以配置HSRP,这里是在路由器R1和R3上配置

命令:

R1(config-if)#standby1 ip 192.168.13.254
//启用HSRP功能,创建standby组1,并设置虚拟网关IP地址
R1(config-if)#standbypriority 120
//设置HSRP的优先级,该值大的会抢占成Active路由器,默认为100
R1(config-if)#standby1 preempt      
//设置允许在该路由器优先级是最高时抢占为活动路由器
R1(config-if)#standby1 timers 3 10      
//设置Hellotime为3秒,Holdtime为10秒,默认即为该值
R1(config-if)#standby1 authentication md5 key-string cisco       //配置认证密码
R1(config-if)#standby1 track s0/0 30        //配置端口跟踪

备注:
①相同组号的路由器属于同一个HSRP组,所有属于同一个HSRP组的路由器的虚拟IP地址必须一致。
②“standby 1 preempt”命令:
  1>如果不配置该命令,即使该路由器优先级再高,也不会成为Active路由;
  2>如果再配置“standby 1 preempt delayminimum 1000”命令,则会延时1000毫秒才进行抢占。
③Hellotime:路由器每间隔多长时间发送Hello信息;Holdtime:在多长时间内同组的其它路由器没有收到活动路由器的信息,则认为活动路由器发生故障;如果要更改默认值,所有同HSRP组的路由器该项设置必须一致。
④配置认证密码为了防止非法设备加入到HSRP组,并且同HSRP组的密码必须一致。
⑤端口跟踪:如果试验中没有配置s0/0的端口跟踪,当R1的s0/0接口出现问题,R1将没有到达R2的Loopback0接口所在网段的路由。然而R1和R3之间的以太网仍然没有问题,HSRP的Hello包正常发送和接收。因此R1仍然是虚拟网关192.168.13.254的活动路由器,Server的数据仍会发送给R1,这样会造成Server无法ping通R2的Loopback接口。当配置路由跟踪后,端口跟踪使得R1发现s0/0上的链路出现问题后,把自己的优先级(我们设置的为120)减去一个数字(我们设置的为30),成为了90。由于R3的优先级为默认值100,这样R3就成为了活动路由器,Server的数据包将发往R3。降低的值应该选取合适的值,使得其他路由器能成为活动路由器。
⑥可以使用“standby 1 mac-address”命令修改虚拟MAC地址,系统默认的MAC地址为“0000.0c07.acXX”,XX”为HSRP的组号。
⑦可以使用“standby 1 name”命令设置HSRP组1的名字,如果没有设置,系统将自动生成。
⑧由于HSRP的两个版本version1和version2不兼容,可以使用“standby version”命令设置HSRP的版本。

配置IP地址及路由:
R1(config)#int f1/0
R1(config-if)#ip add192.168.13.1 255.255.255.0
R1(config-if)#no sh
R1(config)#int s0/0
R1(config-if)#ip add192.168.12.1 255.255.255.0
R1(config-if)#no sh
R1(config)#router rip
R1(config-router)#network192.168.12.0
R1(config-router)#network192.168.13.0
R1(config-router)#passive-interfacef1/0        //防止从该接口发送RIP信息给R3

R2(config)#int lo0
R2(config-if)#ip add192.168.2.2 255.255.255.0
R2(config)#int s0/0
R2(config-if)#ip add192.168.12.2 255.255.255.0
R2(config-if)#clockrate 128000
R2(config-if)#no sh
R2(config)#int s0/1
R2(config-if)#ip add192.168.23.2 255.255.255.0
R2(config-if)#clockrate 128000
R2(config-if)#no sh
R2(config)#router rip
R2(config-router)#network192.168.2.0
R2(config-router)#network192.168.12.0
R2(config-router)#network192.168.23.0

R3(config)#int f1/0
R3(config-if)#ip add192.168.13.3 255.255.255.0
R3(config-if)#no sh
R3(config)#int s0/1
R3(config-if)#ip add192.168.23.3 255.255.255.0
R3(config-if)#no sh
R3(config)#router rip
R3(config-router)#network192.168.23.0
R3(config-router)#network192.168.13.0
R3(config-router)#passive-interfacef1/0

配置HSRP:
R1(config)#int f1/0
R1(config-if)#standby1 ip 192.168.13.254
R1(config-if)#standbypriority 120
R1(config-if)#standby1 preempt
R1(config-if)#standby1 timers 3 10
R1(config-if)#standby1 authentication md5 key-string cisco
R1(config-if)#standby1 track s0/0 30

R3(config)#int f1/0
R3(config-if)#standby1 ip 192.168.13.254
R3(config-if)#standby1 preempt
R3(config-if)#standby1 timers 3 10
R3(config-if)#standby1 authentication md5 key-string cisco

R1(config-if)#standby1 track s0/0 30


发表于 2018-12-27 11:34:28 | 显示全部楼层
感谢楼主分享!
沙发 2018-12-27 11:34:28 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2018-12-27 12:06:03 | 显示全部楼层
感謝喬幫主!
板凳 2018-12-27 12:06:03 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-27 15:25 , Processed in 0.058438 second(s), 24 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表