隨著Internet的日益普及,人們對網(wǎng)絡(luò)的依賴性也越來越強。這同時對網(wǎng)絡(luò)的穩(wěn)定性提出了更高的要求,人們自然想到了基于設(shè)備的備份結(jié)構(gòu),就像在服務(wù)器中為提高數(shù)據(jù)的安全性而采用雙硬盤結(jié)構(gòu)一樣。路由器是整個網(wǎng)絡(luò)的核心和心臟,如果路由器發(fā)生致命性的故障,將導(dǎo)致本地網(wǎng)絡(luò)的癱瘓,如果是骨干路由器,影響的范圍將更大,所造成的損失也是難以估計的。因此,對路由器采用熱備份是提高網(wǎng)絡(luò)可靠性的必然選擇。在一個路由器完全不能工作的情況下,它的全部功能便被系統(tǒng)中的另一個備份路由器完全接管,直至出現(xiàn)問題的路由器恢復(fù)正常,這就是hsrp(熱備份路由協(xié)議)技術(shù)要解決的問題。
hsrp是Cisco對冗余的私有協(xié)議。它提供幾乎100%的路由器可用性和冗余。所以,如果某臺路由器發(fā)生故障,備份路由器會接管主路由器的路由功能。
hsrp的工作原理
實現(xiàn)hsrp的條件是系統(tǒng)中有多臺路由器,它們組成一個“熱備份組”,這個組形成一個虛擬路由器。在任一時刻,一個組內(nèi)只有一個路由器是活動的,并由它來轉(zhuǎn)發(fā)數(shù)據(jù)包,如果活動路由器發(fā)生了故障,將選擇一個備份路由器來替代活動路由器,但是在本網(wǎng)絡(luò)內(nèi)的主機看來,虛擬路由器沒有改變。所以主機仍然保持連接,沒有受到故障的影響,這樣就較好地解決了路由器切換的問題。
為了減少網(wǎng)絡(luò)的數(shù)據(jù)流量,在設(shè)置完活動路由器和備份路由器之后,只有活動路由器和備份路由器定時發(fā)送hsrp報文。如果活動路由器失效,備份路由器將接管成為活動路由器。如果備份路由器失效或者變成了活動路由器,將有另外的路由器被選為備份路由器。
在實際的一個特定的局域網(wǎng)中,可能有多個熱備份組并存或重疊。每個熱備份組模仿一個虛擬路由器工作,它有一個Well-known-MAC地址和一個IP地址。該IP地址、組內(nèi)路由器的接口地址、主機在同一個子網(wǎng)內(nèi),但是不能一樣。當在一個局域網(wǎng)上有多個熱備份組存在時,把主機分布到不同的熱備份組,可以使負載得到分擔。
hsrp協(xié)議利用一個優(yōu)先級方案來決定哪個配置了hsrp協(xié)議的路由器成為默認的主動路由器。如果一個路由器的優(yōu)先級設(shè)置的比所有其他路由器的優(yōu)先級高,則該路由器成為主動路由器。路由器的缺省優(yōu)先級是100,所以如果只設(shè)置一個路由器的優(yōu)先級高于100,則該路由器將成為主動路由器。
通過在設(shè)置了hsrp協(xié)議的路由器之間廣播hsrp優(yōu)先級,hsrp協(xié)議選出當前的主動路由器。當在預(yù)先設(shè)定的一段時間內(nèi)主動路由器不能發(fā)送hello消息時,優(yōu)先級最高的備用路由器變?yōu)橹鲃勇酚善鳌B酚善髦g的包傳輸對網(wǎng)絡(luò)上的所有主機來說都是透明的。
hsrp應(yīng)用一例
下面,我們結(jié)合一個實例來看一下hsrp的基本配置。網(wǎng)絡(luò)拓撲如下圖。
在我們的樣例網(wǎng)絡(luò)中,我們配置PC的缺省網(wǎng)關(guān)為IP地址10.1.1.3。然而,這個IP地址沒有指向一個真實的設(shè)備;相反,它作為主路由器的虛擬 IP地址。
在使用hsrp的時候,路由器既可以是主的也可以是備用的。如果主路由器在一段時間內(nèi)沒有向備用路由器發(fā)送HELLO數(shù)據(jù)包,備用路由器假定主 路由器已關(guān)閉,從而進行接管。然后備用路由器假定對虛擬IP地址負責,并開始對虛擬IP地址指向的虛擬以太網(wǎng)MAC地址響應(yīng)。
主和備用路由器交換hsrp HELLO包,所以相互知道對方在哪兒。這些HELLO包使用多播224.0.0.2和UDP端口1985。hsrp的最基本形式從IOS 10.0 開始可用,但是在IOS 11和12版本中有更新的特性發(fā)布。
什么決定活動路由器?首先,你可以配置一個優(yōu)先數(shù)來決定它,然后它是由最高的IP地址決定。缺省優(yōu)先數(shù)是100;一個更高的優(yōu)先數(shù)表示優(yōu)先 路由器。
當然,在建立路由器冗余的時候,并不限制于僅僅兩臺路由器。實際上,可以建立一起工作的路由器組并且擁有多個“備用”路由器。
現(xiàn)在,我們考慮樣例網(wǎng)絡(luò)的配置。
路由器1:
(show running-config output)
interface Ethernet0/0
ip address 10.1.1.1 255.255.255.0
standby ip 10.1.1.3
standby preempt
Router1# show standby
Ethernet0/0 - Group 0
State is Active
2 state changes, last state change 00:00:29
Virtual IP address is 10.1.1.3
Active virtual MAC address is 0000.0c07.ac00
Local virtual MAC address is 0000.0c07.ac00 (default)
Hello time 3 sec, hold time 10 sec
Next hello sent in 0.692 secs
Preemption enabled
Active router is local
Standby router is 10.1.1.2, priority 99 (expires in 8.097 sec)
Priority 100 (default 100)
IP redundancy name is "hsrp-Et0/0-0" (default)
路由器 2 :
(show running-config output)
interface Ethernet0/0
ip address 10.1.1.2 255.255.255.0
standby ip 10.1.1.3
standby priority 99
Router2# show standby
Ethernet0/0 - Group 0
Local state is Standby, priority 99
Hellotime 3 sec, holdtime 10 sec
Next hello sent in 1.014
Virtual IP address is 10.1.1.3 configured
Active router is 10.1.1.1, priority 100 expires in 7.159
Standby router is local
4 state changes, last state change 00:02:02
當在特權(quán)模式時,可以使用show standby命令查看hsrp狀態(tài)。這條命令會告訴哪個路由器是活動的,哪個是備份的,以及許多其他統(tǒng)計信息。
在PC上,缺省IP地址應(yīng)該指向10.1.1.3,而不是路由器中的一個。這樣,如果某臺路由器出現(xiàn)故障,另一臺將接管。而且甚至能夠利用這個冗余在白天將活動路由器關(guān)閉,因為hsrp故障備份替換時間少于10秒。
方案的特點:
·高度的可靠性,兩臺路由器之間采用hsrp(熱備份冗余協(xié)議)協(xié)議,來保證兩臺路由器中的任意一臺down掉,或路由器的廣域網(wǎng)口down,都會迅速切換到另外一臺。如果兩條線路均出現(xiàn)問題,則啟用撥號線路。
·充分利用了帶寬資源,而且實現(xiàn)了負載均衡。
·充分利用了多以太口路由器在劃分多業(yè)務(wù)網(wǎng)段上的功能,也只有多以太口路由器在hsrp應(yīng)用中才能實現(xiàn)兩個路由器間的負載分擔,這是具有四個以太口路由器的極大的優(yōu)點。
·通過在交換機上設(shè)置VLAN,有效的控制了兩個子網(wǎng)間的安全。
·不存在單點故障問題。