趙開新,孫新領
(河南機電高等專科學校計算機科學與技術系,河南新鄉(xiāng)453000)
目前,用戶對網(wǎng)絡可靠性要求越來越高,特別是在一些重點業(yè)務入口或接入點上需要保證網(wǎng)絡不間斷運行,確保企業(yè)Internet接入點、銀行數(shù)據(jù)庫、服務器等設備之間的不間斷網(wǎng)絡通訊。防火墻作為安全設備,一般會部署在需要保護的網(wǎng)絡和不受保護的網(wǎng)絡之間,即位于業(yè)務接口點上,在這種業(yè)務點上,如果僅使用一臺防火墻,無論其可靠性多高,系統(tǒng)都可能會承受由于單點故障而引起的網(wǎng)絡中斷風險。為了防止單臺防火墻出現(xiàn)意外故障而導致整個網(wǎng)絡業(yè)務中斷,可以通過雙機熱備技術,來提供設備冗余備份機制,從而提高整個網(wǎng)絡系統(tǒng)的穩(wěn)定性和可靠性。
從廣義上講,雙機熱備就是對于重要的服務,使用兩臺服務器,互相備份,共同執(zhí)行同一服務。當一臺服務器出現(xiàn)故障時,可以由另一臺服務器承擔服務任務,從而在不需要人工干預的情況下,自動保證系統(tǒng)能持續(xù)提供服務[1]。
雙機熱備在組網(wǎng)中的應用是在一些重點網(wǎng)絡業(yè)務入口或接入點部署多臺設備形成備份,當主設備出現(xiàn)故障,通過VRRP(Virtual Router Redundancy Protocol)或者動態(tài)路由等機制進行切換,實現(xiàn)一臺設備故障后流量自動切換到另一臺正常工作的設備。
網(wǎng)絡中傳統(tǒng)的備份方案是在關鍵接入點部署路由器或者交換機等轉發(fā)設備,由于經過設備的每個報文都是查找轉發(fā)表進行轉發(fā),鏈路切換后,后續(xù)報文的轉發(fā)不受影響[2]。圖1所示為兩臺路由器組成的備份組:
圖1 傳統(tǒng)雙機熱備虛擬路由器示意圖
路由器RA、RB組成了一個備份組,相當于一臺虛擬路由器,虛擬 IP地址為211.69.1.1/24,備份組內 RA 充當主設備,IP 地址為 211.69.1.2/24,RB 充當備份設備,IP地址為211.69.1.3/24。內網(wǎng)中的所有主機僅僅知道該虛擬 IP地址211.69.1.1/24,而并不知道具體的主用或備用設備的IP地址,因此各主機都將網(wǎng)關配置為去往該虛擬IP地址。于是,內網(wǎng)中的各主機就通過該備份組與外部網(wǎng)絡進行通訊。
正常情況下內網(wǎng)的所有主機與外網(wǎng)通訊時,僅通過路由器RA轉發(fā),當路由器RA出現(xiàn)故障時,會通過一定的機制,把內網(wǎng)到外網(wǎng)的流量切換到路由器RB,只要路由器RB有正確的路由表,內外網(wǎng)的通訊就不會中斷。
如果關鍵接入點部署的是狀態(tài)防火墻,由于狀態(tài)防火墻是基于連接狀態(tài)的,當用戶發(fā)起會話時,狀態(tài)防火墻只會對會話的首包進行檢查,如果首包允許通過則會建立一個會話表項,表項里包括源IP、源端口、目的IP、目的端口等信息,只有匹配該會話表項的后續(xù)報文或者返回報文才能通過防火墻。如果鏈路切換后,后續(xù)報文找不到正確的表項,會導致當前業(yè)務中斷。
因此,對于狀態(tài)防火墻,在鏈路切換前,必須對會話信息進行主備同步。這樣,在主設備故障后能將流量切換到其他備份設備,由備份設備繼續(xù)處理業(yè)務,從而保證了當前會話不被中斷。圖2所示為兩臺防火墻組成的備份組。FirewallA和FirewallB之間直接相連的一根線,負責兩個防火墻之間會話的同步。
圖2 防火墻雙機熱備示意圖
2.3.1 主模式
主模式下的兩臺防火墻,一臺作為主設備,另一臺作為備份設備。主設備處理所有業(yè)務,并將產生的會話信息傳送到備份設備進行備份,正常情況下備份設備不處理業(yè)務,只用作備份。只有當主設備故障,備份設備接替主設備處理業(yè)務,從而保證新發(fā)起的會話能正常建立,當前正在進行的會話也不會中斷。
2.3.2 負載分擔模式
負載分擔模式下,兩臺設備均為主設備,都處理業(yè)務,同時又作為另一臺設備的備份設備,備份對端的數(shù)據(jù)流。當一臺設備故障后,另一臺設備負責全部業(yè)務。從而保證新發(fā)起的會話能正常建立,當前正在進行的會話也不會中斷[3]。
2.4.1 數(shù)據(jù)同步
防火墻設備需要維護每條會話的狀態(tài)等相關信息,當主設備故障、流量切換到備份設備時,仍要求備份設備上有正確的會話信息才能繼續(xù)處理會話報文,否則會話報文會被丟棄從而導致會話中斷。因此,主設備上會話建立或表項變化時需要將相關信息同步保存到備份設備,以保證主設備和備份設備會話表完全一致,數(shù)據(jù)同步的方法有兩種。
1)批量備份
在兩臺設備上啟用雙機備份后,每個防火墻每隔一段時間,把自己已經存在的大量會話表項,一次性同步到另一臺設備,這個過程稱為批量備份。
2)實時備份
在兩臺設備上啟用雙機備份后,每個防火墻在運行的過程中把產生的新表項或表項變化后的結果立即備份到另一臺設備,這個過程稱為實時備份。
2.4.2 流量切換
雙機熱備要實現(xiàn)主設備出現(xiàn)故障時,自動切換到備份設備。流量切換的方法有兩種,一種是通過VRRP實現(xiàn)流量切換,另一種是通過動態(tài)路由實現(xiàn)流量切換。
1)通過VRRP實現(xiàn)流量切換
通過VRRP將局域網(wǎng)中的一組設備配置成一個備份組,這組設備在功能上就相當于一臺虛擬設備,局域網(wǎng)內的主機只知道這個虛擬設備的IP地址,通過這個虛擬設備與其他網(wǎng)絡進行通訊。備份組中只有一臺設備處于活動狀態(tài),能夠轉發(fā)報文,成為主設備,其余設備處于備份狀態(tài),并隨時按照優(yōu)先級高低做好接替任務準備,成為備份設備。當發(fā)現(xiàn)主設備故障時,優(yōu)先級高的備用設備會當選為新的主設備來接替原來的主設備工作。整個過程對用戶來說是透明的,并且自動實現(xiàn)了流量切換,這就是雙機熱備的主模式。如果將一組設備配置成兩個備份組,并且設備在不同備份組中的優(yōu)先級不同,可以實現(xiàn)雙機熱備的負載分擔模式。
2)通過動態(tài)路由實現(xiàn)流量切換
如果從內網(wǎng)到外網(wǎng)有兩條不同的路徑,動態(tài)路由協(xié)議會使用算法選取最優(yōu)的一條路徑作為內外網(wǎng)之間的路由。當這條路徑故障后,路由協(xié)議會從剩余的可用路徑中選擇最優(yōu)的一條作為新的路由,從而動態(tài)地保證內外網(wǎng)之間的連通。
如圖3所示,從內網(wǎng)到外網(wǎng)有兩條路徑,分別是RB-FirewallA- RA和RB-FirewallB- RA,可以通過配置路由器RA、RB和防火墻FirewallA、FirewallB全為動態(tài)路由協(xié)議OSPF,并使RA和RB的E1/0端口的cost值小于RA和RB的E1/1端口的cost值,這樣在FirewallA正常工作情況下,所有從內網(wǎng)到外網(wǎng)的數(shù)據(jù)都經過FirewallA,F(xiàn)irewallB并不轉發(fā)數(shù)據(jù),只起到備份的作用,當FirewallA故障后,重新計算路由,找到新的最優(yōu)路由RB-FirewallB-RA,這樣,所有從內網(wǎng)到外網(wǎng)的數(shù)據(jù)經 FirewallB轉發(fā),F(xiàn)irewallA和FirewallB之間的直連線路起到同步會話表項的作用,這樣FirewallA和FirewallB就工作在雙機熱備的主模式。由于OSPF協(xié)議支持等值路由,也可以通過配置RA和RB的E1/0和E1/1端口的cost值相同來實現(xiàn)雙機熱備的負載分擔模式。
圖3 通過OSPF協(xié)議實現(xiàn)流量切換示意圖
如圖4所示,內網(wǎng)可以通過FirewallA或FirewallB兩條路徑到外網(wǎng),F(xiàn)irewallA和FirewallB將內網(wǎng)劃分為兩個區(qū)域Trust和DMZ,外網(wǎng)為Untrust區(qū)域。FirewallA和FirewallB分別通過端口E1/0連接Trust區(qū)域,通過端口E1/1連接DMZ區(qū)域,防火墻FirewallA和FirewallB工作在負載分擔模式。兩防火墻和Trust區(qū)域相連的接口組成一個備份組1,擁有虛擬IP地址211.69.1.1/24,Trust區(qū)域各主機都將網(wǎng)關配置為去往虛擬 IP 地址 211.69.1.1/24,在備份組 1 中,F(xiàn)irewallA防火墻作為主設備,F(xiàn)irewallB防火墻作為備份設備;兩防火墻和DMZ區(qū)域相連的接口組成另一備份組2,擁有虛擬 IP 地址 211.69.2.1/24,DMZ 區(qū)域各主機都將網(wǎng)關配置為去往虛擬IP地址211.69.2.1/24,在備份組2中,F(xiàn)irewallB防火墻作為主設備,F(xiàn)irewallA防火墻作為備份設備。FirewallA和FirewallB之間的直連線路進行同步兩防火墻之間的會話表項。
圖4 防火墻雙機熱備典型案例示意圖
SecPathA防火墻關鍵配置如下。
啟動HRP雙機熱備份功能。
[SecPathA?hrp enable]
啟動HRP實時備份機制。
[SecPathA]hrp auto-sync
創(chuàng)建VRRP備份組,并配置各備份組的虛擬IP地址。
[SecPathA-Ethernet1/0]vrrp vrid 1 virtual-ip 211.69.1.1
[SecPathA -Ethernet1/1]vrrp vrid 2 virtual-ip 211.69.2.1
創(chuàng)建VRRP管理組1,配置VRRP管理組優(yōu)先級為105,并啟動VRRP管理組搶占功能,將備份組1添加到VRRP管理組1中,并指定數(shù)據(jù)通道為Ethernet1/0。
[SecPathA]vrrp group 1
[SecPathA -vrrpgroup-1]vrrp-group priority 105
[SecPathA-vrrpgroup-1]vrrp-group preempt
[SecPathA -vrrpgroup-1]add interface Ethernet 1/0 vrrp vrid 1 data
創(chuàng)建VRRP管理組2,采用 VRRP管理組缺省優(yōu)先級,并啟動 VRRP管理組搶占功能,將備份組2添加到VRRP管理組2中,并指定數(shù)據(jù)通道為Ethernet1/1。
[SecPathA]vrrp group 2
[SecPathA-vrrpgroup-2]vrrp-group preempt
[SecPathA -vrrpgroup-2]add interface Ethernet 1/1 vrrp vrid 2 data
SecPathB和SecPathA的配置絕大多數(shù)相同,只需修改SecPathB上管理組1優(yōu)先級為缺省值,管理組2的優(yōu)先級為105。
隨著對網(wǎng)絡的可靠性和安全要求越來越高,在目前組網(wǎng)中,雙機熱備技術在防火墻中的應用越來越廣泛。通過主備防火墻之間的批量備份和實時備份,可以快速實現(xiàn)數(shù)據(jù)同步,通過VRRP或動態(tài)路由可以實現(xiàn)主設備故障后,流量快速自動切換到備份設備,從而實現(xiàn)了網(wǎng)絡的可靠性和安全性。因此,在以后組網(wǎng)中防火墻的雙機熱備技術將會有很好的應用前景。
[1] 劉曉杰,黃永佳,等.基于linux的雙機熱備系統(tǒng)的實現(xiàn)技術[J].計算機應用研究,2007,24(4):254 -257.
[2] 杭州華三通信技術有限公司.H3C網(wǎng)絡學院教材(一、二學期)[M].杭州:華三通信技術有限公司,2007.
[3] 杭州華三通信技術有限公司.H3C網(wǎng)絡安全技術[M].杭州:華三通信技術有限公司,2010.