VRRP主备网关原理
文章目錄
- 前言
- 網(wǎng)關(guān)的缺陷
- VRRP基本概念
- VRRP主備備份過(guò)程
- 選舉過(guò)程:
- Master設(shè)備維持與切換:
- 搶占機(jī)制
- VRRP聯(lián)動(dòng)功能
- VRRP負(fù)載分擔(dān)工作過(guò)程
- VRRP配置
前言
??局域網(wǎng)中的用戶終端通常采用配置一個(gè)默認(rèn)網(wǎng)關(guān)的形式訪問(wèn)外部網(wǎng)絡(luò),如果此時(shí)默認(rèn)網(wǎng)關(guān)設(shè)備發(fā)生故障,將中斷所有用戶終端的網(wǎng)絡(luò)訪問(wèn),這很可能會(huì)給用戶帶來(lái)不可預(yù)計(jì)的損失,所以可以通過(guò)部署多個(gè)網(wǎng)關(guān)的方式來(lái)解決單點(diǎn)故障問(wèn)題,那么如何讓多個(gè)網(wǎng)關(guān)能夠協(xié)同工作但又不會(huì)互相沖突就成了最迫切需要解決的問(wèn)題。
??于是VRRP應(yīng)運(yùn)而生,它既可以實(shí)現(xiàn)網(wǎng)關(guān)的備份,又能解決多個(gè)網(wǎng)關(guān)之間互相沖突的問(wèn)題。那么VRRP的工作原理是如何實(shí)現(xiàn)的?在網(wǎng)絡(luò)中又該如何配置呢?
網(wǎng)關(guān)的缺陷
??1)單網(wǎng)關(guān)的缺陷問(wèn)題:當(dāng)網(wǎng)關(guān)路由器出現(xiàn)問(wèn)題,本網(wǎng)段內(nèi)不能與外網(wǎng)進(jìn)行通信;
??2)多網(wǎng)關(guān)的缺陷問(wèn)題:本網(wǎng)段出現(xiàn)網(wǎng)關(guān)IP地址沖突,主機(jī)頻繁切換網(wǎng)絡(luò)出口;
VRRP基本概念
??VRRP路由器(VRRP Router):運(yùn)行VRRP協(xié)議的設(shè)備,如RouterA和RouterB。
??虛擬路由器(Virtual Router):又稱VRRP備份組,由一個(gè)Master設(shè)備和多個(gè)Backup設(shè)備組成,被當(dāng)作一個(gè)共享局域網(wǎng)內(nèi)主機(jī)的缺省網(wǎng)關(guān)。如RouterA和RouterB共同組成了一個(gè)虛擬路由器。
???Master路由器(Virtual Router Master):承擔(dān)轉(zhuǎn)發(fā)報(bào)文任務(wù)的VRRP設(shè)備,如RouterA。
???Backup路由器(Virtual Router Backup):一組沒(méi)有承擔(dān)轉(zhuǎn)發(fā)任務(wù)的VRRP設(shè)備,當(dāng)Master設(shè)備出現(xiàn)故障時(shí),它們將通過(guò)競(jìng)選成為新的Master設(shè)備,如RouterB。
???Priority:設(shè)備在備份組中的優(yōu)先級(jí),取值范圍是0~255。0表示設(shè)備停止參與VRRP備份組,用來(lái)使備份設(shè)備盡快成為Master設(shè)備,而不必等到計(jì)時(shí)器超時(shí);255則保留給IP地址擁有者,無(wú)法手工配置;設(shè)備缺省優(yōu)先級(jí)值是100。
???vrid:虛擬路由器的標(biāo)識(shí),如圖中RouterA和RouterB組成的虛擬路由器的vrid為1,需手工指定,范圍1-255。
??虛擬IP地址(Virtual IP Address):虛擬路由器的IP地址,一個(gè)虛擬路由器可以有一個(gè)或多個(gè)IP地址,由用戶配置。如RouterA和RouterB組成的虛擬路由器的虛擬IP地址為10.1.1.254/24。
??IP地址擁有者(IP Address Owner):如果一個(gè)VRRP設(shè)備將真實(shí)的接口IP地址配置為虛擬路由器IP地址,則該設(shè)備被稱為IP地址擁有者。如果IP地址擁有者是可用的,則它將一直成為Master。
??虛擬MAC地址(Virtual MAC Address):虛擬路由器根據(jù)vrid生成的MAC地址。一個(gè)虛擬路由器擁有一個(gè)虛擬MAC地址,格式為:00-00-5E-00-01-{vrid} 。當(dāng)虛擬路由器回應(yīng)ARP請(qǐng)求時(shí),使用虛擬MAC地址,而不是接口的真實(shí)MAC地址。如RouterA和RouterB組成的虛擬路由器的vrid為1,因此這個(gè)VRRP備份組的MAC地址為00-00-5E-00-01-01。
??VRRP協(xié)議狀態(tài)機(jī)有三種狀態(tài):Initialize(初始狀態(tài))、Master(活動(dòng)狀態(tài))、Backup(備狀態(tài))。
三種狀態(tài)之間的轉(zhuǎn)換條件如下:
??Initialize->Master:Startup priority=255;
??Initialize->Backup:Startup priority!=255;
??Master->Initialize:設(shè)備關(guān)閉;
??Master->Backup:收到比自己優(yōu)先級(jí)更高的數(shù)據(jù)包;
??Backup->Initialize:設(shè)備關(guān)閉;
??Backup->Master:在超時(shí)時(shí)間內(nèi)沒(méi)有收到VRRP通告報(bào)文或者收到通告報(bào)文原Master優(yōu)先級(jí)為0,或者收到的通告報(bào)文中的原Master優(yōu)先級(jí)比自己的優(yōu)先級(jí)低。
Initialize狀態(tài)
??① 該狀態(tài)為VRRP不可用狀態(tài),在此狀態(tài)時(shí)設(shè)備不會(huì)對(duì)VRRP報(bào)文做任何處理。
??② 通常剛配置VRRP時(shí)或設(shè)備檢測(cè)到故障時(shí)會(huì)進(jìn)入Initialize狀態(tài)。
??③ 收到接口Up的消息后,如果設(shè)備的優(yōu)先級(jí)為255,則直接成為Master設(shè)備;如果設(shè)備的優(yōu)先級(jí)小于255,則會(huì)先切換至Backup狀態(tài)。
Master狀態(tài)
??① 定時(shí)(Advertisement Interval)發(fā)送VRRP通告報(bào)文。
??② 以虛擬MAC地址響應(yīng)對(duì)虛擬IP地址的ARP請(qǐng)求。
??③ 轉(zhuǎn)發(fā)目的MAC地址為虛擬MAC地址的IP報(bào)文。
??④ 如果它是虛擬IP地址的擁有者,則接收目的IP地址為這個(gè)虛擬IP地址的IP報(bào)文。
??⑤ 如果收到比自己優(yōu)先級(jí)大的報(bào)文,立即成為Backup。
??⑥ 如果多個(gè)VRRP設(shè)備同時(shí)切換到Master狀態(tài),通過(guò)VRRP通告報(bào)文的交互進(jìn)行協(xié)商后,優(yōu)先級(jí)較低的VRRP設(shè)備將切換成Backup狀態(tài),優(yōu)先級(jí)最高的VRRP設(shè)備成為最終的Master設(shè)備;優(yōu)先級(jí)相同時(shí),VRRP設(shè)備上VRRP備份組所在接口主IP地址較大的成為。Master設(shè)備
??⑦ 當(dāng)接收到接口的Shutdown事件時(shí),轉(zhuǎn)為Initialize狀態(tài)。
Backup狀態(tài)
??① 接收Master發(fā)送的VRRP通告報(bào)文,判斷Master的狀態(tài)是否正常。
??② 對(duì)虛擬IP地址的ARP請(qǐng)求,不做響應(yīng)。
??③ 如果收到比自己優(yōu)先級(jí)小的報(bào)文時(shí),默認(rèn)立刻升主,如果配置了不搶占,則重置定時(shí)器。如果配置了搶占延遲,則重置定時(shí)器,待搶占延遲到期再升主。收到比自己優(yōu)先級(jí)高的報(bào)文時(shí),重置定時(shí)器。如果收到優(yōu)先級(jí)和自己相同的報(bào)文,則重置定時(shí)器,不進(jìn)一步比較IP地址。
??④ Master_Down_Interval定時(shí)器:Backup設(shè)備在該定時(shí)器超時(shí)后仍未收到通告報(bào)文,則會(huì)轉(zhuǎn)換為Master狀態(tài)。計(jì)算公式如下:
???Master_Down_Interval=(3 * Advertisement_Interval) + Skew_time(偏移時(shí)間)
???Skew_Time=(256–Priority)/256
??⑤ 如果收到比自己優(yōu)先級(jí)小的報(bào)文且該報(bào)文優(yōu)先級(jí)不是0,丟棄報(bào)文,立刻成為Master;如果收到報(bào)文優(yōu)先級(jí)是0,定時(shí)器時(shí)間設(shè)置為Skew_time(偏移時(shí)間)。
??⑥ 當(dāng)接收到MASTER_DOWN_TIMER定時(shí)器超時(shí)的消息時(shí),Backup狀態(tài)才會(huì)轉(zhuǎn)為Master狀態(tài)。
??⑦ 當(dāng)接收到接口的Shutdown消息時(shí),轉(zhuǎn)為Initialize狀態(tài)。
VRRP主備備份過(guò)程
選舉過(guò)程:
??選舉規(guī)則:比較優(yōu)先級(jí)大小,如果優(yōu)先級(jí)高則為Master設(shè)備,如果優(yōu)先級(jí)相同,并且沒(méi)有Master設(shè)備將比較IP接口地址大小,接口地址大則為Master設(shè)備。
??Master設(shè)備發(fā)送免費(fèi)ARP報(bào)文,將虛擬的MAC地址通知與他相連的設(shè)備或主機(jī),從而承擔(dān)報(bào)文轉(zhuǎn)發(fā)任務(wù)。
Master設(shè)備維持與切換:
??Master設(shè)備周期發(fā)送VRRP報(bào)文,通知其他VRRP設(shè)備組中公開(kāi)配置信息(優(yōu)先級(jí)等)和工作狀況,Backup設(shè)備接收到Master設(shè)備發(fā)送過(guò)來(lái)的數(shù)據(jù)包知道Master設(shè)備是否正常工作。
??當(dāng)Master設(shè)備出現(xiàn)故障時(shí),Backup設(shè)備不會(huì)直接變成Master設(shè)備,需要經(jīng)過(guò)Master_Down_Interval定時(shí)器超時(shí)后,Backup設(shè)備切換成Master設(shè)備,Master_Down_Interval=3×Advertisement_Interval+Skew_Time,單位為秒。
??當(dāng)Master設(shè)備要退出VRRP設(shè)備組時(shí),會(huì)發(fā)送優(yōu)先級(jí)為0的通過(guò)報(bào)文,Backup設(shè)備接收到后會(huì)迅速的切換成Master設(shè)備,不用經(jīng)過(guò)Master_Down_Interval定時(shí)器超時(shí),這個(gè)切換時(shí)間為SKew_time((256-Backup優(yōu)先級(jí))/256),單位秒。
搶占機(jī)制
??控制具有更高優(yōu)先級(jí)的備用路由器是否能夠搶占具有較低優(yōu)先級(jí)的Master路由器,使自己成為Master。缺省為搶占模式。
??注意:存在的例外情況是如果IP地址擁有者是可用的,則它總是處于搶占的狀態(tài),并成為Master設(shè)備。
搶占延時(shí)(Delay Time):
??搶占延遲時(shí)間,默認(rèn)為0,即立即搶占。
??圖中RouterA故障恢復(fù)后,立即搶占可能會(huì)導(dǎo)致流量中斷,因?yàn)镽outerA的上行鏈路的路由協(xié)議可能未完成收斂,這種情況則需要配置Master設(shè)備的搶占延時(shí)。
??另外,在性能不穩(wěn)定的網(wǎng)絡(luò)中,網(wǎng)絡(luò)堵塞可能導(dǎo)致Backup設(shè)備在Master_Down_Interval期間沒(méi)有收到Master設(shè)備的報(bào)文,Backup設(shè)備則會(huì)主動(dòng)切換為Master。如果此時(shí)原Master設(shè)備的報(bào)文又到達(dá)了,新Master設(shè)備將再次切換回Backup,如此則會(huì)出現(xiàn)VRRP備份組成員狀態(tài)頻繁切換的現(xiàn)象。為了緩解這種現(xiàn)象,可以配置搶占延時(shí),使得Backup設(shè)備在等待了Master_Down_Interval時(shí)間后,再等待搶占延遲時(shí)間。如在此期間仍沒(méi)有收到通告報(bào)文,Backup設(shè)備才會(huì)切換為Master設(shè)備。
VRRP聯(lián)動(dòng)功能
??當(dāng)上行鏈路出現(xiàn)故障時(shí),Master一樣還是會(huì)給VRRP組發(fā)送通告報(bào)文,不會(huì)進(jìn)行主備切換,會(huì)將去往Iternet數(shù)據(jù)包丟棄。
??解決方法:利用VRRP的聯(lián)動(dòng)功能監(jiān)視上行接口或鏈路故障,主動(dòng)進(jìn)行主備切換。
VRRP負(fù)載分擔(dān)工作過(guò)程
??負(fù)載分擔(dān)是指多個(gè)VRRP備份組同時(shí)承擔(dān)業(yè)務(wù)轉(zhuǎn)發(fā),VRRP負(fù)載分擔(dān)與VRRP主備備份的基本原理和報(bào)文協(xié)商過(guò)程都是相同的。對(duì)于每一個(gè)VRRP備份組,都包含一個(gè)Master設(shè)備和若干Backup設(shè)備。
??與主備備份方式的不同點(diǎn)在于:負(fù)載分擔(dān)方式需要建立多個(gè)VRRP備份組,各備份組的Master設(shè)備分擔(dān)在不同設(shè)備上;單臺(tái)設(shè)備可以加入多個(gè)備份組,在不同的備份組中扮演不同的角色。
VRRP配置
vrrp vrid 1 virtual-ip 10.0.0.10 //配置vrid1中的虛擬IP地址。 vrrp vrid 1 priority 120 //配置在vrid1中的優(yōu)先級(jí)為120,其他設(shè)備優(yōu)先級(jí)未手動(dòng)指定,缺省為100,則本設(shè)備為Master。 vrrp vrid 1 preempt-mode timer delay 20 //配置Master設(shè)備的搶占時(shí)延為20秒。 vrrp vrid 1 track interface GigabitEthernet0/0/0 reduce 30 //跟蹤上行接口G0/0/0的狀態(tài),如果端口出現(xiàn)故障,則Master設(shè)備VRRP優(yōu)先級(jí)降低30。總結(jié)
以上是生活随笔為你收集整理的VRRP主备网关原理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。