崔曉龍, 劉 欣, 王建萍, 張 敏, 邊勝琴
(北京科技大學計算機與通信工程學院,北京 100083)
計算機網絡實踐教學是學生掌握計算機網絡知識的必要教學環節,是對計算機網絡理論的實現與升華,在課堂教學的基礎上,學生獨立完成實驗教學規定的實驗內容。然而,傳統實驗內容往往以驗證型實驗為主,教師針對不同的網絡協議設計若干實驗,學生依照操作步驟完成實驗并觀察現象,這使傳統的實驗教學內容脫離實際網絡應用環境,學生難以將所學知識付諸真實應用[1]。另外,現有實驗室設備數量有限且類型往往是單一的,難以支持學生完成復雜的綜合設計實驗,并且無法讓學生體驗不同廠家不同類型設備的區別,故而實際教學中選擇網絡仿真軟件來作為硬件環境的輔助,EVE-NG 可模擬Cisco、H3C、Huawei、Juniper等眾多廠商不同類型的設備,提供了仿真度較高的路由器、交換機,支持多用戶通過Web 訪問并管理該平臺的操作模式,能快速部署配置虛擬環境,有功能強大、擴展性強、便于學生上手等眾多優點[2]。
課程基于EVE-NG 軟件來設計實驗內容,以各類不同網絡實際需求為背景,以培養學生解決復雜工程問題的能力為目標,要求學生首先根據實驗指導書完成驗證型實驗內容,以對各種網絡協議有更深的理解和認識,然后探索型實驗給出網絡拓撲和簡單的步驟要求(不給出操作過程和配置命令),讓學生對各種協議和實驗原理進行更加深入的分析,綜合型實驗則是目前較為缺乏的,給出應用場景讓學生設計并組建符合需求、結構合理、功能完善的網絡,如校園網或企業網,要求學生按照網絡工程的原則,依照需求分析、網絡拓撲設計、IP地址規劃和VLAN劃分、路由設計、網絡仿真實現與測試等環節進行展開,最終實現符合真實網絡功能需求的網絡設計,為今后從事計算機網絡工程的設計、維護與管理,以及后續專業課程的學習打下堅實的理論和實踐基礎。
EVE-NG(全稱Emulated Virtual Environment-Next Generation),不僅可以模擬網絡設備,也可以運行一切虛擬機。理論上,只要能將虛擬機的虛擬磁盤格式轉換為qcow2 都可以在EVE-NG上運行。所以,EVE-NG可以算得上是仿真虛擬環境。它融入了經典模擬器Dynamips、IOL(Cisco IOS on Linux)和虛擬化模擬器QEMU(Quick Emulator),其中Dynamips是一個用于運行Cisco路由器真實的操作系統,IOL 是運行在Linux上的Cisco IOS,比Dynamips資源占用小且更好地支持二層交換特性,QEMU 是虛擬化領域非常著名的開源產品,可運行眾多廠商、不同類型的網絡設備。
路由信息協議(Routing Information Protocol,RIP)是由施樂(Xerox)在20 世紀70 年代開發的,是應用較早、使用較普遍的內部網關協議(Interior Gateway Protocol,簡稱IGP),適用于小型同類網絡,是典型的距離矢量(distance-vector)協議,它使用跳數來衡量到達目的網絡的距離。在RIP 中,路由器到它直接相連網絡的跳數為0,通過與其直接相連的路由器到達的下一個緊鄰的網絡跳數為1,依此類推,每多經過一個網絡,跳數加1。為限制收斂時間,RIP規定大于等于16的跳數被定義為無窮大,即目標網絡不可達,故而其不適合應用于大型網絡。
EVE-NG 運行于Ubuntu 操作系統中,可通過VMware等虛擬機軟件進行安裝,也可以直接安裝在物理機中,為了讓學生體會全部環境搭建過程,采用OVA模板將其安裝到個人電腦的虛擬機軟件中,具體安裝步驟如下[3-5]:
(1)OVA 模板部署EVE-NG。將準備好的OVA模板文件導入到VMware 中,并根據物理機硬件資源的情況,盡可能多的給EVE-NG 分配內存和CPU 資源,這將影響虛擬設備的運行效率,將網卡設置為橋接模式并且通過DHCP獲取IP地址。
(2)EVE-NG 初始化。安裝完成后需要對EVENG進行一些初始化配置,啟動虛擬機后首次登錄需要設置主機名、設置域名、設置EVE-NG 管理地址、指定NTP服務器、選擇連接因特網方式。需要重點設置管理地址,支持DHCP獲取和靜態設置,要保證能獲取到地址否則啟動系統時可能出現卡在開機界面的情況。
(3)導入鏡像。將常用的Dynamips 設備、IOL 設備以及QUME設備的鏡像導入到EVE-NG 虛擬機中,獲取到鏡像文件后,需要將其上傳到虛擬機的相應目錄中,然后修改權限,保證對該鏡像文件有讀取權限,完成后可在Web界面上進行測試運行。
(4)登錄并管理。由步驟(2)中提供的管理地址用瀏覽器登錄EVE-NG 管理界面,即可在頁面中進行各種操作,如對用戶、系統和文件等的管理,以及建立Lab并在其中選擇各種設備節點,進而搭建網絡拓撲并進行各種實驗。
通過多年的課程實踐,逐步將課程內容進行分層設計與實施,讓學生在實驗時循序漸進、由淺入深的對網絡知識進行學習和探索。
基礎驗證型實驗是以基本知識和動手能力為基礎,讓學生了解各種網絡設備的功能、接口以及各種線纜的連接方式等,學習各種網絡協議的應用場景和配置方法。驗證型實驗項目和對應的實驗內容如表1 所示。基礎實驗項目由指導書給出網絡拓撲結構,學生據其進行連線和相應的配置,來觀察實驗現象,如對VLAN的劃分實驗,學生可觀察同一VLAN 和不同VLAN之間網絡連通性,靜態路由實驗學生可觀察配置前后路由表的變化,并了解靜態路由表項的含義。通過這些基礎實驗,讓學生快速地將所學的知識落地,理解簡單的網絡原理性的知識,為進一步深入學習和探索打下基礎。
進階探索型實驗,讓學生在學會了基本配置的基礎上深入了解各種協議的原理以及對實驗難度進行提高,實驗項目如表2 所示。例如,在學習了OSPF的基礎配置之后,學生想進一步了解OSPF 協議的工作原理,可對截獲的OSPF報文進行分析,可以獲得鏈路狀態信息交互的過程以及對SPF 的計算過程進行分析等。

表1 驗證型實驗項目

表2 探索型實驗項目
創新綜合型實驗將面向不同的應用場景,提出不同的應用通信需求,特點是網絡規模較大,通信場景較為復雜,學生采用虛擬軟件進行實驗,并用工程化的思想來對應用進行需求分析、設備選型、網絡設計、配置并最終進行測試,學生將運用所學到的知識,從不同的角度提出不同的設計方案,以培養創新思維和創新能力。各種綜合項目中將包含不同的應用需求,學生可根據學習到的知識來選擇可實現相應功能的技術,如對于路由協議的選擇,學生可根據網絡規模等因素來選取是采用靜態路由還是RIP 或OSPF 協議,同時可讓學生對不同的設計方案進行測試對比,以期找到應用場景中較好的解決方案。目前已有綜合實驗項目如表3 所示。
以中小企業網絡設計為例,某公司下設研發部、市場部、人力資源部、網絡運維部4 個部門,其中研發部有計算機30 臺、市場部有計算機20 臺,人力資源部有計算機5 臺,網絡運維部有計算機3 臺,另外有4 臺服務器組成的服務器群提供Web、FTP、DNS 等各種服務。要求完成該企業網絡的設計、架構、配置和管理功能,給出如圖1 所示的示例拓撲,對于各類設備選型以及協議配置需要由學生自己來完成。

圖1 中小企業網絡拓撲方案設計
以RIP路由協議為例,通過EVE-NG 軟件設計驗證型、探索型和綜合型實驗,其中驗證型實驗拓撲結構往往較為簡單,由學生完成基本配置和抓包實驗,觀察實驗現象;探索型實驗拓撲結構往往是需要教師精心設計的,通過合理的設計讓學生能夠深入理解網絡原理;綜合型實驗拓撲結構往往較為復雜,將面向實際應用需求,設計并搭建滿足要求的網絡[6-7]。
在EVE-NG模擬器上實現如圖2 所示的網絡拓撲,讓學生首先配置PC 設備和路由器各接口的IP 地址,配置完成之后進行兩臺PC 之間的連通性測試,可以發現此時是不連通的,可查看路由器R1 和R2 的路由表如圖3 所示,此時路由器僅包含直連網段的路由信息,缺少到非直連網段的路由信息。

圖2 RIP配置實驗網絡拓撲

圖3 路由器R1和R2的路由表(未配置RIP)
接下來在路由器R1 和R2 上分別配置RIP 路由協議,配置方法如圖4 所示。采用ping 命令來測試兩臺PC之間的連通性,此時可以發現PC 之間是連通的,查看如圖5 所示的路由表,此時兩臺路由器均生成一條新的路由信息,是通過RIP 路由協議生成的到非直連網段的路由信息。

圖4 路由器R1和R2配置RIP協議

圖5 路由器R1和R2的路由表(配置RIP后)
在學習了RIP的基本配置之后,讓學生對RIP 的協議原理進行更加深入的探索和分析,通過截取RIP報文,分析距離矢量算法的計算過程。按照如圖6 所示的拓撲圖完成連接,并配置好IP地址[8]。
首先在PC1、PC2 和PC3 上運行Wireshark(一定要先運行),然后在各三層交換機和路由器上配置RIP。配置完成后,各設備都可以正常通信。觀察S1、R1、R2 的路由表可發現由RIP 路由協議生成的路由表項,其中S2 的路由表項如圖7 所示,到192.168.1.0 的跳數是2,到192.168.2.0 的跳數是1,這是如何得到的?

圖6 RIP算法分析實驗網絡拓撲

圖7 核心交換機S2的路由表
分析PC2 上的Wireshark 報文,如圖8 所示,該報文源地址192.168.2.254,是S1 從Vlan100 接口發送的廣播報文,其RIP報文段包括一條選路信息,目的地址是192.168.1.0,跳數是1,表示從Vlan100 接口收到的報文經過一跳可到達網絡192.168.1.0,S1 將此消息廣播出去,以讓鄰居路由器知道。

圖8 核心交換機S1廣播的RIP報文
查看R1 的路由表如圖9 所示,此時192.168.1.0的路由信息已經加入R1 路由表中,跳數為1。通過在PC3 上截取的報文觀察R1 廣播的RIP 報文,如圖10所示,可發現該報文段包含兩條選路信息,第1 條是到目的地址192.168.1.0 的,跳數是2,表示從R1 的e0/1接口收到的報文須經過2 跳可到達該目的網絡;第2條是到目的地址192.168.2.0 的,跳數是1。此時S2將把新收到的192.168.1.0 網絡的路由信息加入到路由表中。

圖9 企業邊界路由器R1的路由表

圖10 R1廣播的RIP報文
通過該過程,可以發現S1 向網絡上廣播自己已有的路由信息192.168.1.0,跳數為1(直連網絡原度量值0 加上發送附加度量值1),R1 收到該信息后,檢查自己的路由表,發現沒有到該網絡的路由信息,所以將該信息加入到路由表中,然后將該路由信息繼續廣播出去,跳數改成2(原度量值1 加上發送附加度量值1),同時廣播的還有192.168.2.0 網段的路由信息,跳數為1(直連網絡原度量值0 加上發送附加度量值1),最后S2 收到該報文后,同樣檢查自己的路由表,發現沒有該網段的路由信息后將該路由加入到路由表中,得到如圖7 所示的路由表。
在學習了基礎知識并進行了深入分析之后,學生將通過完成實際應用場景下的網絡設計與實現來將所學的知識付諸應用,該應用案例往往涉及多種綜合技術,需要學生進行深入分析、設計與測試才能實現較好的解決方案。以表3 中的中小企業網絡設計為例,完成相應的功能要求,通過ENE-NG 完成的網絡拓撲如圖11 所示[9]。

圖11 中小企業網絡拓撲功能設計
4.3.1 IP地址規劃與VLAN劃分
根據實際需求,在各部門之間隔離沖突域,同時要保證網絡互聯互通,首先需要合理分配IP 和劃分VLAN,將各個部門劃分到不同的VLAN 中,地址規劃采用192.168.*.*/24 的私網地址,同時為了方便管理,約定第3 個字節代表部門,第4 個字節代表部門內的設備編號,如IP地址192.168.1.16,表明該計算機是研發部的16 號設備;另外為研發部分配192.168.1.0/24 的網段,可容納254 臺主機,足以滿足該部門已有設備需求,同時為日后網絡規模擴展留有了余地,另外在三層交換機開啟路由功能,在其上創建虛接口并分配IP地址作為不同部門設備的網關地址,以實現不同VLAN的連通。為企業內部各部門劃分VLAN以及每個VLAN的IP網段、子網掩碼、網關配置等如表4所示。

表4 IP地址規劃與VLAN劃分
在核心交換機和路由器設備上配置各接口的IP地址,配置如圖12、13 所示。

圖12 核心交換機S1各接口IP地址配置

圖13 企業邊界路由器R1各接口IP地址配置
4.3.2 路由協議配置
對于中小型企業網絡,考慮采用RIP路由協議,一方面網絡規模不大,采用RIP 路由協議完全可以滿足需求,另一方面采用動態路由也減少了管理員手工配置路由的負擔,需要在企業邊界路由器R1 上和核心交換機S1 上配置RIP 路由協議以及向外轉發的默認路由,需要注意的是,邊界路由器R1 上的RIP協議僅通告內部網段的路由即可,而對于Internet 端的路由器,則沒有用于指明通往企業網中各個網絡的傳輸路徑的路由,即企業網對于Internet 端的路由器是不可見的。故而路由協議的配置如圖14、15 所示。

圖14 核心交換機S1配置路由協議

圖15 企業邊界路由器R1配置路由協議
4.3.3 NAT訪問外部網絡
(1)動態NAT。各內部網絡通過動態NAT 訪問Internet,即私有IP地址轉換為公有IP地址,由于公網IP數量有限,故而采用動態地址池方式進行地址轉換,邊界路由器上的配置如圖16 所示,其中地址池起始地址為202.202.1.10 ~202.202.1.15。另外,為了使財務部不能訪問Internet,可在access-list 10 中不允許財務部網段192.168.4.0 網段通過[10-12]。

圖16 企業邊界路由器動態NAT配置
(2)靜態NAT。對于服務器等設備,由于需要供外網進行訪問,需要提供給外網訪問的公網IP 地址,而服務器本身采用私有IP 地址,故而需要采用靜態NAT對地址進行轉換,在企業邊界路由器上的配置如圖17 所示,其中192.168.4.1 為服務器配置的靜態私有IP地址,而202.202.1.8 為外網訪問服務器的公有地址。

圖17 企業邊界路由器靜態NAT配置
4.3.4 ACL對訪問進行限制
在核心交換機上配置ACL 包過濾防火墻[13],使財務部不能被其他部門所訪問,配置如圖18 所示。

圖18 核心交換機ACL配置
完成上述配置后,將對網絡進行功能測試,首先將對基本連通性進行測試,均滿足訪問需求,通過在核心交換機和企業邊界路由器上show ip route 查看路由表,結果分別如圖19、20 所示。可以看到S1 上的路由表項有到各VLAN和Fa0/0 口的直連路由和向外轉發數據包的默認路由,R1 上的路由表項有直連路由以及通過RIP協議獲取到的到各部門的動態路由以及向外轉發的默認路由。值得注意的是,實際網絡中,外網路由器的路由表不應該知道內部網絡的路由信息,即應該僅包含直連路由,如圖21 所示。

圖19 核心交換機S1路由表

圖20 企業邊界路由器R1路由表

圖21 外網路由器路由表
內網PC訪問Internet之后,查看企業邊界路由器R1 上的地址轉換表如圖22 所示,可以看到,PC1 映射到外網IP地址202.202.1.10,兩臺內網服務器分別靜態映射到兩個外網IP,在邊界路由器上成功完成了地址轉換。

圖22 企業邊界路由器NAT表
借助EVE-NG 模擬器,可以較好地模擬各種網絡設備,對計算機網絡實踐課程的開展提供了較好的支撐,通過精心設計三層次的實踐教學內容,由基礎到探索再到綜合,引導學生從基礎知識到系統設計,從觀察驗證到解決實際問題,讓學生在分析問題-實現方案-解決問題的過程中提高了解決復雜工程問題的能力[14]。