孫光懿,賈英霞
(1.天津音樂學(xué)院圖書與信息中心,天津 300171;2.商丘經(jīng)濟貿(mào)易學(xué)校,河南 商丘 476000)
隨著教育信息化的高速發(fā)展,校園網(wǎng)已成為各院校重要的教學(xué)基礎(chǔ)設(shè)施,其能否安全穩(wěn)定運行直接關(guān)系著學(xué)校正常的教學(xué)秩序。當(dāng)前校園網(wǎng)所面臨的問題主要集中體現(xiàn)在:1)有些校園網(wǎng)出口線路無冗余(校園網(wǎng)只有中國教育科研網(wǎng)一條出口線路),單線路出口一旦出現(xiàn)故障,校園網(wǎng)用戶將無法正常訪問互聯(lián)網(wǎng)資源[1];2)出口帶寬不足且前往某些目標(biāo)地址時沒有使用最佳路徑,這必然會對校園網(wǎng)用戶訪問外網(wǎng)資源造成影響。為了有效解決上述問題,同時提高校園網(wǎng)用戶的滿意度,本文提出一種在校園網(wǎng)出口邊界處的2臺路由器中部署邊界網(wǎng)關(guān)協(xié)議(border gateway protocol,BGP)[2-3],并引入雙多宿ISP線路的方案(校園網(wǎng)使用2條鏈路與每家ISP相連)。部署B(yǎng)GP協(xié)議主要是為了實現(xiàn)對進入和離開校園網(wǎng)的數(shù)據(jù)流的路由方式和路由策略進行有效控制,從而使校園網(wǎng)用戶的數(shù)據(jù)流能夠按照最佳路徑訪問互聯(lián)網(wǎng)資源。引入雙多宿ISP線路不僅可提高校園網(wǎng)出口帶寬與連接互聯(lián)網(wǎng)線路的可靠性(當(dāng)一條ISP連接線路出現(xiàn)故障時,校園網(wǎng)用戶還可以通過另一條IPS連接線路對互聯(lián)網(wǎng)資源進行訪問),還可以為去往某些目的網(wǎng)絡(luò),提供更多控制路徑的余地。
現(xiàn)實中的互聯(lián)網(wǎng)是通過不同編號的自治系統(tǒng)(自治系統(tǒng)編號從1—65535,其中編號64512—65535預(yù)留給私用)互聯(lián)互通而構(gòu)成的。為了實現(xiàn)各自治系統(tǒng)之間的互聯(lián)互通,網(wǎng)絡(luò)管理者通常會在自治系統(tǒng)邊界路由器中部署B(yǎng)GP協(xié)議,用以交換各自治系統(tǒng)內(nèi)的網(wǎng)絡(luò)可達信息。BGP協(xié)議是一種在大型網(wǎng)絡(luò)中廣泛使用的路徑矢量路由協(xié)議。它是在EGP的基礎(chǔ)上逐步發(fā)展起來的,目前最新的版本為1995年發(fā)布的BGP-4,它具有高可擴展性、高協(xié)調(diào)性,支持路由增量更新、路由聚合、CIDR、VLSM、IPV6以及身份驗證等特點。其主要任務(wù)就是負(fù)責(zé)連接各自治系統(tǒng),并確保它們之間交換的路由信息無環(huán)路存在。與其他常見的動態(tài)路由協(xié)議如RIP、EIGRP、OSPF、ISIS相比,BGP協(xié)議不同之處為:1)按照動態(tài)路由協(xié)議作用范圍來劃分,BGP協(xié)議屬于外部網(wǎng)關(guān)協(xié)議(exterior gateway protocol,EGP)[4],而上述其他路由協(xié)議均屬于內(nèi)部網(wǎng)關(guān)協(xié)議(interior gatewary protocol,IGP)[5];2)度量值的選擇依據(jù)不同,BGP協(xié)議的度量值是基于路徑屬性的,而RIP協(xié)議的度量值是基于跳數(shù)的,EIGRP協(xié)議的度量值是基于復(fù)合度量值的,OSPF的度量值是基于鏈路開銷的;3)BGP協(xié)議的拓?fù)浣Y(jié)構(gòu)無須采用層次結(jié)構(gòu),而OSPF、ISIS等鏈路狀態(tài)協(xié)議的拓?fù)浣Y(jié)構(gòu)則須采用層次結(jié)構(gòu),一方面是為了將大型網(wǎng)絡(luò)小型化,另一方面是為了在網(wǎng)絡(luò)擴展時便于進行IP地址匯總;4)動態(tài)路由協(xié)議中只有BGP協(xié)議使用傳輸控制協(xié)議(TCP)作為自己的傳輸協(xié)議(端口號為179),因此BGP路由信息的傳輸被認(rèn)為是可靠的;5)BGP協(xié)議可按照策略對數(shù)據(jù)流的傳輸進行有效控制(可通過設(shè)置BGP屬性來實現(xiàn)),以便提高帶寬的使用效率;6)BGP協(xié)議的路由更新采用增量更新模式,而不像距離矢量路由協(xié)議一樣周期性的對路由表進行更新;7)BGP協(xié)議的下一跳是以自治系統(tǒng)為單位的,而不像上述其他路由協(xié)議一樣以路由器為單位。需要注意的是:BGP協(xié)議按照部署位置的不同,又可進一步分為IBGP和EBGP。位于同一自治系統(tǒng)中的2臺路由器,它們之間運行的BGP協(xié)議稱之為IBGP。IBGP主要用來在自治系統(tǒng)內(nèi)部交換BGP信息,并將上述信息傳播給其他自治系統(tǒng)(IBGP通告路由的管理距離為200,比任何一種IGP路由的管理距離都低)。在位于不同自治系統(tǒng)的路由器之間運行BGP協(xié)議時則稱之為EBGP(EBGP路由的管理距離為20,比任何一種IGP路由的管理距離都高)。由于EBGP鄰居之間沒有運行任何內(nèi)部網(wǎng)關(guān)協(xié)議,因此EBGP鄰居之間必須是物理直連的。
在收到外部自治系統(tǒng)的路由更新信息后,BGP協(xié)議需要決定使用哪條路徑前往目標(biāo)網(wǎng)絡(luò)(某些情況下,BGP表中存在不止一條可以到達某個目標(biāo)網(wǎng)絡(luò)的路徑)。對于這個目標(biāo)網(wǎng)絡(luò),BGP協(xié)議只能選擇一條去往該網(wǎng)絡(luò)的路徑,并將其作為最佳路徑,而那些沒有被選中的路徑依舊會被保存在BGP表中。需要明確的是:只有最佳路徑才會最終被加入到BGP路由器的IP路由表中。BGP協(xié)議最佳路徑選擇[6-7]過程并不復(fù)雜,主要有以下幾個步驟。第1步,選擇擁有最高權(quán)重的路由(權(quán)重屬性只能在思科路由器本地進行配置,并且不會向BGP鄰居進行傳播。當(dāng)BGP路由器與多個自治系統(tǒng)相聯(lián)時,可以依據(jù)權(quán)重屬性來決定訪問外部自治系統(tǒng)的數(shù)據(jù)流選擇路由器中的哪一個出口);第2步,如果路由的權(quán)值相同,則選擇本地優(yōu)先級最高的路由(本地優(yōu)先級屬性只發(fā)送給自治系統(tǒng)內(nèi)部的IBGP鄰居路由器,主要用來確定哪條路徑是去往外部自治系統(tǒng)的最佳路徑);第3步,如果路由的本地優(yōu)先級相同,則選擇本地路由器所通告的路由;第4步,如果路由均不是本地路由器所通告,則選擇穿越自治系統(tǒng)路徑最短的路由;第5步,如果穿越自治系統(tǒng)路徑長度相同,則按照(I 在GNS3網(wǎng)絡(luò)仿真環(huán)境下,筆者通過4臺思科3725路由器R1、R2、R3、R4以及1臺思科2950二層交換機SW1,虛擬構(gòu)建出擁有AS50、AS60、AS70 3個自治系統(tǒng)的大型網(wǎng)絡(luò)。其中,AS50為校園網(wǎng)所在自治系統(tǒng)編號,AS60為中國教育科研網(wǎng)所在自治系統(tǒng)編號,AS70為中國聯(lián)通所在自治系統(tǒng)編號,路由器R1、R2為校園網(wǎng)出口邊界路由器,路由器R3為中國教育科研網(wǎng)邊界路由器,路由器R4為中國聯(lián)通邊界路由器。網(wǎng)絡(luò)拓?fù)淙鐖D1所示??梢钥闯?,在AS50自治系統(tǒng)內(nèi)部共有VLAN10、VLAN20、VLAN30、VLAN40 4個網(wǎng)段,各網(wǎng)段用戶之間可以互相通信(VLAN10與VLAN20的三層網(wǎng)關(guān)建立在路由器R1中,VLAN30與VLAN40的三層網(wǎng)關(guān)建立在路由器R2中)。路由器R1、R2之間采用雙鏈路全互聯(lián)的方式運行IBGP,并禁用BGP同步。這樣不僅可以最大限度地減少自治系統(tǒng)內(nèi)IGP路由的傳輸、提高BGP的匯聚速度,還可以增加R1-R2鏈路的可靠性(即使有1條鏈路出現(xiàn)故障,也不會對IBGP分組的傳輸造成任何影響);而在AS50與AS60、AS50與AS70自治系統(tǒng)之間則采用 EBGP多跳來傳遞各自治系統(tǒng)內(nèi)部網(wǎng)絡(luò)可達信息(AS50所屬路由器R1有2條前往AS60所屬路由器R3的物理鏈路,AS50所屬路由器R2也有2條前往AS70所屬路由器R4的物理鏈路)。部署EBGP多跳既可提高自治系統(tǒng)之間鏈路的可靠性,又可在自治系統(tǒng)之間的2條鏈路上實現(xiàn)流量負(fù)載均衡。另外,由于校園網(wǎng)引入了多條ISP鏈路,因此有必要在AS50內(nèi)部的IBGP路由器中部署路由映射表修改本地優(yōu)先級屬性,從而確保實現(xiàn)對校園網(wǎng)用戶訪問互聯(lián)網(wǎng)資源的數(shù)據(jù)流進行有效控制,即當(dāng)校園網(wǎng)用戶訪問中國教育科研網(wǎng)資源時,數(shù)據(jù)流需經(jīng)校園網(wǎng)出口邊界路由器R1訪問目標(biāo)地址;當(dāng)校園網(wǎng)用戶訪問中國聯(lián)通資源時,數(shù)據(jù)流需經(jīng)校園網(wǎng)出口邊界路由器R2訪問目標(biāo)地址。 特別需要注意的是,如果自治系統(tǒng)BGP中轉(zhuǎn)路徑中存在沒有運行BGP協(xié)議的路由器,那么就必須啟用BGP同步,否則無法保證自治系統(tǒng)中路由信息的一致性(容易造成路由黑洞)。啟用BGP同步后,BGP協(xié)議只允許交換在IP路由表中已存在的BGP路由。禁用BGP同步以后,不論BGP路由是否存在于IP路由表中,BGP都可以對它進行通告。 圖1 校園網(wǎng)網(wǎng)絡(luò)拓?fù)鋱D 校園網(wǎng)內(nèi)二層交換機SW1的f2/0與f2/1端口被劃分為trunk端口(分別與路由器R1、R2的f0/0接口相連接),而f2/2與f2/3端口則被劃分為switch端口。VLAN10網(wǎng)段所屬終端計算機C1與二層交換機SW1的f2/2端口相連接,VLAN30網(wǎng)段所屬終端計算機C2與二層交換機SW1的f2/3端口相連接。另外,在AS60中的邊界路由器R3與AS70中的邊界路由器R4上分別建立LOOPBACK10和LOOPBACK11環(huán)回接口,用以模擬中國教育科研網(wǎng)服務(wù)器地址和中國聯(lián)通服務(wù)器地址。本次仿真實驗相關(guān)網(wǎng)絡(luò)設(shè)備接口及終端計算機IP地址分配方案如圖2所示。 圖2 相關(guān)網(wǎng)絡(luò)設(shè)備接口及終端計算機IP地址分配方案 在校園網(wǎng)邊界路由器R1、R2上采用單臂路由技術(shù)創(chuàng)建子接口,所創(chuàng)子接口IP地址即為校園網(wǎng)內(nèi)各VLAN網(wǎng)關(guān)地址。另外,本次仿真實驗所用4臺思科3725路由器R1、R2、R3、R4,接口配置過程相類似,在這里僅以路由器R1為例給出相關(guān)主要配置過程。 配置路由器 R1: R1(config-if)#int f0/0.1 //使用單臂路由技術(shù)創(chuàng)建子接口 R1(config-if)#encapsulation dot1Q 10 //封裝802.1Q協(xié)議 R1(config-subif)#ip addres 192.168.10.1 255.255.255.0 //設(shè)置VLAN10網(wǎng)關(guān)地址 R1(config-if)#int f0/0.2 R1(config-if)#encapsulation dot1Q 20 //封裝802.1Q協(xié)議 R1(config-subif)#ip addres 192.168.20.1 255.255.255.0 //設(shè)置VLAN20網(wǎng)關(guān)地址 在路由器上部署B(yǎng)GP協(xié)議時,需要預(yù)先知悉路由器所在自治系統(tǒng)的編號,只有這樣在建立BGP鄰居時,才可明確該路由器BGP鄰居的類別(如果router bgp命令中的自治系統(tǒng)編號與neighbor remoteas命令中的自治系統(tǒng)編號相同,則該鄰居為IBGP鄰居,否則為EBGP鄰居)。需要特別注意的是,每臺路由器上只能運行一個BGP進程,且前往鄰接路由器BGP分組的目標(biāo)地址必須為可達。只有這樣二者才可順利建立TCP連接,進而交換BGP路由表。 4.2.1 配置EBGP多跳 AS50所屬路由器R1與AS60所屬路由器R2之間運行BGP協(xié)議,且存在2條物理鏈路,因此二者之間建立的BGP會話為EBGP[10]。另外,為了增加EBGP會話的彈性,也為了保證路由器與分組的源IP地址能夠建立BGP關(guān)系,在路由器R1、R3中使用環(huán)回接口地址作為BGP更新的源地址[11-12](如果默認(rèn)使用路由器出站物理接口地址作為BGP更新的源地址,GBP會話可能會在某些情況下被中斷,例如物理接口出現(xiàn)故障,而眾所周知,只要路由器自身不發(fā)生故障,環(huán)回接口是永遠不會DOWN掉的)。由于路由器R1與R3之間無法運行內(nèi)部網(wǎng)關(guān)協(xié)議,因此若想到達對方的環(huán)回接口必須借助于靜態(tài)路由技術(shù)。相關(guān)具體配置過程如下所示。AS50所屬路由器R2與AS70所屬路由器R4之間EBGP多跳的配置過程與其相類似,故不再闡述。 1)配置路由器 R1。 R1(config)#router bgp 50 //進入BGP配置模式 R1(config-router)#neigh 172.19.1.1 remote-as 60 //指定BGP鄰居及所在的自治系統(tǒng) R1(config-router)#neigh 172.19.1.1 update-source loopback1 //指定BGP分組的源IP地址 R1(config-router)# neigh 172.19.1.1 ebgp-multi 2 //到BGP鄰居地址需要兩跳。第1跳到達路由器R2,第2跳到達路由器R2環(huán)回接口loopback1。 R1(config)# ip route 172.19.1.1 255.255.255.255 192.168.60.1 //配置到達路由器R2環(huán)回接口loopback1的靜態(tài)路由 R1(config)# ip route 172.19.1.1 255.255.255.255 192.168.60.2 //配置到達路由器R2環(huán)回接口loopback1的靜態(tài)路由 2)配置路由器 R3。 R3(config)#router bgp 60 //進入BGP配置模式 R3(config-router)#neigh 172.18.1.1 remote-as 50 //指定BGP鄰居及所在的自治系統(tǒng) R3(config-router)#neigh 172.18.1.1 update-source loopback1 //指定BGP分組的源IP地址 R3(config-router)# neigh 172.18.1.1 ebgp-multi 2 //到BGP鄰居地址需要兩跳。第1跳到達路由器R1,第2跳到達路由器R1環(huán)回接口loopback1。 R3(config)# ip route 172.18.1.1 255.255.255.255 192.168.60.1 //配置到達路由器R1環(huán)回接口loopback1的靜態(tài)路由 R3(config)# ip route 172.18.1.1 255.255.255.255 192.168.60.2 //配置到達路由器R1環(huán)回接口loopback1的靜態(tài)路由 4.2.2 配置IBGP[13] AS50所屬路由器R1、R2之間運行BGP協(xié)議,且存在2條物理鏈路,因此二者之間建立的BGP會話為IBGP。通過運行IBGP,可以使校園網(wǎng)內(nèi)2臺路由器R1、R2均擁有相同的外部自治系統(tǒng)BGP路由信息。需要注意的是,與EBGP鄰居間必須直連不同,IBGP鄰居間只需在邏輯上進行連接,以便能夠順利完成TCP 3次握手,從而建立鄰接關(guān)系。如果在自治系統(tǒng)內(nèi)的IBGP鄰居間存在多條可達路徑,通常專業(yè)技術(shù)人員會在IBGP路由器中建立環(huán)回接口,并將其IP地址作為BGP更新的源地址。路由器R1相關(guān)具體配置過程如下所示。 R1(config)#router bgp 50 //進入BGP配置模式 R1(config-router)#neigh 11.1.1.1 remote-as 50 R1(config-router)#neigh 11.1.1.1 update-source loopback2 //指定BGP分組的源IP地址 4.2.3 修改下一跳屬性 修改 BGP下一跳屬性[14]最主要的目的是為了解決下一跳可達問題。BGP協(xié)議雖然和IGP協(xié)議一樣也屬于逐跳路由協(xié)議,但是它的下一跳默認(rèn)為下一個自治系統(tǒng),而不是路由器。對于EBGP而言,下一跳為發(fā)送路由更新的EBGP鄰居路由器IP地址。對于IBGP而言,去往目標(biāo)地址的下一跳有可能為下一個自治系統(tǒng)入口IP地址,而不是發(fā)送BGP更新的IBGP鄰居IP地址。這樣一來就需要IBGP鄰居路由器在其IP路由表中遞歸查找如何去往下一個自治系統(tǒng)入口IP地址的路由條目。如果路由表中不存在這樣的路由條目,那么IBGP鄰居路由器將丟棄去往目標(biāo)地址的分組。在這里不允許BGP協(xié)議使用默認(rèn)的下一跳地址,而是強制BGP協(xié)議將路由更新的源IP地址作為下一跳地址。各路由器相關(guān)具體配置過程如下所示。 1)配置路由器 R1。 R1(config-router)#neigh 11.1.1.1 next-hop-self //發(fā)送路由更新時,路由器R1自己作為下一跳地址 R1(config-router)#neighbor 172.19.1.1 next-hop-self 2)配置路由器 R2。 R2(config-router)#neighbor 10.1.1.1 next-hop-self R2(config-router)#neighbor 172.20.1.1 next-hop-self 3)配置路由器 R3。 R3(config-router)#neighbor 172.18.1.1 next-hop-self 4)配置路由器 R4。 R4(config-router)#neighbor 172.21.1.1 next-hop-self 4.2.4 設(shè)定BGP將通告的網(wǎng)絡(luò) 將網(wǎng)絡(luò)通告到BGP中[15],通常使用network命令來進行(network命令支持VLSM與CIDR)。需要注意的是:1)如果在IBGP中禁用了同步,那么IBGP鄰居路由器將被允許使用該命令通告未存在于本地IP路由表中的路由條目;2)如果使用network命令時指定了子網(wǎng)掩碼,只有本地IP路由表中存在與該網(wǎng)絡(luò)完全匹配的路由條目時,該網(wǎng)絡(luò)才會被通告到BGP中。由于校園網(wǎng)內(nèi)各網(wǎng)段用戶均需對互聯(lián)網(wǎng)資源進行訪問,因此本次仿真實驗,有必要將校園網(wǎng)內(nèi)各網(wǎng)段地址及互聯(lián)網(wǎng)資源地址通告到BGP中。以路由器R1為例給出相關(guān)具體配置過程。路由器R2、R4的配置過程與其類似,不再闡述。 配置路由器 R1: R1(config)#router bgp 50 R1(config-router)# network 192.168.10.0 //將VLAN10網(wǎng)段通告到BGP中 R1(config-router)# network 192.168.20.0 //將VLAN20網(wǎng)段通告到BGP中 4.2.5 在AS50內(nèi)部署EIGRP 為確保實現(xiàn)校園各網(wǎng)段用戶間的互聯(lián)互通,也為了路由器R1與路由器R2能順利地進行BGP會話(路由器R1與路由器R2的BGP鄰居地址分別為對方所建立的LOOPBACK2接口地址,但是2個環(huán)回接口處于不同的網(wǎng)段中),筆者在校園網(wǎng)中部署EIGRP動態(tài)路由協(xié)議(配置靜態(tài)路由也可實現(xiàn)上述目標(biāo),但較為繁瑣)。以路由器R1為例,給出相關(guān)具體配置過程。路由器R2的配置過程與其類似,不再闡述。 配置路由器 R1: R1(config)#router eigrp 1 R1(config-router)# network 192.168.10.0 R1(config-router)# network 192.168.12.0 R1(config-router)# network 192.168.13.0 R1(config-router)#network 172.18.0.0 R1(config-router)# network 192.168.60.0 4.2.6 配置路由映射表修改本地優(yōu)先級屬性 本地優(yōu)先級屬性[16]只在自治系統(tǒng)內(nèi)的IBGP路由器之間進行傳播,而不會發(fā)送給EBGP鄰居(如果EBGP鄰居收到了本地優(yōu)先級值,將忽略掉它)。其主要作用就是負(fù)責(zé)對離開自治系統(tǒng)的最佳路徑進行選擇,通常IBGP路由器本地優(yōu)先級越高(本地優(yōu)先級默認(rèn)為100),路徑越優(yōu)先。為確保對校園網(wǎng)用戶訪問互聯(lián)網(wǎng)資源的數(shù)據(jù)流進行有效控制,通過在校園網(wǎng)內(nèi)2臺IBGP路由器R1、R2中部署路由映射表進而修改本地優(yōu)先級的方式來實現(xiàn)上述目標(biāo)。在路由器R1中部署的路由映射表負(fù)責(zé)對來自路由器R3的網(wǎng)絡(luò)192.168.90.0的BGP更新進行修改,將本地優(yōu)先級設(shè)置為150,從而使其作為最佳路徑。在路由器R2中部署的路由映射表負(fù)責(zé)對來自路由器R4的網(wǎng)絡(luò)192.168.92.0的BGP更新進行修改,將本地優(yōu)先級設(shè)置為600,從而使其作為最佳路徑。為便于讀者理解,在這里給出路由器R1、R2的相關(guān)具體配置過程。 1)配置路由器 R1。 R1(config-router)#neighbor 172.19.1.1 route-map sunchang in //將路由映射表關(guān)聯(lián)到EBGP鄰居 R1(config)#route-map sunchang permit 10 //建立路由映射表 R1(config-router-map)#match ip add 66 //是否與編號為66的訪問控制列表相匹配 R1(config-router-map)#set local-prefer 150 //將本地優(yōu)先級設(shè)置為150 R1(config)#route-map sunchang permit 15 R1(config)#access-list 66 192.168.90.0 0.0.0.255 //建立編號為66的標(biāo)準(zhǔn)訪問控制列表 2)配置路由器 R2。 R2(config-router)#neighbor 172.20.1.1 route-map sunchang in //將路由映射表關(guān)聯(lián)到EBGP鄰居 R2(config)#route-map sunchang permit 10 //建立路由映射表 R2(config-router-map)#match ip add 66 //是否與編號為66的訪問控制列表相匹配 R2(config-router-map)#set local-prefer 600 //將本地優(yōu)先級設(shè)置為600 R2(config)#route-map sunchang permit 15 R2(config)#access-list 66 192.168.92.0 0.0.0.255 //建立編號為66的標(biāo)準(zhǔn)訪問控制列表 完成上述配置后,IBGP路由器R1、R2的BGP路由表如圖3、圖4所示。 圖3 路由器R1的BGP路由表 圖4 路由器R2的BGP路由表 以路由器R1為例,BGP路由表中的第1欄“*”,代表下一跳的地址是有效的;第2欄“>”代表該路由被選為最佳路由;第3欄“i”代表該路由是由IBGP鄰居通告的;第4欄Network代表路由器已獲悉的網(wǎng)絡(luò);第5欄NextHop代表路由下一跳地址(如果為0.0.0.0,則表明該路由是本地路由器通告的);其余的4欄分別為路由的4個BGP屬性:度量值、本地優(yōu)先級、權(quán)重以及路徑。從圖3中可以看出,去往網(wǎng)絡(luò)192.168.90.0的最佳路由的本地優(yōu)先級已變?yōu)?50,去往網(wǎng)絡(luò)192.168.92.0的最佳路由的本地優(yōu)先級已變?yōu)?00。 首先使用PING命令測試校園網(wǎng)vlan10網(wǎng)段所屬終端計算機C1與vlan30網(wǎng)段所屬終端計算機C2之間的連通性;然后以終端計算機C2為例,使用TRACE命令分別對中國教育科研網(wǎng)服務(wù)器地址192.168.90.36和中國聯(lián)通服務(wù)器地址192.168.92.10進行路由測試,并查看路由器R1、R2中的IP路由表。 1)使用PING命令測試終端計算機C1與C2之間的連通性。 VPCS[1]>ping 192.168.30.30 192.168.30.30 icmp_seq=1 ttl=254 time=150.651 ms 192.168.30.30 icmp_seq=2 ttl=254 time=120.101 ms 192.168.30.30 icmp_seq=3 ttl=254 time=56.091 ms 2)使用TRACE命令測試終端計算機C2訪問192.168.90.36的路由過程。 VPCS[2]>trace 192.168.90.36 trace to 192.168.90.36,8 hops max,press Ctrl+C to stop 1 192.168.30.1 69.004 ms 19.001 ms 9.000 ms 2 13.1.1.1 57.003 ms 39.002 ms 29.002 ms 3 *192.168.60.1 87.005 ms 3)使用TRACE命令測試終端計算機C2訪問192.168.92.10的路由過程。 VPCS[2]> trace 192.168.92.10 trace to 192.168.92.10,8 hops max,press Ctrl+C to stop 1 192.168.30.1 17.001 ms 9.000 ms 9.000 ms 2 *192.168.70.1 82.105 ms 4)查看路由器R1、R2中的IP路由表,如圖5、圖6所示。 通過上述測試不難發(fā)現(xiàn):1)校園網(wǎng)各網(wǎng)段用戶之間可以相互通信;2)實現(xiàn)了對校園網(wǎng)用戶訪問互聯(lián)網(wǎng)資源的數(shù)據(jù)流進行有效控制。當(dāng)校園網(wǎng)用戶訪問中國教育科研網(wǎng)資源時(例如訪問地址192.168.90.36),數(shù)據(jù)流首先到達校園網(wǎng)出口邊界路由器R1,然后再經(jīng)AS60所屬路由器R3到達目標(biāo)地址(從路由器R1的BGP路由表圖3中可得知,去往192.168.90.0網(wǎng)絡(luò)的最佳路由的下一跳地址為172.19.1.1,路徑為60 i;從路由器R2 的BGP路由表圖4中可得知,去往192.168.90.0網(wǎng)絡(luò)的最佳路由的下一跳地址為10.1.1.1,路徑同樣為60 i )。當(dāng)校園網(wǎng)用戶訪問中國聯(lián)通資源時(例如訪問地址192.168.92.10),數(shù)據(jù)流首先到達校園網(wǎng)出口邊界路由器R2,然后再經(jīng)AS70所屬路由器R4到達目標(biāo)地址(從路由器R1 的BGP路由表圖3中可得知,去往192.168.92.0網(wǎng)絡(luò)的最佳路由的下一跳地址為11.1.1.1,路徑為70 i;從路由器R2 的BGP路由表圖4中可得知,去往192.168.92.0網(wǎng)絡(luò)的最佳路由的下一跳地址為172.20.1.1,路徑同樣為70 i )。 圖5 路由器R1的IP路由表 圖6 路由器R2的IP路由表 關(guān)閉路由器R4,模擬中國聯(lián)通出口鏈路發(fā)生故障。以終端計算機C2為例,使用TRACE命令分別對中國教育科研網(wǎng)服務(wù)器地址192.168.90.36和中國聯(lián)通服務(wù)器地址192.168.92.10進行路由測試,并查看路由器R1、R2中的IP路由表。測試發(fā)現(xiàn),即使中國聯(lián)通出口鏈路發(fā)生故障,校園網(wǎng)用戶依舊可以正常訪問互聯(lián)網(wǎng)資源。只是在路由器R1、R2的IP路由表中去往網(wǎng)絡(luò)192.168.92.0的下一跳地址發(fā)生了改變,其中路由器R1的下一跳變?yōu)?72.19.1.1,路由器R2的下一跳地址變?yōu)?0.1.1.1。中國聯(lián)通出口鏈路發(fā)生故障后,路由器R1、R2的IP路由表如圖7、圖8所示。 圖7 路由器R1的IP路由表 圖8 路由器R2的IP路由表 以校園網(wǎng)vlan30網(wǎng)段所屬終端計算機C2為例,測試其在本次網(wǎng)絡(luò)改造前與網(wǎng)絡(luò)改造后,訪問中國聯(lián)通服務(wù)器地址192.168.92.10的網(wǎng)速。如表1所示,經(jīng)過本次網(wǎng)絡(luò)改造,校園網(wǎng)用戶訪問外網(wǎng)資源的網(wǎng)速有了明顯提升。 表1 終端計算機C2在網(wǎng)絡(luò)改造前與改造后訪問聯(lián)通服務(wù)器網(wǎng)速對比 為解決當(dāng)前校園網(wǎng)所面臨的校園網(wǎng)出口線路無冗余、出口帶寬不足且前往某些目標(biāo)地址時沒有使用最佳路徑的問題,優(yōu)化了校園網(wǎng)出口結(jié)構(gòu),引入了中國教育科研網(wǎng)與中國聯(lián)通2條出口鏈路,并在校園網(wǎng)2臺出口邊界路由器中部署了BGP協(xié)議。上述解決措施,不僅有效提高了校園網(wǎng)出口鏈路的可靠性(即使某條校園網(wǎng)出口線路發(fā)生網(wǎng)絡(luò)故障,也不會對校園網(wǎng)用戶訪問互聯(lián)網(wǎng)資源造成影響),還使校園網(wǎng)用戶的數(shù)據(jù)流能夠按照最佳路徑訪問互聯(lián)網(wǎng)資源。3 仿真實驗
3.1 網(wǎng)絡(luò)拓?fù)錁?gòu)建[8-9]
3.2 相關(guān)網(wǎng)絡(luò)設(shè)備IP地址分配
4 網(wǎng)絡(luò)設(shè)備具體配置過程
4.1 網(wǎng)絡(luò)設(shè)備接口配置
4.2 配置BGP協(xié)議
5 網(wǎng)絡(luò)試驗與驗證
5.1 網(wǎng)絡(luò)正常的情況
5.2 網(wǎng)絡(luò)故障的情況
5.3 網(wǎng)絡(luò)改造前與網(wǎng)絡(luò)改造后校園網(wǎng)用戶網(wǎng)速對比
6 結(jié)束語