一、HSRP簡介
HSRP(Hot Standby Router Protocol 熱備份路由協議)是思科(cisco)私有協議,HSRP就是把多臺路由器組成一個熱備份組,形成一個虛擬路由器。這個組內只有一個路由器是Active(活動)的,並由它來轉發數據包,如果活動路由器發生了故障,備份路由器將成爲活動路由器。從網絡內的主機來看,網關並沒有改變。我們並不會因爲其中一個路由器發生故障而造成網絡癱瘓,影響網絡傳輸。
二、HSRP的組成
活躍路由器:熱備份組內實際轉發數據包的路由器
備份路由器:在活躍路由器發生故障不能轉發數據包或者優先級發生改變時,由備份路由器轉變爲活躍路由器,並進行數據轉發。
虛擬路由器:在熱備份組內虛擬出來的路由器
其他路由器:其他
三、HSRP的工作原理
HSRP 運行在UDP上,端口號爲1985。HSRP中的所有路由器都會發送或者接收HSRP消息,發送或接收的方式爲組播,組播地址:224.0.0.2,TTL(保活時間)爲1s。
HSRP的組播消息共有三種類型:
hello:HSRP中一臺路由器向其他路由器發送本路由器的優先級和狀態信息。發送間隔3s。
coup:當一個備份路由器成爲活躍路由器時,會發送一個coup消息。
resign:在活動路由器發生故障或者關閉,又或者接收到一個具有更高優先級的路由器發來的Hello或者coup消息時,活動路由器將發送resign消息。
HSRP路由器利用Hello包來互相監聽各自的存在。當路由器長時間沒有接收到Hello包時,就認爲活動路由器故障,備份路由器就會成爲活動路由器。HSRP中hello包的發送間隔爲3s,每3s發送一個hello包來確認對方狀態。如果超過10s沒有收到回包,則備份路由器變爲活躍路由器並進行數據轉發。
HSRP協議利用優先級決定哪個路由器成爲活動路由器。如果一個路由器的優先級比其它路由器的優先級高,則該路由器成爲活動路由器。
主設備的選擇原則:
1、參與網關虛擬化的設備,首先比較優先級,越大越好;默認值爲100;
2、如果優先級相同,則比較IP地址, 越大越好 ;
四、HSRP狀態
在任一時刻,配置了HSRP協議的路由器都將處於以下六種狀態之一:
Initial———初始狀態,HSRP啓動時的狀態,HSRP還沒有運行,一般是在改變配置或端口剛剛啓動時進入該狀態。
Learn——— 學習狀態,不知道虛擬IP,未看到活躍路由器發hello。等待活躍路由器發hello。
Listen———監聽狀態,路由器已經得到了虛擬IP地址,但是它既不是活動路由器也不是等待路由器。它一直監聽從活動路由器和等待路由器發來的HELLO報文。
Speak———發言狀態,在該狀態下,路由器定期發送HELLO報文,並且積極參加活動路由器或等待路由器的競選。
Standby———備份狀態,當活躍路由器故障時準備代替進行數據轉發。
Active———活躍狀態,路由器執行包傳輸功能。
五、HSRP的配置
(1) 在route 1 上進行設置
1、在網關(端口)上啓用HSRP,並配置虛擬網關地址。
Router(config)#interface g0/0
Router(config-if)#ip address 192.168.1.254 255.255.255.0 //爲端口設置IP地址
Router(config-if)#no shutdown //激活端口
Router(config-if)#standby 10 ip 192.168.1.250 //啓用HSRP並配置虛擬網關IP地址
Router(config-if)#standby 10 priority 105 //設置HSRP優先級,將route 1 設置爲活躍路由。
Router(config-if)#standby 10 preempt //開啓HSRP的搶佔功能
(2)在route 2 上進行設置
Router(config)#interfa g0/0
Router(config-if)#ip address 192.168.1.253 255.255.255.0
Router(config-if)#no shutdown
Router(config-if)#standby 10 ip 192.168.1.250 //啓用HSRP
六、驗證與測試
ping命令:ping 192.168.1.250
查看HSRP相關信息 show standby
route 2
Router#show standby
GigabitEthernet0/0 - Group 10 (version 2)
State is Standby //狀態爲備份狀態
6 state changes, last state change 00:09:00
Virtual IP address is 192.168.1.250 //虛擬網關地址爲192.168.1.250
Active virtual MAC address is unknown
Local virtual MAC address is 0000.0C9F.F00A (v2 default)
Hello time 3 sec, hold time 10 sec //hello包發送間隔爲3s,保持時間爲10s
Next hello sent in 1.861 secs
Preemption disabled
Active router is 192.168.1.254 //活躍路由器網關地址爲192.168.1.254
Standby router is local
Priority 100 (default 100) //優先級爲默認的100
Group name is hsrp-Gig0/0-10 (default)
route 2
Router#show standby
GigabitEthernet0/0 - Group 10 (version 2)
State is Active // 狀態爲活躍狀態
8 state changes, last state change 00:08:42
Virtual IP address is 192.168.1.250 //虛擬網關地址爲192.168.1.250
Active virtual MAC address is 0000.0C9F.0000
Local virtual MAC address is 0000.0C9F.F00A (v2 default)
Hello time 3 sec, hold time 10 sec //hello包發送間隔爲3s,保持時間爲10s
Next hello sent in 0.276 secs
Preemption enabled
Active router is local
Standby router is 192.168.1.253 //備份路由器網關地址爲192.168.1.254
Priority 105 (configured 105) //優先級爲105
Group name is hsrp-Gig0/0-10 (default)