張奇支 張朗挺
(華南師范大學計算機學院,廣東 廣州 510631)
2020年春暴發的新冠病毒因為可以人傳人,已經成為了全球公共衛生領域的重大災難。為了避免疫情擴散,全國啟動重大突發公共衛生事件一級響應,學生不返校,在家通過網絡進行線上學習。為了保證教學質量,很多教育界的專家學者以及主講老師從授課平臺、授課形式、考核方式等多個角度進行了探討和分析,為廣大一線教師提供教學指導[1-3]。在實際教學過程中,很多理論課的進展比較順利,但是一些需要到實驗室動手實驗的課程在推進過程中會遇到一些麻煩。有些學校采取推遲開課的方式,將相關課程推遲到暑假末開展,有些學校則采用虛擬仿真平臺[4,5]。虛擬仿真實驗的本質是操作者在軟件模擬的虛擬環境中,通過與軟件交互進行實驗,得到模擬反饋,并不與實際設備產生任何聯系。因此,實驗效果與可信度深受仿真平臺的影響。
針對計算機網絡實驗,目前市面上存在很多能模擬主流廠商網絡設備的仿真軟件,但它們跟實驗室環境下的真實實驗相比,還存在一些差距。針對疫情期間,學生無法返校,但主講教師可以進實驗室的情況,我們在原實驗室的硬件基礎上,進行了系統優化,讓學生在家里通過遠程桌面訪問軟件,成功完成了全部實驗內容。學生實驗表現總體符合教學要求,學生滿意度也較高。
我們的網絡工程實驗室共有5 組小機柜供學生進行實驗,每組機柜有9臺網絡設備和4臺PC,具體配置為:華為交換機Quidway E026-SI 2 臺,每臺24 個交換口;華為交換機Quidway S3928 1臺,每臺24個交換口;華為路由器Quidway AR28-11 4臺,每臺2個路由以太口,2個串行口;華為路由器AR1220-S 2 臺,每臺2 個路由以太口,7 個交換以太口;聯想PC機4臺,每臺1個以太網接口。實驗室還有一個大機柜,5個小機柜通過大機柜的核心層交換機可以連接到校園網。實驗室拓撲結構如圖1所示。
為了讓操作者在家操作與在實驗室操作時的體驗盡量相同,與文獻[6]中基于telnet接入的方式不同,這里我們采用遠程桌面接入的方式來訪問實驗室。考慮到學生接入端的多樣性,采用TeamViewer 作為接入軟件。TeamViewer 同時支持對公網、私網的訪問,支持從手機和平板端接入。疫情期間,部分學生家中沒有PC 機,只有手機或平板,它的這一特點彌補了沒有PC機的不足。此外,在訪問主機數不多時,TeamViewer完全免費,不存在版權問題。
為了完成普通實驗的接入,為每臺PC 機加裝一塊網卡(NIC),使之增加一個以太網接口與外網連通。原來的以太網接口僅供實驗室主機之間的訪問,不訪問外網。由于實驗室使用192.168.23.0/24 網段訪問外網,將每個新增接口設為其中的一個IP地址即可,默認網關為192.168.23.254/24。
在每臺PC 上以后臺方式運行TeamViewer,記錄下每臺機器上TeamViewer的ID和密碼。然后將需要做實驗的學生分組,告訴他們登錄對應的主機。學生即可在家中完成在實驗室電腦前完成的一切操作。唯一的差別是網線的插接需要教師在實驗室協助完成,學生少了動手的體驗。
通過這種方式,在今年上半年,我們完成了計算機網絡課程中所有實驗,包括使用抓包軟件抓包分析報文格式、ARP欺騙、路由實驗和交換機實驗等。
2.2節提到的方案,對原實驗環境的改動最小,也最接近現場實驗的情景。但美中不足的是,在現場沒有人協助的情況下,操作者無法操作所有網絡設備。當前,一臺PC 通過console 線只連接到一臺網絡設備。一個機柜中有9 臺網絡設備,但只有4臺PC。為了滿足部分能力強的同學開展個性化實驗,我們依照文獻[6]的思路,結合TeamViewer 的特點,提出以下增強方案。
圖2 以機柜A 為例,展示了單個機柜的接入拓撲。圖2中,SW1 和SW2 是華為交換機Quidway E026-SI,SW3 是華為交換機Quidway S3928,RT1 到RT4 是華為路由器Quidway AR28-11,RT5 和RT6 是華為路由器AR1220-S,PC1 到PC4 是操作PC,機柜控制服務器和PC 之間使用小型交換機連接。
為此需要添加以下硬件:(1)控制服務器1 臺,配2 個以太網接口,9個RS232串口;(2)小型交換機1臺,每臺8個以太網接口。
機柜A控制服務器以太網口1的IP設為192.168.23.201/24,默認網關為192.168.23.254,DNS 根據提供的IP 地址設置。除了安裝TeamViewer 作為遠程接入軟件外,還需安裝控制網絡設備的終端軟件Xshell。使用Windows 操作系統自帶的遠程桌面連接(mstsc)控制實驗室的4臺PC。
控制服務器上安裝RS232 PCI 拓展卡(8 串口),加上自帶串口,總共有9個串口。
9 個串口對應的COM1 到COM9 分別連接到SW1 到RT6的console接口,然后配置好相應的Xshell會話。最終得到一個機柜所有網絡設備的預置會話,如圖3示。
機柜控制服務器的以太網口2 通過小交換機與實驗室PC1到PC4的以太網口2連接。這些接口對應的IP地址設置為另一網段即可,比如172.16.1.0 網段。在4 臺PC 上開啟允許遠程桌面連接功能。
操作者通過TeamViewer 登錄機柜A 的控制服務器,然后再通過遠程桌面連接(mstsc)控制其他4 臺實驗PC。PC1到PC4的以太網口1保留為實驗用,在具體網絡實驗時,操作者可以修改它的IP設置。
在進行遠程網絡實驗時,實驗者無法改變物理拓撲,我們在文獻[3]的基礎上,根據當前特點,重新設計了與網絡設備相關的實驗,比如VLAN 實驗、靜態路由實驗、RIP 配置實驗、OSPF 配置實驗、ACL 配置實驗。限于篇幅,下面以較為簡單的VLAN實驗和靜態路由實驗為例來說明設計思路。
交換相關實驗目的在于讓學生充分理解交換機的工作原理,理解交換機不同類型端口的工作特性,掌握VLAN 的劃分操作。實驗拓撲如圖4所示。
實驗步驟與原理概述:
(1)單交換機VLAN劃分
第一步:操作者通過TeamViewer遠程進入控制服務器,然后通過windows自帶的mstsc遠程桌面,分別給PC1和PC2的以太網口1配置IP地址10.0.0.1/24、10.0.0.2/24。SW1保持出廠設置,然后測試PC1和PC2的連通性。
在默認配置中,SW1 的所有端口都屬于VLAN 1,且都為Hybrid端口。結果應該是能ping通。
第二步:SW1 創建VLAN 2 和VLAN 3,并在VLAN 2 中添加端口E0/1,在VLAN 3 中添加端口E0/2。測試PC1 和PC2的連通性。
PC1在VLAN 2下,PC2在VLAN 3下。結果應該是PC1和PC2之間不能ping通。
(2)多交換機VLAN劃分
第三步:PC3 和PC4 的以太網口1 分別配置IP 地址10.0.0.3/24、10.0.0.4/24,SW2 創建VLAN 2 和VLAN 3,并在VLAN 2 中添加端口E0/1,在VLAN 3 中添加端口E0/2。測試PC1和PC3的連通性,PC2和PC4的連通性。
SW1 和SW2 之間連接的端口都為VLAN 1 的Hybrid 接口,而且策略只允許通過VLAN 1 的報文。結果應該是PC1和PC3之間不能ping通,PC2和PC4之間不能ping通。
第四步:將SW1 和SW2 的E0/10 端口均設置為Trunk 類型,并允許通過所有VLAN。測試任意兩臺PC的連通性。
SW1和SW2之間的端口允許通過所有VLAN報文。結果應該是VLAN 2 中的PC1 和PC3 之間能ping 通,VLAN 3中的PC2和PC4之間能ping通,其余情況不能ping通。
以上實驗過程清楚地說明了交換機的工作原理和VLAN的實現原理。同學們可以在此基礎上進行其他配置,并測試連通性;也可以利用實驗室PC上的sniffer抓包軟件,抓取PC發出和收到的報文,進行更深入的分析。
靜態路由適合于小型網絡,學會其配置,可以更充分理解路由的工作原理,為動態路由打下基礎。實驗拓撲如圖5示。
實驗步驟與原理概述:
(1)路由器都不添加靜態路由
第一步:PC1的IP地址設為11.0.0.100/24,默認網關設為11.0.0.1/24。PC2的IP地址設為12.0.0.100/24,默認網關設為12.0.0.1/24。R1 的E0/0 的IP 地址設為11.0.0.1/24,E0/1 的IP地址設為10.0.0.1/24。R2 的E0/0 的IP 地址設為12.0.0.1/24,E0/1的IP地址設為10.0.0.2/24。
測試PC1 和R1,R1 和R2,PC2 和R2 之間的連通性。連通性檢驗通過后,再測試PC1和PC2之間的連通性。
在路由器沒有配置路由時,路由表中只有直連路由。結果應該是PC1 和R1,R1 和R2,PC2 和R2 之間都能ping 通。PC1和PC2之間不能ping通。
(2)路由器R1添加去往12.0.0.0/24網絡的靜態路由
第二步:R1 添加靜態路由:目的網絡:12.0.0.0/24,下一跳地址:10.0.0.2。
測試PC1和PC2之間的連通性。
PC1 發送的報文能到達PC2,但PC2 發送的報文不能到達PC1。結果應該是PC1 和PC2 之間不能ping 通。可以在PC2上通過sniffer抓包來確認是否收到PC1的報文。
(3)路由器R2添加去往11.0.0.0/24網絡的靜態路由
第三步:R2添加靜態路由:目的網絡11.0.0.0/24,下一跳地址:10.0.0.1。
測試PC1和PC2之間的連通性。
PC1 發送的報文能到達PC2,PC2 發送的報文也能到達PC1。結果應該是PC1和PC2之間能ping通。
上述實驗僅涉及兩臺路由器,學生可以根據自己對實驗的理解,利用機柜中的6臺路由器設計出復雜的網絡拓撲結構,在老師的協助下完成難度更大的路由配置實驗。
本方案針對疫情期間同學們在家中如何完成計算機網絡實驗而設計出來的一種方案。其中的基本方案能滿足常規教學工作的要求,增強方案主要面向需要獨立完成一些增強型實驗的同學,讓他們能自由控制所有設備,完成自設實驗。通過今年上半年的實踐,文中的方案基本上解決了我們的問題。但增強方案每次只能一人操作,需要預約和排隊。后期還需要開發一套排隊系統來解決這一問題。