本章主要講述vrrp協議的原理及實現。
本章主要內容:
vrrp協議相關術語解析
vrrp協議介紹
除錯命令及除錯資訊
vrrp――虛擬路由冗餘協議(virtual router redundancy protocol)。
master――vrrp的乙個狀態,活動路由器處於該狀態,且保證相關ip報文的**。
backup――vrrp的乙個狀態,備份路由器處於該狀態,且保證在活動路由器失效時,及時切換。
vrrp是一種容錯協議。通常,乙個網路內的主機設定一條預設路由,這樣,主機發出的目的位址不在本網段的報文將通過預設路由發往路由器a,從而實現了主機與外部網路的通訊。當路由器a發生故障時,本網段內所有以a為預設路由下一跳的主機將斷掉與外部的通訊。
vrrp就是為解決上述問題而提出的,它為具有多播或廣播能力的區域網(如:乙太網)設計。vrrp將區域網的一組路由器(包括乙個master和若干個backup)組織成乙個虛擬的路由器,稱之為乙個備份組。
這個虛擬的路由器(即備份組)擁有自己的ip位址,備份組內的路由器也有自己的ip位址。區域網內的主機僅僅知道這個虛擬路由器的ip位址,而並不需要知道具體的master路由器的ip位址以及backup路由器的ip位址,它們將自己的預設路由設定為該虛擬路由器的ip位址。於是,網路內的主機就通過這個虛擬的路由器來與其它網路進行通訊。
當備份組內的master路由器壞掉時,備份組內的其它backup路由器將會接替成為新的master,繼續向網路內的主機提供路由服務,從而實現網路內的主機不間斷地與外部網路進行通訊。
vrrp報文是一種ip報文,協議號是112(0x70)。
vrrp的報文結構如下:
verion:版本號。等於2。
type:報文型別等於1,表示advertisements
vrid:介面配置的vrid,virtual router identifier (vrid)。
priority:介面上配置的priority。擁有虛擬ip位址的路由器(vip等於介面ip的路由器),priority等於255,其餘路由器只能為1~254,預設是100。
count ip addr:虛擬ip位址的個數,一般等於1。
authtype:認證型別。
0-無認證,authdata欄位全為0。
1-簡單文字認證。
2-md5認證。
advertise interval:advertisement發出的週期,以秒為單位。預設是1秒。
ip address:虛擬ip位址。
checksum:校驗和;
auth data:最多8個字元,不足8個補0。
簡單來說,vrrp是一種容錯協議,它保證當主機的下一跳路由器壞掉時,可以及時的由另一台路由器來代替,從而保持通訊的連續性和可靠性。為了使vrrp工作,要在路由器上配置虛擬路由器號和虛擬ip位址,這樣在這個網路中就加入了乙個虛擬路由器。而網路上的主機與虛擬路由器通訊,無需了解這個網路上物理路由器的任何資訊。
乙個虛擬路由器由乙個主路由器和若干個備份路由器組成,主路由器實現真正的**功能。當主路由器出現故障時,乙個備份路由器將成為新的主路由器,接替它的工作。
vrrp中只定義了一種報文——vrrp報文,這是一種多播報文,由主路由器定時發出來通告它的存在,使用這些報文可以檢測虛擬路由器各種引數,還可以用於主路由器的選舉。
vrrp中定義了三種狀態模型:初始狀態(initialize)、活動狀態(master)、備份狀態(backup)。其中,只有活動狀態可以為經過虛擬ip位址的**請求提供服務。
rfc2338中規定的vrrp協議是在cisco的私有協議hsrp協議的基礎上制定出來的。 但是vrrp簡化了hsrp提出的機制,儘量減少了由提供冗餘功能給網路帶來的額外負載,例如hsrp規定虛擬路由器有六種狀態,而在vrrp中只有三種,從而減少協議的複雜度;在穩定狀態下,hsrp中有兩種狀態可以傳送報文,而vrrp中只有master狀態的路由器可以傳送報文,而且報文也只有一種,減少頻寬占有;hsrp報文是基於udp,而vrrp報文是封裝在ip報文上的;同時vrrp還支援將虛擬ip位址復用真實介面ip位址。
vrrp路由器,通過vrid來形成不同的虛擬路由器。在組成乙個虛擬路由器的多個路由器中,它們分為主路由器和備份路由器。在vrrp路由器中,需要通過一定的規則來確定主、備份虛擬路由器。
下面就是它們選舉的規則:
1)根據優先順序的大小選舉主路由器,優先順序最大的為主路由器,狀態為master,若優先順序相同,則比較介面的宿主ip位址,宿主ip位址大的就成為主路由器。
2)其它路由器作為備份路由器,隨時監測主路由器的狀態。當主路由器正常工作時,它會定時傳送乙個vrrp多播報文(224.0.
0.18),以通知組內的備份路由器其自身處於正常工作狀態。如果組內的備份路由器長時間沒有接收到來自主路由器的報文,則將自己狀態轉為master。
當組內有多台備份路由器時,將有可能產生多個主路由器。這時每乙個主路由器就會比較vrrp報文中的優先順序和自己本地的優先順序,如果本地的優先順序小於vrrp中的優先順序,則將自己的狀態轉為backup,否則保持自己的狀態不變。通過這樣乙個過程,就會將優先順序最大的路由器選成新的主路由器,完成vrrp的備份功能。
虛擬路由器的狀態分為三種狀態:初始化狀態(initialize), 活動狀態(master), 備份狀態(backup)。
master狀態
必須響應對虛擬路由器ip位址的arp請求,並且arp的響應為虛擬路由器ip位址對應的mac位址;
負責**經過虛擬ip的相關報文;
不能接收目的ip=虛擬路由器ip 的資料報(除非是ip位址擁有者);
必須接收以相關ip位址為目的地的報文(如果是ip位址的擁有者);
必須傳送,接收協議報文(組播);
在由其它狀態變為master的時候,傳送免費arp報文。
backup狀態
不能響應對虛擬路由器ip位址的arp請求;
不能接收目的ip位址=虛擬路由器ip位址的報文;
不能傳送協議報文;必須接收協議報文(組播)。
initialize狀態
除響應startup,不作任何操作。
三種狀態轉換如下:
vrrp具有以下功能特點:
閘道器備份,使多個路由器分享乙個ip位址,防止多點接入的單點失效,使網路黑洞最小化。這是vrrp的主要功能。
負載均衡,其是vrrp附加值極高的乙個功能。通過多個虛擬路由器備份多個閘道器,終端分別設定不同虛擬路由器的ip位址,可以實現負載均衡。
安全性擴充套件,vrrp協議報文的互動可以通過安全認證的方式,擴充套件起安全性。vrrp定義了三種認證方式:無認證(no authentication)、簡單字元認證(****** clear text passwords)和 md5認證 (md5)。
在乙個安全的網路中,可以將認證方式設定為no,路由器對要傳送的vrrp報文不進行任何認證處理,而收到vrrp報文的路由器也不進行任何認證就認為是乙個真實合法的vrrp報文,這種情況下,不需要設定認證字。在乙個有可能受到安全威脅的網路中,可以將認證方式設定為******,則傳送vrrp報文的路由器就會將認證字填入到vrrp報文中,而收到vrrp報文的路由器會將收到的vrrp報文中的認證字和本地配置的認證字進行比較,相同則認為是真實的,合法的vrrp報文,否則認為是乙個非法的報文,將會丟棄。 在乙個非常不安全的網路中,可以將認證方式設定為md5,這樣,路由器就會利用authentication header提供的認證方式和md5演算法來對vrrp報文進行認證。
1. 報文除錯
debug vrrp packet
該命令用來列印vrrp報文的資訊。
9:54:48: vrrp 1: send advertisement priority 100
表示路由器發出了vrrp報文,vrid等於1,優先順序是100。
1d14h: vrrp: fastether***0 receive packet from 128.255.17.54
1d14h: vrrp: version 2, type 1, vrid 1, priority 100, authtype 0, adver_interval 1
表示路由器從f0口收到了vrrp報文,報文內容也詳細顯示出來。
2. 事件除錯
debug vrrp events
通過此命令可以詳細觀察出vrrp路由器的狀態變化。
20:00:18:
%lineproto-5-updown: line protocol on inte***ce fastether***0, changed state to down
20:00:18: vrrp: fastether***0 happen up/down
20:00:18: vrrp 1: shutdown event happen
20:00:18: vrrp 1: change state to init
vrrp轉變為init狀態。
20:00:28:
%lineproto-5-updown: line protocol on inte***ce fastether***0, changed state to up
20:00:28: vrrp: fastether***0 happen up/down
20:00:28: vrrp 1: startup event happen
20:00:28: vrrp 1: change state from init to backup
vrrp轉變為backup狀態。
20:03:32: vrrp 1: timeout event happend
20:03:32: vrrp 1: change state from backup to master
vrrp轉變為master狀態。
第06章資源管理
6.2.5 有關人員安排及培訓效果的評估的詳細內容見 人力資源控制程式 6.3 資訊資源管理 6.3.1 管理部負責資訊的分類,明確公司需要儲存的內 外部資訊的具體類別,並負責督促各部門進行相應職責範圍內各分類資訊的收集 傳遞與處理。6.3.2 管理部負責建立公司的資訊庫,不斷匯集各方面反饋的資訊,...
第06章目錄與檔案管理
目錄及檔案管理是作業系統的乙個重要組成部分,包括目錄的建立 移動 刪除和檔案的建立 移動 複製 刪除以及對檔案的讀寫等操作。乙個完整的應用程式,常常會涉及到對系統和使用者的資訊進行儲存 讀取和修改等處理。因此,如何有效地實現目錄和檔案操作也是必須掌握的一種技術。在c 中,可以方便地對檔案進行儲存和讀...
第06章控制電路工作原理
一 控制模組功能作用 1 給逆變器的電子開關提供控制訊號 2 對電流反饋訊號進行放大處理,並根據反饋 給定訊號調節電子 開關控制訊號的脈寬。3 對保護訊號作出反應,關閉控制訊號 二 控制模組原理圖 第一節整合脈寬調變器 一 脈寬調節器的的基本工作原理 脈寬調節器的的基本工作原理是用乙個電壓比較器,在...