楊 姝
(電子科技大學 成都學院,四川 成都 611731)
在交換機組成的網絡里,所有的主機都在同一廣播域中,一臺主機發出的廣播,其他的所有主機都能夠收到,而通過實現VLAN技術就可以起到分割廣播域的作用。因此VLAN技術在網絡中的運用相當廣泛,并具有安全、高性能、防范廣播風暴、提高效率、簡單管理等諸多優點[1-3]。
VLAN(virtual local area network,虛擬局域網)是在一個物理網絡上劃分出來的邏輯網絡,它不受網絡端口物理位置的限制,有著和普通物理網絡相同的屬性,第2層的廣播幀僅在一個VLAN內擴散,而不會進入到其他的VLAN中[4-5]。
VLAN主要分為靜態VLAN和動態VLAN 2種[6]。靜態VLAN又稱為基于端口的VLAN,即明確指定各端口屬于哪個VLAN的設定[7]。此方式仍然是目前使用較多的劃分VLAN的方式。動態VLAN大致分為3類:(1)基于MAC地址:通過查詢并記錄端口所連計算機網卡上的MAC地址來決定端口的所屬VLAN;(2)基于子網的VLAN:通過所連計算機的IP地址來決定端口的所屬VLAN;(3)基于用戶的VLAN:根據交換機各端口所連的計算機上當前登錄的用戶來決定該端口屬于哪個VLAN[8]。
匯聚鏈接(trunk link)是指能夠轉發多個不同VLAN通信的端口,匯聚鏈路上流通的數據幀都被附加了用于識別分屬哪個VLAN的特殊信息。在交換機的匯聚鏈接上,可以通過對數據幀的附加VLAN信息,構建跨越多臺交換機的VLAN。
附加VLAN信息的方法最具代表性的是:IEEE802.1Q和ISL。
(1) IEEE802.1Q指經過IEEE認證對數據幀附加VLAN識別信息的協議[9]。它所附加的VLAN識別信息,位于數據幀中“發送源MAC地址”與“類別域”之間,為2字節的TPID和2字節的TCI,見圖1。

圖1 IEEE802.1Q附加信息
(2) ISL是指Cisco產品支持的一種與IEEE802.1Q類似,用于在匯聚鏈路上附加VLAN信息的協議[10]。使用ISL后,每個數據幀頭部都會被附加26字節的“ISL包頭”,且在幀尾上通過對包括ISL包頭在內的整個數據幀進行計算后得到的CRC值,具體如圖2所示。

圖2 ISL附加信息
每個 VLAN 都是獨立的廣播域,所以在默認情況下,不同 VLAN 中的計算機之間無法通信,需要通過3層設備對數據進行路由轉發才可以實現。通過在3層交換機上為各VLAN配置SVI接口,利用3層交換機的路由功能可以實現VLAN間的路由[11]。
實驗設計的目的是讓學生靈活地掌握VLAN技術的相關知識點,理解VLAN技術基礎,熟悉VLAN技術配置,深入掌握VLAN匯聚信息和實現VLAN間路由。根據實驗要求,選取具有代表性的知識點,將VLAN技術實驗設計為3個方面的實驗,即交換機端口隔離、跨交換機VLAN劃分和3層交換機實現VLAN路由。
3個實驗均以特定的公司背景為例,讓學生根據具體的需求進行網絡設計與配置,更加有針對性和可操作性。3個實驗之間是一個遞進的關系,難易度由淺入深,在實驗時需要安排學生按照順序依次進行。每個實驗進行前需對所需知識進行講解并做簡單操作演示,學生實驗完成后需要對難點和故障排除進行歸納和總結。
實驗選取Cisco Packet Tracer作為仿真軟件[12]。該軟件的仿真度較高,學生可在軟件的圖形用戶界面上直接使用拖曳方法即可建立網絡拓撲結構圖,配置仿真設備,并可觀察網絡實時運行情況。
假設此交換機是寬帶小區城域網中的1臺樓道交換機,住戶PC1連接在交換機的0/5口,住戶PC2連接在交換機的0/15口,其網絡拓撲圖如圖3所示。通過技術手段可實現各家各戶的端口隔離。

圖3 交換機端口隔離拓撲圖
假設某企業有2個主要部門:銷售部和技術部。其中銷售部的個人計算機系統分散連接,他們之間需要相互進行通信,但為了數據安全起見,銷售部和技術部需要進行相互隔離,其網絡拓撲圖如圖4所示。現要在交換機做適當配置來實現這一目標,使在同一VLAN里的計算機能跨交換機進行相互通信,而在不同VLAN里的計算機之間不能進行相互通信。

圖4 跨交換機實現VLAN拓撲圖
公司進行新的網絡建設,網絡方案如圖5所示,根據此網絡方案進行網絡實施。

圖5 VLAN路由網絡結構
(1) 在仿真軟件Cisco Packet Tracer中,根據圖3進行搭建。
(2) 配置PC機的網絡參數見表1。

表1 交換機端口隔離PC機網絡參數
(3) 配置交換機switch的VLAN。
switch(config)# vlan 10 //新建VLAN10
switch(config)# vlan 20 // 新建VLAN20
switch(config)#interface fastEthernet 0/5
//進入F0/5接口模式
switch(config)# switchport mode access
//配置該接口為access模式
switch(config-if)# switchport access vlan 10
//將F0/5劃入VLAN10
switch(config-if)# interface fastEthernet 0/15
// 進入F0/15接口模式
switch(config)# switchport mode access
//配置該接口為access模式
switch(config-if)# switchport access vlan 20
//將F0/15劃入VLAN20
(4) 測試PC1與PC2的連通性。PC1與PC2不能通信,實現端口隔離。
(1) 在仿真軟件Cisco Packet Tracer中,根據圖4進行搭建。
(2) 配置PC機的網絡參數見表2。

表2 跨交換機VLAN PC機網絡參數
(3) 配置交換機Switch A的VLAN。
Switch A(config)# vlan 10 //新建VLAN10
Switch A(config)# vlan 20 //新建VLAN20
Switch A(config)#interface fastEthernet 0/5
Switch A(config)# switchport mode access
Switch A(config-if)# switchport access vlan 10 //將F0/5劃入VLAN10
Switch A(config-if)#interface fastEthernet 0/15
Switch A(config)# switchport mode access
Switch A(config-if)# switchport access vlan 20 //將F0/15劃入VLAN20
(4) 配置交換機Switch A的VLAN的匯聚鏈接。
Switch A(config)#interface fastEthernet 0/24
Switch A(config-if)#switchport mode trunk
//將F0/24設為TRUNK,支持TAG VLAN
(5) 配置交換機Switch B的VLAN。
Switch B(config)# vlan 10 //新建VLAN10
Switch B(config)#interface fastEthernet 0/5
Switch B(config)# switchport mode access
Switch B(config-if)# switchport access vlan 10 //將F0/5劃入VLAN10
(6) 配置交換機VLAN的匯聚鏈接。
Switch B(config)#interface fastEthernet 0/24
Switch B(config-if)#switchport mode trunk
//將F0/24設為TRUNK,支持TAG VLAN
(7) 測試PC機連通性。同一VLAN的PC1與PC3能夠通信,屬于不同VLAN的PC1與PC2,PC2與PC3無法通信。
(1) 在仿真軟件Cisco Packet Tracer中,根據圖5進行搭建。
(2) 配置PC機的網絡參數見表3。

表3 VLAN路由PC機網絡參數
(3) 配置二層交換機Switch B的VLAN及匯聚鏈接。
SwitchB(config)# vlan 10 //新建VLAN10
Switch B(config)# vlan 20 //新建VLAN20
Switch B(config)#interface fastEthernet 0/1
Switch B(config)# switchport mode access
Switch B(config-if)# switchport access vlan 10
//將F0/1劃入VLAN10
Switch B(config-if)#interface fastEthernet 0/2
Switch B(config)# switchport mode access
Switch B(config-if)# switchport access vlan 20
//將F0/12劃入VLAN20
Switch B(config)#interface fastEthernet 0/24
Switch B(config-if)#switchport mode trunk
//將F0/24設為TRUNK,支持TAG VLAN
(4) 配置二層交換機Switch C的VLAN及匯聚鏈接。
Switch C(config)# vlan 30 //新建VLAN30
Switch C(config)# vlan 40 //新建VLAN40
Switch C(config)#interface fastEthernet 0/1
Switch C(config)# switchport mode access
Switch C(config-if)# switchport access vlan 30
//將F0/1劃入VLAN30
Switch C(config-if)#interface fastEthernet 0/2
Switch C(config)# switchport mode access
Switch C(config-if)# switchport access vlan 40
//將F0/2劃入VLAN40
Switch C(config)#interface fastEthernet 0/24
Switch C(config-if)#switchport mode trunk
//將F0/24設為TRUNK,支持TAG VLAN
(5) 配置3層交換機Switch A的路由功能、SVI方式及匯聚鏈。
Switch A(config)# ip routing
//開啟Switch A路由功能
Switch A(config)# vlan 10 //新建VLAN10
Switch A(config)# vlan 20 //新建VLAN20
Switch A(config)# vlan 30 //新建VLAN30
Switch A(config)# vlan 40 //新建VLAN40
Switch A(config)#interface vlan 10
//進入vlan10配置模式
Switch A(config-if)# ip address 192.168.1.1
255.255.255.0 //配置ip地址
Switch A(config-if)#no shutdown
//開啟此虛擬接口
Switch A(config)#interface vlan 20
//進入vlan20配置模式
Switch A(config-if)#ip address 192.168.2.1
255.255.255.0 //配置ip地址
Switch A(config-if)#no shutdown
//開啟此虛擬接口
Switch A(config)#interface vlan 30
Switch A(config-if)#ip address 192.168.3.1
255.255.255.0
Switch A(config-if)#no shutdown
Switch A(config)#interface vlan 40
Switch A(config-if)#ip address 192.168.4.1
255.255.255.0
Switch A(config-if)#no shutdown
Switch A(config)#interface fastEthernet 0/23
Switch A(config-if)#switchport mode trunk
//將F0/23設為TRUNK,支持TAG VLAN
Switch A(config)#interface fastEthernet 0/24
Switch A(config-if)#switchport mode trunk
//將F0/24設為TRUNK,支持TAG VLAN
(6) 測試PC機連通性。屬于不同VLAN、不同網絡的PC機均能互相通信。
VLAN技術作為計算機網絡課程實驗的重要組成部分,其實驗課程的設計與研究具有重要的現實意義。采用循序漸進的方式設計了3個VLAN技術相關的實驗,并結合仿真軟件實現了仿真,讓學生在網絡實驗課程中積極思考并排查故障,實踐證明這種方法在網絡實驗課程教學中取得了良好的效果。
[1] 張衛,愈黎陽.計算機網絡工程[M].北京:清華大學出版社,2010.
[2] 陳建銳.軟件仿真下的VLAN配置實驗探討[J].實驗室研究與探索,2011,30(2):79-81.
[3] 羅彬,賈樹生.虛擬局域網的構建于安全方法措施初探[J].煤炭技術,2013,32(4):237-239.
[4] 愈黎陽,張衛,強志成.計算機網絡工程實驗教程[M].北京:清華大學出版社,2008.
[5] 林元乖.創新型計算機網絡實驗教學研究[J].實驗技術與管理,2010,27(12):174-177.
[6] 王宣政,趙婧如,劉瑛,等.計算機組網實驗教程[M].西安: 西安電子科技大學出版社, 2005.
[7] 桑世慶,盧曉慧.交換機/路由器配置與管理[M].北京:人民郵電出版社, 2010.
[8] 陳偉川.基于MAC地址的動態VLAN原理及組網應用[J].計算機與現代化,2007,14(4):107-108.
[9] 劉向東,李志潔,焉德軍,等.IEEE 802.1Q VLAN原理實驗的設計與實現[J].實驗室研究與探索, 2011,30(4): 46-48.
[10] 李清平,謝鵬.基于Cisco ISL和IEEE802.1Q的VLAN間通信原理及仿真分析[J].計算機與現代化, 2009,172(12):150-153.
[11] 馬素剛.VLAN技術的研究與仿真[J].制造業自動化, 2011,33(11):78-80.
[12] 琚生根,陳黎,周剛,等.“計算機網絡”實驗課程的教學探討[J].實驗技術與管理, 2013,30(4): 159-161.