LAN和VLAN
聲明: 本篇博客的學習途徑主要為以下網站和課堂講解,發博客目的僅為學習使用,在該博客的基礎上做了一定程序的簡略和修改。
http://www.qianjia.com/html/2019-03/19_329607.html
目錄
- LAN 局域網
- VLAN(Virtual Local Area Network)虛擬局域網
- 為什么要分割VLAN?
- VLAN的原理
- VLAN的劃分方式
- 靜態VLAN(基于端口的VLAN)
- 動態VLAN
- 多臺交換機之間的連接方式 : 匯聚鏈接(Trunk Link )
- VLAN間的通信
- 同一VLAN間的通信原理
- 不同VLAN間的通信
LAN 局域網
以太網是一種局域網
現在大部分局域網都是以太網
常常默認以太網是局域網
VLAN(Virtual Local Area Network)虛擬局域網
VLAN(Virtual LAN),翻譯成中文是“虛擬局域網”
VLAN所指的LAN特指使用路由器分割的網絡——也就是廣播域。
為什么要分割VLAN?
計算機A需要與計算機B通信:
計算機A必須先廣播“ARP請求(ARP Request)信息”,來嘗試獲取計算機B的MAC地址。
交換機1收到廣播幀(ARP請求)后,會將它轉發給除接收端口外的其他所有端口,造成泛濫了。
接著,交換機2收到廣播幀后也會泛濫。交換機3、4、5也還會泛濫。最終ARP請求會被轉發到同一網絡中的所有客戶機上,這也就是網絡風暴
數據幀卻傳遍整個網絡,導致與目的地無關的所有計算機都收到了它。可能隱患:
1.廣播信息消耗了網絡整體的帶寬
2.收到廣播信息的計算機還要消耗一部分CPU時間來對它進行處理。造成了網絡帶寬和CPU運算能力的大量無謂消耗,可能會造成網絡癱瘓。
VLAN的原理
交換機使用VLAN分割廣播域的。
在一臺未設置任何VLAN的二層交換機上,任何廣播幀都會被轉發給除接收端口外的所有其他端口上泛濫。
例如,計算機A發送廣播信息后,會被轉發給端口2、3、4。
這時,如果在交換機上生成紅、藍兩個VLAN;
- 同時設置端口1、2屬于紅色VLAN
- 端口3、4屬于藍色VLAN。
再從A發出廣播幀的話,交換機就只會把它轉發給同屬于一個VLAN的其他端口——也就是同屬于紅色VLAN的端口2,不會再轉發給屬于藍色VLAN的端口。
同樣,C發送廣播信息時,只會被轉發給其他屬于藍色VLAN的端口,不會被轉發給屬于紅色VLAN的端口。
VLAN通過限制廣播幀轉發的范圍 分割了廣播域
上圖中為了便于說明,以紅、藍兩色識別不同的VLAN,在實際使用中則是用“VLAN的ID”來區分的。
VLAN的劃分方式
其中基于子網的VLAN和基于用戶的VLAN有可能是網絡設備廠商使用獨有的協議實現的,不同廠商的設備之間互聯有可能出現兼容性問題;因此在選擇交換機時,一定要注意事先確認。
靜態VLAN(基于端口的VLAN)
靜態VLAN也叫做基于端口的VLAN :
明確指定交換機各端口屬于哪個VLAN的設定方法
缺點:
由于需要一個個端口地指定,因此當網絡中的計算機數目超過一定數字(比如數百臺)后,設定操作就會變得煩雜無比。并且,計算機每次變更所連端口,都必須同時更改該端口所屬VLAN的設定——這顯然靜態VLAN不適合那些需要頻繁改變拓補結構的網絡和大型網絡。
動態VLAN
動態VLAN則是根據每個端口所連的計算機,隨時改變端口所屬的VLAN。這就可以避免上述的更改設定之類的操作。動態VLAN可以大致分為3類:
● 基于MAC地址的VLAN(MAC Based VLAN)
● 基于子網的VLAN(Subnet Based VLAN)
● 基于用戶的VLAN(User Based VLAN)
① 基于MAC地址的VLAN,就是通過查詢并記錄端口所連計算機上網卡的MAC地址來決定端口的所屬。
假定有一個計算機的MAC地址為“A”被交換機設定為屬于VLAN“10”,那么不論MAC地址為“A”這臺計算機連在交換機哪個端口,該端口都會被劃分到VLAN10中去。
例如:計算機連在端口1時,端口1屬于VLAN10;而計算機連在端口2時,則是端口2屬于VLAN10。
總結: 索引是MAC地址,通過MAC地址尋找所屬VLAN
②基于子網的VLAN,則是通過所連計算機的IP地址,來決定端口所屬VLAN的。只要它的IP地址不變,就仍可以加入原先設定的VLAN。
③基于用戶的VLAN,則是根據交換機各端口所連的計算機上當前登錄的用戶,來決定該端口屬于哪個VLAN。
這里的用戶識別信息,一般是計算機操作系統登錄的用戶,比如可以是Windows域中使用的用戶名。這些用戶名信息,屬于OSI第四層以上的信息。
多臺交換機之間的連接方式 : 匯聚鏈接(Trunk Link )
匯聚鏈接(Trunk Link)指的是能夠轉發多個不同VLAN的通信的端口。
匯聚鏈路上流通的數據幀,都被附加了特殊信息 用于識別屬于哪個VLAN。
關鍵字 : 附加信息,識別VLAN
A發送的數據幀從交換機1經過匯聚鏈路到達交換機2時,在數據幀上附加了表示屬于紅色VLAN的標記。
交換機2收到數據幀后,經過檢查VLAN標識發現這個數據幀是屬于紅色VLAN的,因此去除標記后,根據需要將復原的數據幀只轉發給其他屬于紅色VLAN的端口。
這時的轉送,是指經過確認目標MAC地址并與MAC地址列表,比對后,只轉發給目標MAC地址所連的端口。
只有當數據幀是一個廣播幀、多播幀或是目標不明的幀時,它才會被轉發到所有屬于紅色VLAN的端口。
VLAN間的通信
VLAN是廣播域。而通常兩個廣播域之間由路由器連接,VLAN間的通信也需要路由器提供中繼服務,這被稱作“VLAN間路由”。
VLAN間路由,可以使用普通的路由器,也可以使用三層交換機。
同一VLAN間的通信原理
問題: 使用匯聚鏈路連接交換機與路由器時,VLAN間路由是如何進行的?
紅色VLAN(VLANID=1)的網絡地址為192.168.1.0/24
藍色VLAN(VLANID=2)的網絡地址為192.168.2.0/24
各計算機的MAC地址分別為A/B/C/D
路由器匯聚鏈接端口的MAC地址為R。
交換機通過對各端口所連計算機MAC地址的學習,生成如下的MAC地址列表。
首先考慮計算機A與同一VLAN內的計算機B之間通信時的情形。
計算機A發出ARP請求信息,請求解析B的MAC地址。
交換機收到數據幀后,檢索MAC地址列表 中與收信端口同屬一個VLAN的表項**。如果沒有搜索到,那么交換機把這個ARP在整個WLAN中廣播**,更新MAC地址列表
結果 發現計算機B連接在端口2上
于是交換機將數據幀轉發給端口2
最終計算機B收到該幀。
收發信雙方同屬一個VLAN之內的通信,一切處理均在交換機內完成。
不同VLAN間的通信
讓我們來考慮一下計算機A與計算機C之間通信時的情況。
- 過程1、計算機A從通信目標的IP地址(192.168.2.1)得出C與本機不屬于同一個網段。
在發送數據幀之前,需要先用ARP獲取路由器的MAC地址。
∵ 判斷C與本機不在同一個網段
∴向設定的默認網關(Default Gateway,GW)轉發數據幀。
- 過程2、得到路由器的MAC地址R后,便是具體的通信過程
- 接下來就是按圖中所示的步驟發送往C去的數據幀。
①的數據幀中,目標MAC地址是路由器的地址R、
但內含的目標IP地址仍是最終要通信的對象C的地址。
- 過程3、交換機在端口1上收到①的數據幀后,檢索MAC地址列表中與端口1同屬一個VLAN的表項。
由于匯聚鏈路會被看作屬于所有的VLAN,因此這時交換機的端口6也屬于被參照對象。這樣交換機就知道往MAC地址R發送數據幀,需要經過端口6轉發。
- 過程4、從端口6發送數據幀時,由于它是匯聚鏈接,因此會被附加上VLAN識別信息。
由于原先是來自紅色VLAN的數據幀,因此如圖中②所示,會被加上紅色VLAN的識別信息后進入匯聚鏈路。路由器收到②的數據幀后,確認其VLAN識別信息,由于它是屬于紅色VLAN的數據幀,因此交由負責紅色VLAN的子接口接收。
- 過程5、接著,根據路由器內部的路由表,判斷該向哪里中繼。
由于目標網絡192.168.2.0/24是藍色VLAN,且該網絡通過子接口與路由器直連,因此只要從負責藍色VLAN的子接口轉發就可以了。
這時,數據幀的目標MAC地址被改寫成計算機C的目標地址;并且由于需要經過匯聚鏈路轉發,因此被附加了屬于藍色VLAN的識別信息。這就是圖中③的數據幀。
- 過程6、交換機收到③的數據幀后,根據VLAN標識信息從 MAC地址列表加粗樣式**中檢索屬于藍色VLAN的表項。
由于通信目標——計算機C連接在端口3上、且端口3為普通的訪問鏈接,因此交換機會將數據幀除去VLAN識別信息后(數據幀④)轉發給端口3,最終計算機C才能成功地收到這個數據幀。
總結
- 上一篇: Spark行动算子(Action)--r
- 下一篇: 浅谈那些年,我的鬼迷心窍(来自一个可爱女