林爍銘,羅浩銘
(惠州經(jīng)濟(jì)職業(yè)技術(shù)學(xué)院,廣東惠州,515057)
隨著半導(dǎo)體技術(shù)的飛速發(fā)展,通用處理器的性能得到了極大地提高,在某些特定的場(chǎng)合已經(jīng)可以勝任很多之前只有專用處理器才能完成的任務(wù)。隨著硬件技術(shù)的發(fā)展, 普通服務(wù)器與專用硬件路由器的硬件性能差距縮短,使得我們能夠使用普通服務(wù)器配置軟路由來(lái)代替專用硬件路由器.本論文路由器整機(jī)是基于x86架構(gòu)的主流PC機(jī)并增加網(wǎng)卡,并在VMware 虛擬機(jī)上安裝Ruter OS,pfsense和Oper WRT等適用于嵌入式設(shè)備的 Linux 發(fā)行版本,搭建一個(gè)具有開放性和易用性的路由器,幫助中小企業(yè)管理辦公室網(wǎng)絡(luò)。
此路由器在主流PC上安裝VMware EXSI虛擬機(jī)系統(tǒng),在VMware EXSI平臺(tái)上安裝Ruter OS、Pfsense和Open wrt系統(tǒng),并通過(guò)內(nèi)部邏輯交換機(jī),搭建一個(gè)功能強(qiáng)大的路由器。
PC主機(jī):本文路由器使用的PC主機(jī)為DELL OptiPlex 9020,4 CPUs x Intel(R) Xeon(R) CPU E3-1265L v3 @2.50GHz,內(nèi)存16G。
VMware EXSI:VMware ESXI適用于X86架構(gòu)的虛擬計(jì)算機(jī)軟件。它能提供完全動(dòng)態(tài)的資源可測(cè)量控制,可以實(shí)現(xiàn)服務(wù)器部署整合,為企業(yè)未來(lái)成長(zhǎng)所需擴(kuò)展空間,可因兼并服務(wù)器減少設(shè)備購(gòu)買及維護(hù)成本。讓IT人員做更有效的資源調(diào)度,并獲得更好且安全周密的防護(hù),當(dāng)系統(tǒng)發(fā)生災(zāi)難時(shí),可以在最短時(shí)間迅速?gòu)?fù)原系統(tǒng)的運(yùn)作。本論文路由器使用的EXSI版本為免費(fèi)版本,功能滿足要求。
Router OS:一種路由操作系統(tǒng),并通過(guò)該軟件將標(biāo)準(zhǔn)的PC電腦變成專用的路由器,在軟件的開發(fā)和應(yīng)用上不斷的更新和發(fā)展,功能在不斷增強(qiáng)和完善。特別在無(wú)線、認(rèn)證、策略路由、帶寬控制和防火墻過(guò)濾等功能上有著非常突出的功能。
Open WRT :一個(gè)為嵌入式設(shè)備(通常是無(wú)線路由器)開發(fā)的高擴(kuò)展度的GNU/Linux發(fā)行版。
PFsense:一個(gè)基于FreeBSD,專為防火墻和路由器功能定制的開源版本。它被安裝在計(jì)算機(jī)上作為網(wǎng)絡(luò)中的防火墻和路由器存在,并以可靠性著稱。
目前,在企業(yè)與外部網(wǎng)絡(luò)的交接處通常部署防火墻作為通信必要設(shè)備。企業(yè)通常購(gòu)買思科,華為等廠家的硬件防火墻。并且企業(yè)內(nèi)部網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)、部署和維護(hù)基本由廠家完成,廠家固定,成本高。本論文采用軟件路由器取代專業(yè)硬件路由器,有效降低中小企業(yè)網(wǎng)絡(luò)部署和維護(hù)成本,增加部署和維護(hù)的靈活性,可擴(kuò)展性。
X86架構(gòu)PC機(jī)上實(shí)現(xiàn)軟路由功能,即可擁有企業(yè)級(jí)的路由器及防火墻,具有上網(wǎng)行為管理,流量控制,抵御外界網(wǎng)絡(luò)攻擊等防火墻功能。從性能上,軟路由的硬件架構(gòu)是基于當(dāng)前的主流PC,使用了X86架構(gòu)的處理器性能要遠(yuǎn)遠(yuǎn)優(yōu)于專業(yè)路由器設(shè)備。電腦端擴(kuò)展性很強(qiáng),容易添加內(nèi)存提升整體的數(shù)據(jù)吞吐量。從價(jià)格上,實(shí)現(xiàn)同樣性能的軟路由,價(jià)格要遠(yuǎn)遠(yuǎn)低于硬路由。
從技術(shù)可行性的角度分析,硬件上可選PC主機(jī),并增加多網(wǎng)口網(wǎng)卡。軟件上,虛擬機(jī)平臺(tái)選擇使用WMware EXSi,EXSi直接運(yùn)行在硬件上,在ESXi 服務(wù)器上創(chuàng)建多個(gè)VM(虛擬機(jī)),在為這些虛擬機(jī)安裝好不同的路由系統(tǒng),包括OpenWRT、Router OS 和Pfsense 系統(tǒng)。使之成為能提供各種網(wǎng)絡(luò)應(yīng)用服務(wù)的虛擬服務(wù)器。ESXi 也是從內(nèi)核級(jí)支持硬件虛擬化,運(yùn)行于其中的虛擬服務(wù)器在性能與穩(wěn)定性上不亞于普通的硬件服務(wù)器,而且更易于管理維護(hù)。
VMware ESXi提供虛擬化層組件的作用。ESXi用于協(xié)調(diào)物理計(jì)算機(jī)的資源,同時(shí)通過(guò)ESXi管理其上的虛擬機(jī),進(jìn)行部署、遷移等操作。 同時(shí)還可以通過(guò)ESXi對(duì)物理計(jì)算機(jī)上的網(wǎng)絡(luò)存儲(chǔ)資源進(jìn)行管理,ESXi通過(guò)配置虛擬交換機(jī)上的vSwitch管理配置網(wǎng)絡(luò)資源。
從經(jīng)濟(jì)可行性的角度分析,硬件主機(jī)可選使用了3到5年的PC主機(jī)。虛擬機(jī)VMware ESXi提供免費(fèi)版本,免費(fèi)版本的功能足夠完成任務(wù)。路由系統(tǒng)OpenWRT、Router OS和Pfsense都是免費(fèi)的。
因此,從技術(shù)和經(jīng)濟(jì)可行性來(lái)看,平臺(tái)的開發(fā)應(yīng)用是可行的。
3.3.1 平臺(tái)的角色
本論文的軟路由器主要做為企業(yè)網(wǎng)絡(luò)管理中心,既提供連接互聯(lián)網(wǎng)運(yùn)營(yíng)商的出口防火墻功能,也提供內(nèi)部網(wǎng)絡(luò)管理功能,在一般的網(wǎng)絡(luò)架構(gòu)中,充當(dāng)核心層交換機(jī)或路由器,以及出口防火墻的地位。
3.3.2 功能分析
3.3.2.1 平臺(tái)的管理
虛擬機(jī)VMware ESXi提供web接入,在ESXi的web頁(yè)面,為各個(gè)路由系統(tǒng)提供控制臺(tái)窗口。在控制臺(tái)窗口上,可使用命令行對(duì)各個(gè)路由系統(tǒng)進(jìn)行管理和配置。除了ESXi的控制臺(tái)窗口,各個(gè)路由系統(tǒng)還提供web接入。在web頁(yè)面,可以對(duì)各個(gè)路由系統(tǒng)進(jìn)行高級(jí)功能配置和管理。實(shí)現(xiàn)各個(gè)路由系統(tǒng)web接入的原因是EXSi自帶虛擬交換機(jī),而虛擬交換機(jī)連接物理主機(jī)的網(wǎng)口,那么外部的管理主機(jī)就可以通過(guò)網(wǎng)口接入各個(gè)路由系統(tǒng)。
3.3.2.2 內(nèi)部網(wǎng)絡(luò)管理
在物理接入上,物理主機(jī)增加了多網(wǎng)口網(wǎng)卡,網(wǎng)卡提供網(wǎng)口給其它PC主機(jī)、交換機(jī)和無(wú)線路由器接入。在功能上,此軟路由器平臺(tái)提供DHCP功能,為用戶分配IP地址;提供DNS服務(wù)器功能,內(nèi)部用戶訪問(wèn)企業(yè)內(nèi)部web服務(wù)器和其它服務(wù)器時(shí)提供DNS解析服務(wù);提供DNS解析分流功能,在用戶訪問(wèn)互聯(lián)網(wǎng)時(shí),分流到出口。
3.3.2.3 外部網(wǎng)絡(luò)管理
此軟路由器平臺(tái)提供PPPoE撥號(hào)和固定IP連接運(yùn)營(yíng)商網(wǎng)絡(luò)功能;提供NAT功能,為內(nèi)部用戶訪問(wèn)互聯(lián)網(wǎng)提供地址轉(zhuǎn)換;提供防火墻功抵御外部網(wǎng)絡(luò)攻擊。為企業(yè)提供企業(yè)分支機(jī)構(gòu)之間互聯(lián),提供的方式多種,包括PPTP,L2TP/IPSec PSK、Open Vpn等。
平臺(tái)采用WMware EXSi虛擬化機(jī)構(gòu)。在WMware EXSi虛擬化系統(tǒng)上安裝路由系統(tǒng)。架構(gòu)設(shè)計(jì)圖如圖1所示。
圖1 WMware EXSI 平臺(tái)架構(gòu)
此VMware EXSi虛擬化套件自帶虛擬交換機(jī)實(shí)現(xiàn)路由系統(tǒng)之間的連接,并且虛擬交換機(jī)能與物理機(jī)的網(wǎng)絡(luò)接口進(jìn)行連接,實(shí)現(xiàn)虛擬路由系統(tǒng)與外界設(shè)備也能進(jìn)行連接。本論文的軟路由器平臺(tái)的邏輯連接設(shè)計(jì)如圖2所示。
圖2 軟路由平臺(tái)邏輯設(shè)計(jì)
在VMware EXSi上的各個(gè)路由系統(tǒng)負(fù)責(zé)的功能如表1所示。
表1 各路由系統(tǒng)的功能
用戶在上網(wǎng)的過(guò)程中,通過(guò)Pfsense1的DHCP服務(wù)器獲得IP地址。網(wǎng)關(guān)為一個(gè)Router OS系統(tǒng),此Router OS做為內(nèi)部網(wǎng)絡(luò)訪問(wèn)內(nèi)部網(wǎng)和互聯(lián)網(wǎng)的DNS緩存,提供DNS轉(zhuǎn)發(fā)功能,把用戶的DNS請(qǐng)求消息發(fā)給Open Wrt系統(tǒng)。OpenWrt系統(tǒng)提供DNS分流功能。當(dāng)內(nèi)部用戶訪問(wèn)企業(yè)內(nèi)網(wǎng)web服務(wù)器和其它服務(wù)器時(shí),DNS請(qǐng)求就會(huì)發(fā)給Pfsense-2進(jìn)行DNS解析。而當(dāng)內(nèi)部用戶訪問(wèn)互聯(lián)網(wǎng)時(shí),此DNS請(qǐng)求消息就會(huì)發(fā)給Router OS主路由器,由這個(gè)RouterOS主路由向外部的DNS服務(wù)器請(qǐng)求DNS解析。
本方案硬件平臺(tái)采用DELL OptiPlex 9020,加裝16G內(nèi)存和4個(gè)1000M網(wǎng)口的網(wǎng)卡,把原機(jī)械硬盤替換為128G固態(tài)硬盤。
5.2.1 ESXi的安裝和管理配置
軟件虛擬機(jī)平臺(tái)采用ESXi-6.7.0標(biāo)準(zhǔn)版本。ESXi不依賴于任何操作系統(tǒng),它本身就可以看作一個(gè)操作系統(tǒng),可直接在PC機(jī)上安裝。安裝過(guò)程與普通Liunx安裝過(guò)程相似。安裝完成后,可使用web瀏覽器登錄EXSi。登錄EXSi第一步要設(shè)置網(wǎng)卡直通,把PC主機(jī)的網(wǎng)卡接入EXSi進(jìn)行管理。接著添加虛擬交換機(jī),根據(jù)圖2所示的邏輯連接圖,wlan交換機(jī)連接PC機(jī)的0號(hào)接口,而lan1,lan2和lan3交換機(jī)分別連接PC機(jī)的1號(hào),2號(hào)和3號(hào)接口,為各個(gè)路由系統(tǒng)的連接做好準(zhǔn)備。
5.2.2 各路由系統(tǒng)的安裝
各路由系統(tǒng)需要在ESXi系統(tǒng)上作為虛擬機(jī)運(yùn)行。因此需要登錄ESXi上,使用ESXi上的工具來(lái)進(jìn)行安裝。安裝過(guò)程類似在VMware workstation上安裝Linux操作系統(tǒng)。以安裝Router OS為例,首先新建虛擬機(jī),設(shè)置客戶機(jī)操作系統(tǒng)系列Linux,以及存儲(chǔ)設(shè)置;接著創(chuàng)建目錄,上傳Router OS固件;接著添加PCI設(shè)備,其實(shí)就是虛擬網(wǎng)口,安裝之后可以連接虛擬交換機(jī)接口;最后完成安裝。
5.2.3 各路由系統(tǒng)的連接和配置管理
各個(gè)路由系統(tǒng)安裝完成之后,根據(jù)之前的邏輯連接設(shè)計(jì)在把各個(gè)路由系統(tǒng)通過(guò)EXSi上的虛擬交換機(jī)連接起來(lái),組成一個(gè)功能強(qiáng)大的復(fù)合型的路由器平臺(tái)。接下來(lái)根據(jù)各個(gè)路由系統(tǒng)在平臺(tái)擔(dān)任的功能角色進(jìn)行配置。以負(fù)責(zé)主路由的Router OS的為例說(shuō)明。
5.2.3.1 Router OS登錄
設(shè)置使用WinBox,首先Winbox可以通過(guò)mac地址找到Router OS系統(tǒng),初始使用mac地址登錄,設(shè)置IP地址之后,可以用ip地址登錄,初始密碼為空。
5.2.3.2 設(shè)置網(wǎng)口和地址
Router OS系統(tǒng)上的一個(gè)接口,此接口連接EXSi上名為wlan虛擬交換機(jī),此交換機(jī)連接PC主機(jī)的一個(gè)0號(hào)網(wǎng)口,因此設(shè)置此接口為撥號(hào)口,定義為wan口。其它接口作為連接其它路由系統(tǒng)的接口,定義為lan口,根據(jù)邏輯連接圖配置IP地址。
接著實(shí)現(xiàn)PPPOE撥號(hào),定義各一個(gè)PPPOE client接口,選擇wan口作為撥號(hào)出口,設(shè)置撥號(hào)的賬號(hào)和密碼。
5.2.3.3 設(shè)置防火墻和外部DNS
Router OS自帶防火墻功能,在防火前選項(xiàng)中新建NAT規(guī)則,在“action”選項(xiàng)卡中,選擇masquerade,地址偽裝選項(xiàng),這樣防火墻的NAT就設(shè)置完成了。然后設(shè)置防火前的過(guò)濾規(guī)則,如禁止某些IP地上網(wǎng),禁止訪問(wèn)某些外網(wǎng)IP地址。在DNS選項(xiàng)卡中設(shè)置外部互聯(lián)網(wǎng)運(yùn)營(yíng)商提供的DNS地址,為內(nèi)部用戶連接互聯(lián)網(wǎng)提供DNS解析服務(wù)。
除了上面的主路由Router OS的設(shè)置外,還需要完成擔(dān)任DNS緩存功能的Router OS設(shè)置;負(fù)責(zé)DNS分流的Open WRT的設(shè)置;負(fù)責(zé)DHCP功能的pfsense-1的設(shè)置;負(fù)責(zé)企業(yè)內(nèi)網(wǎng)DNS解析服務(wù)的pfsense-2的設(shè)置。完成這些設(shè)置之后,這臺(tái)高性能的路由平臺(tái)才能正常工作。
業(yè)務(wù)測(cè)試是設(shè)備集成開發(fā)必不可少的重要環(huán)節(jié)。平臺(tái)在開發(fā)過(guò)程中,始終堅(jiān)持變開發(fā)變測(cè)試的做法,在不同的階段測(cè)試相應(yīng)的功能。例如,在完成ESXi的邏輯交換機(jī)連接物理PC機(jī)接口后,通過(guò)連接網(wǎng)線,測(cè)試EXSi對(duì)物理接口的狀態(tài)獲取。在各個(gè)路由系統(tǒng)接口完成連接并配置IP地址之后,測(cè)試各個(gè)接口的連接是否正常。在完成安裝主路由Router OS之后進(jìn)行配置防火墻。測(cè)試防火墻的功能。
本文對(duì)軟路由平臺(tái)進(jìn)行分析、設(shè)計(jì),運(yùn)用WMware EXSi虛擬機(jī)架設(shè)平臺(tái),安裝各種路由系統(tǒng)包括Router OS、Open WRT和Pfsense,使用虛擬交換機(jī)實(shí)施連接系統(tǒng)內(nèi)部和主機(jī)外部網(wǎng)卡,實(shí)現(xiàn)一個(gè)功能強(qiáng)大的軟路由器。從平臺(tái)運(yùn)行的情況來(lái)看,能有效的進(jìn)行網(wǎng)絡(luò)流量分流,并有效的限制內(nèi)部用戶的上網(wǎng)行為。為中小型企業(yè)提供一個(gè)低成本的網(wǎng)絡(luò)管理中心平臺(tái)選項(xiàng)。