FHRP (HSRP,VRRP,GLBP)


HSRP和VRRP都是同时只有一台网关ACTIVE;GLBP是同时多台网关ACTIVE,在冗余的同时实现负载均衡。
若开启Preempt,则HSRP中一个失效的主路由器恢复后,会自动抢占再次成为主路由器(VRRP不论开不开启PREEMPT,都是高优先级的恢复后永远抢占)。所有FHRP中Preempt的作用就是抢占,不论是关系稳定前还是后,只要开启了,高优先级的机器就会抢占为主路由器。对于指定了priority但又没开启Preempt的情况,而PRIORITY又相同的情况,HSRP是根据谁先开机谁是主,VRRP则是根据谁的IP大谁是主。

standby 100 ip 后面不是必须写地址,只要组中有一个机器写了地址,其他机器不写也会和这台写了地址的机器同步。不写组号的standby ip意味着默认组号0.

VRRP必须写全,vrrp 100 ip 1.1.1.3,否则服务无法启用。

HSRP

HSRP中只有1个STANDBY路由器和1个ACTIVE路由器。其他路由器保持在Listen状态。如果没有开启Preempt,那么不论所有路由器怎么变化(ACT路由器DOWN掉使得STANDBY成为新的ACT后,原ACT再恢复上线,原STANDBY还会继续保持ACT状态,不会让位),ACTIVE路由器将永远是ACT。如果保持默认PRIORITY值不改动或取值相同(不开启抢占Preempt),则路由器间依据谁先启动判定角色关系,只有手动设置不同的PRIORITY值后(还要有standby 100 Preempt),才能改变路由器角色。路由器经历的状态历程是:Init -> Listen -> Speak -> Standby -> Active

虚拟网关MAC格式: 0000.0c07.acxx。其中最后的XX表示STANDBY组号,如standby 210 ip 10.10.10.1,则10.10.10.1这个虚拟IP的虚拟MAC将是0000.0c07.acd2。D2=210。standby ip 1.1.1.1 语句会产生默认STANDBY组,组号为0.

ACTIVE路由器会响应虚拟网关的ARP请求,如果有用户使用虚拟网关,它就会代表网关应答该请求,将虚拟网关的MAC告知用户;同样的,如果用户向虚拟网关的MAC发送数据,ACTIVE路由器就会主动接收。

配置时需要注意将Active路由器定义为Spanning tree Vlan的ROOT,否则会出现次优路径,因为传给STANDBY或其他路由器的信息最终还会再传给ACTIVE路由器,多余。

standby 100 preempt delay mini 250的作用是在路由器启动后250秒在进行hsrp抢占,这样可以使路由器在充分获取路由表内容,全网稳定后再抢占,网络更稳定。

standby 100 track fa1/1 20 是针对HSRP路由器上行接口的监控式自动优先级控制,如果所监控的FA1/1口坏掉,则自动将自己的优先级降低20,当FA1/1恢复后,再涨回20。这样就实现了对特定接口具有更优化的HSRP选择。如果F1/1后面没写20,什么都没写,则默认值为10。

VRRP

VRRP中只有1台ACTIVE路由器(只有ACT路由器发HELLO),其他都是STANDBY路由器。这个VRRP组可以用VIP,也可以是其ACTIVE上的真实IP。

VRRP 要写全IP,vrrp 100 ip 1.1.1.3,不能像HSRP那样只写到standby 100 ip。
VRRP初始化时不需开启抢占就可以依靠PRIORITY竞争MASTER角色。如果PRIORITY高的MASTER突然坏死,BACKUP成为MASTER,则当坏死的MASTER恢复回来后,会夺回它MASTER的位置。Preempt是真正用于机器全部正常工作条件下抢占MASTER角色的。

GLBP

可以在冗余网关的同时最大效率利用所有路由器资源,做到负载均衡。组成为1个AVG,N个AVF。VIP地址和AVG和AVG的真实IP不同。

AVG(Active Virtual Gateway): 由GLBP组成员选举得出1个AVG,负责为其组成员分配虚拟MAC。AVG同时也是AVF,它也要负责应答。

AVF(Active Virtual Forwarder): 由选举出的AVG分配其虚拟MAC,当用户访问VIP时,会得到不同的AVF的虚拟MAC作为ARP应答,这样就实现了依据策略的发往不同网关的负载均衡。默认情况下为ROUND ROBIN。AVF路由器处于listen state。

虚拟网关MAC格式: 0007.b400.xxyy。XX为GLBP组号,YY基于虚拟MAC递增。

GLBP的TRACK是依据TRACK OBJECT跟踪的,track 20 interface f0/0 line-protocol定义了F0/0接口状态为TRACK的OBJECT 20。

track 20 interface f0/0 line-protocol
track 21 interface f0/1 line-protocol
glbp 10 weighting 110 lower 85 upper 105
glbp 10 weighting track 20 decrement 10 (没写decrement的话默认减少10)
glbp 10 weighting track 20 decrement 20

此GLBP规则中加权初始值是110,当F0/0和F0/1都DOWN掉后,会减少10+20=30,使得加权值为80小于最低门限85,这时此路由器就会停止GLBP服务,若F0/0或F0/1中单独任何一个恢复上线,其加权值均不能大于105,只有F0/0和F0/1同时上线时,此路由器才会恢复GLBP的转发服务。

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s