最新消息:

网关冗余技术之HSRP

Cisco admin 3408浏览 0评论

网关冗余技术之HSRP       原创:wildlee

在生产网络环境中,为了实现网络的高可靠可用性,我们经常做一些线路冗余、端口冗余、设备冗余、电源冗余等等,从而将整个网络的故障时间减小到最少。主机系统有个比较现实的问题就是首跳网关且被用来路由的只有一个,当配置到主机中的网关DOWN掉,而它不能动态发现并切换至其它网关。为了能让主机系统不间断通信,我们必须要有相应的解决方案。现有的技术中能解决其网关冗余问题的,其VRRP技术与HSRP技术可以说是代表。

由于主机系统并不是那么智能,只能使用一个网关,所以我们可以针对路由器提出解决之道,我们可以使用一种策略,让多个冗余路由器协作并为主机提供一个虚似网关[一个ip一个MAC],这基本是网关冗余的一种核心思想。这种技术从正面讲是为主机系统提供一种不间断网络服务提供保证,从反面讲是路由器合伙对主机系统的一种欺骗,因为真实转发数据的网关的在不同路由器间的切换,对于主机系统是透明的,主机系统无法感知的。

HSRP是网关冗余技术其中之一,它是思科的私有的协议。为了实现网关冗余,多个路由器组成HSRP组。为了转发主机的报文,HSRP组中的路由器承担着不同的角色并互相协调工作,其角色分别为活动路由器,备份路由器,候补HSRP路由器。一个HSRP组中将选举出一个活动路由器,一个备份路由器,候补路由器可以有多个。活动路由器负责转发所有用户的数据。HSRP最多可以创建255个组。HSRP组成员使用UDP协议通信,其端口号为1985,HSRP通信报文的TTL值为1。在初启动或抢占模式下HSRP组中优先级高的路由器被最先选择为活动路由路由器,如果优先级一样,有最高ip地址者被选为活动路由器。通过我对HSRP协议的分析,HSRP有两种报文,一种是通告报文[advertise],一种是消息报文[hello]。参于HSRP协议工作的路由器有六种状态可言,initial状态.learn状态.speak状态.listen状态.standby状态.active状态,下面我将以这六种状态为主线,分析HSRP原理。

深入分析HSRP工作原理

1. initial状态

参于到HSRP组工作的路由器都会经历这种状态,被某接口被配置了HSRP其接口为DOWN的时候,这时hsrp处于initial状态,代表HSRP没有工作。

2.learn状态

并不是所有HSRP组中成员都经历这个状态,只有当HSRP组中的成员没有配置虚似IP地址的时候才会经历这种状态。该状态路由器不知道HSRP组中的虚似IP地址,所以它监听活动路由器的HELLO报文并学习其中虚似IP地址。当一个没有配置虚似IP的HSRP组成员其接口从DOWN状态变成UP的时候,HSRP状态为learn状态.

3. listen状态

参于到HSRP组工作的路由器都会经历这种状态,这里分两种情况来说。

(1)在HSRP组中成员配置了虚似ip的情况下,当一个接口从DOWN状态变成UP的时候,HSRP状态为listen状态,它知道当前的虚似IP地址是什么[虚似网关]但它并不知道HSRP组中的活动路由器是谁,备份路由器又是谁,所以紧接着它准备进入speak状态,参于活动路由器与备用路由器选举。

(2)候补路由器会一直处于这个状态,候补路由器监听活动路由器与备用路由器的发送的hello信息。如果在一个保持时间[holdtime]内没有收到备份路由器的hello信息、一个备份路由器变成活动路由器、一个备份路由器发送了advertise(state dromant)报文,候补路由器都会在一次进行speak发言争取备份路由器的位置。

4. speak状态

speak状态主要用来竞选活动路由器与备份路由器,HELLO信息类型为speak的报文发送四次,其报文内容如图。

HSRP组中的成员需要进行speak发言分为以下三种情况。

(1) 当HSRP组中所有路由器初次启动的时候,所以HSRP组成员发送speak报文竞选。这里有优先选择活动路由器的条件,其优先级最高者被选择为活动路由器,次优先级被选择为备份路由器。如果优先级一样,那么拥有最高ip地址者被选择为活动路由器,次高的ip地址被选举为备份路由器,其它均为候补路由器。

(2) HSRP组中已选举出活动路由器与备份路由器,当HSRP组中有新成员加入的时候,该成员会进行speak发言,此时注意,如果新加入的HSRP组成员优先级比备份路由器的优先高,那么备份路由器会自动让贤。结论是不论何时优先高的候补路由器总会抢占备用路由器的位置,但不会抢占活动路由器的位置。

(3) 工作于HSRP组中的活动路由器或备份路由器发生角色变化时,如在一个保持时间[holdtime]内没有收到备份路由器的hello信息、一个备份路由器变成活动路由器、一个备份路由器发送了advertise(state dromant)报文等,都将触发候补路由器发送speak报文竞选备份路由器。当活动路由器DOWN掉的时候,备份路由器直接切换到活动路由器角色,不用在通过speak选举。

5.standby状态

经过了speak状态,HSRP组中将产生活动路由器与备份路由器。HSRP组中的选举出来的备份路由器会一直处于这种状态。工作于standby状态中的路由器在每个hello间隔都要发送一个hello(state standby),其报文源MAC是备份路由器设备真实的MAC地址,目标MAC是组播MAC[01:00:5E:00:00:xx];源IP是备份路由器设备真实IP,目标IP是组播地址224.0.0.2。报文如下图。此HELLO信息是能够保持备用路由器角色的一种保证。

6.active状态

HSRP组中选举出来的活动路由器一直处于这种状态。活动路由器在每个HELLO间隔内发送一个HELLO(state active)报文,其报文原MAC是虚似网关的MAC[00:00:0C:07:AC:XX],目标MAC地址是一个组播的MAC[01:00:5E:00:00:xx],源IP是活动路由器的IP地址,而目标IP是一个组播地址224.0.0.2。这种报文作用是,是活动路由器一种角色的保证,担负着对主机的IP分组转发,不间断更新的这种报文也让交换机在HSRP变更活动路由器的时候,让交换机快速学习到虚似网关对应的接口。活动路由器负责对主机对虚似网关的ARP请求进行应答。报文如下图。

HSRP通信报文

1. 当同一个HSRP组中同时出现了两个活动路由器,优先级高的路由器会发送一种COUP报文,指明自己是活动路由器。

2. HSRP组中除了活动路由器之外,其它HSRP组成员路由器会定时发送advertise(state passive)报文,通告自己。

3. 在HSRP中一个抢占模式。当HSRP组中的成员工作于抢占模式的时候,无论何时,只要发现活动路由器优先级比自己低,那么将发送coup信息报文,用来抢占活动路由器这一角色。[此抢占优先级只会比较配置的优先级,而不会比较ip地址]

然后会发送一个通告报文。

4.当一个工作于HSRP组中的备份路由器退出HSRP工作时。

5.当一个工作于HSRP组中的活动路由器退出HSRP工作时。

HSRP常用配置

standby 10 ip 192.168.1.5

创建一个HSRP组,并配置虚似网关的ip地址

standby 10 authentication md5 wildlee

为HSRP组配置一个HSRP验证

Standby 10 timers 3 10

配置hello消息的时间间隔与保持时间,单位是s.

Standby 10 priority 150

为HSRP组成员配置一个优先级别,默认是100.

Standby 10 preempt

让组成员工作于抢占模式下,活动路由器总是优先级最高的。

Standby 10 track  type interface priority

验证上行链路的连通性并动态调改优先级。

Show standby berif

查看HSRP组情况

Debug standby

调试HSRP

HSRP要点

1.HSRP在接口模式下配置,其虚似网关是手工指定的,而虚似网关的MAC是00:00:0C:07:AC:XX,xx是HSRP配置的组号,同一个路由器可以配置为多个HSRP组中的成员。

2.HSRP组中的成员工作于抢占模式下,其优先级高的路由器会发送突变[COUP]报文,争抢活动路由器这一角色;工作于非抢占模式下同时出现两个活动路由器,其优先级高的路由器会发送突变报文[COUP]报文,争抢活动路由器这一角色;当一个活动路由器主动辞去活动路由器这一角色的情况下或异常中断的情况下,备份路由器切换成活动路由器不会发送COUP报文。

3.只有活动路由器正常退出HSRP 工作,才会发送Resign辞职报文,这种情况下备份路由器会迅速切换到活动路由器这一角色。异常退出的情况下,只有一个保持时间过去,备份路由器才会切换到活动路由器这一角色。

4.主机系统收到一个无故ARP,主机系统不会学习其无故ARP报文的MAC对应的ip。无故ARP只是检测ip冲突的一种工具。Windows与Cisco无故ARP报文格式有区别,Cisco无故ARP报文,在ARP报文字段其目标MAC是广播ff:ff:ff:ff:ff:ff,而Windows是全00:00:00:00:00:00。

5.当HSRP组中的备份路由器从其它接口收到ip分组目标地址是一个启用了HSRP的接口,不会丢弃该报文会进行转发,用源地址是自己的MAC地址。[用OSI标准来参考:目标主机对于收到的二层不匹配帧,对于高层透明不可见,不会隐响通信]

wildlee博客

转载请注明:爱开源 » 网关冗余技术之HSRP

您必须 登录 才能发表评论!