在局域網內,我們會用 VLAN 對不同的用戶、不同的部門、不同用途的區域進行分組,一個 VLAN 區分一組用戶,便于管理和使用。

什么是 VLAN ?

VLAN 技術能夠在邏輯上把一個物理局域網分隔為多個廣播域,每個廣播域稱為一個虛擬局域網(即 VLAN )。每臺主機只能屬于一個 VLAN ,同屬一個 VLAN 的主機通過二層直接通信。劃分 VLAN ,并不是為了徹底隔絕通信,而是減小廣播域傳播的范圍,過濾多余的包,提高網絡的傳輸效率。

如何實現不同 VLAN 間的主機通信呢?

VLAN 隔離二層網絡,必須通過三層網絡設備實現。這些設備根據 IP 地址為不同 VLAN 間的流量執行路由轉發的操作,稱為 VLAN 間路由。

實現 VLAN 間路由的方法有哪些?

按照時間和技術發展的順序,介紹三種 VLAN 間路由的方法。

第一種:傳統 VLAN 間路由

路由器的作用是在不同網絡之間轉發數據包,VLAN 則是在一臺或一組交換機上劃分不同的局域網,將它們隔離為不同的網段。因此,不同 VLAN 之間的通信需要路由器來進行轉發,也就順理成章了。

不同的 VLAN 連接不同的路由器接口,一個路由器接口連接一個 VLAN 的交換機端口。

假設 PC 和路由器都有同網段中所有設備的 ARP 緩存表,交換機的 MAC 地址表也有各個設備的 MAC 地址信息。那么 PC1 向 PC5 發送數據時,整個過程如下:

PC1 查詢路由表,發現 PC5 的 IP 地址在另一個網段,需要通過默認網關進行數據轉發。PC1 以 PC5 的 IP 地址為目的 IP 地址,以默認網關的 MAC 地址為目的 MAC 地址,封裝數據幀后發送給交換機。交換機收到數據幀后,查詢 MAC 地址表,找到目的 MAC 地址對應的端口,于是將數據幀從這個端口轉發出去,即轉發給路由器。路由器收到數據幀后,查看數據幀的目的 MAC 地址是自己,于是解封裝查看目的 IP 地址。根據目的 IP 地址的網絡號查詢路由表,發現目的網段的直連路由,以及對應的出接口。路由器以 PC5 的 IP 地址作為目的 IP 地址,以 PC5 的 MAC 地址作為目的 MAC 地址封裝報文,并從出接口轉發出去,即轉發給交換機。

交換機查看數據幀的目的 MAC 地址,并根據目的 MAC 地址,將數據幀轉發給 PC5 。

相同 VLAN 的主機如何互相通信?

PC1 向 PC2 發送數據時,由于目的 IP 地址與自己處于同一個網段,PC1 會使用 PC2 的 MAC 地址作為目的 MAC 地址封裝數據幀;交換機也會直接通過 PC2 的端口,將數據幀轉發給 PC2 。

如果不同 VLAN 的 PC1 和 PC3 通訊,交換機是否會直接根據 MAC 地址,把 PC1 發送的報文直接轉發給 PC3 ?

MAC 地址表不僅記錄了交換機端口和 MAC 地址的對應關系,還包括這個端口的 VLAN 。交換機不會通過查詢 MAC 地址表,就把數據幀從不同 VLAN 的端口轉發出去。

傳統 VLAN 間路由實驗實驗拓撲圖接口列表實驗要求ENSP 模擬器PC1 能 ping 通 PC5實驗步驟根據接口 IP 地址表,各個設備分別配置 IP 地址。根據 VLAN 劃分表,SW 配置各個端口的 VLAN 。測試:PC1 ping PC5 成功,通過路由器的接口實現 VLAN 間路由。實驗總結

進行網絡配置前,先梳理出接口列表、接口 IP 地址表和 VLAN 劃分表,便于進行設備配置。

第二種:單臂路由

路由器用于連接異構網絡,特點是有不同類型的物理接口,接口數量少;交換機則是用于組建局域網,特點是物理接口類型少,接口數量多。實際網絡環境中,會在一臺交換機上創建大量的 VLAN ,每個 VLAN 使用一個路由器接口作為默認網關,路由器接口就不夠用了。

為了節省路由器的接口,使用一個接口來連接交換機,無論哪個 VLAN 的流量都通過這一個接口進出路由器,實現所有 VLAN 之間的流量轉發,這種方式稱為單臂路由。

上面的物理拓撲圖可能描述的不太清楚,查看下面單臂路由的邏輯拓撲圖可以更好的理解原理。

物理拓撲圖:展示網絡設備之間物理連接方式的拓撲圖。邏輯拓撲圖:網絡設備根據網絡地址轉發數據包的邏輯通道圖。

一個路由器接口能夠像多個接口那樣工作,同時用來傳輸多個不同 VLAN 的流量嗎?

路由器提供了一種稱為子接口的邏輯接口。子接口顧名思義,就是通過邏輯的方式,將一個路由器物理接口劃分為多個邏輯子接口,來滿足用一個物理接口連接多個網絡的需求。

單臂路由實驗實驗拓撲圖接口列表

由傳統 VLAN 間路由的多個路由器接口,變成單臂路由的一個路由器接口,用于連接交換機。其它接口配置不變。

實驗要求PC1 能 ping 通 PC5。實驗步驟根據接口 IP 地址表,配置路由器的子接口 IP 地址。其余設備配置參考上一個實驗的步驟 1 。命令 interface interface-type interface-number.sub-interface number 創建子接口。子接口編號范圍是 1 ~ 4096 ,與 VLAN ID 保持一致。命令 dot1q termination vid 配置 802.1Q 封裝并指定端口的 PVID ,確保路由器子接口與對端的交換機端口封裝模式一致。命令 arp broadcast enable 啟動子接口的 ARP 廣播功能。默認狀態下,ARP 廣播功能是禁用的,收到 ARP 廣播幀會直接丟棄。根據 VLAN 劃分表,配置 SW 連接路由器端口的 VLAN 。其余設備配置參考上一個實驗的步驟 2 。測試,PC1 ping PC5 成功,通過路由器的子接口實現 VLAN 間路由。第三種:三層交換技術

從流量走向上看單臂路由,是舍近求遠的,交換機上兩個不同 VLAN 的端口流量,無法通過交換機直接完成數據轉發,還需要在路由器上繞一下。這是因為二層交換機沒有三層轉發能力,無法根據數據包的目的 IP 地址查看自己的路由表;二層交換機也無法成為所連主機的網關,需要一臺路由器充當網關。

然后出現了一種在傳統以太網交換機的基礎上,添加專門路由轉發硬件的設備。這類設備不僅有傳統二層交換機的功能,還可以通過 ASIC(特殊應用集成電路)實現對數據包的路由。這種集成了三層數據包轉發功能的交換機稱為三層交換機。

一臺三層交換機既可以實現將終端隔離在不同的 VLAN 中,同時位這些終端提供 VLAN 間路由的功能,不需要再借助路由器來轉發不同 VLAN 之間的流量。

實現 VLAN 間路由需要給每一個 VLAN 分配一個獨立的三層接口作為網關,三層交換機并不是使用三層物理接口連接各個 VLAN ,而是通過創建虛擬 VLAN 接口,為每一個 VLAN 分配一個虛擬三層接口。

虛擬 VLAN 接口是由三層交換機創建的,因此三層交換機會作為直連接口,將它們所在的網絡作為直連路由填充到路由表中。同時,虛擬 VLAN 接口和對應的 VLAN 中的物理二層端口處于同一個子網中,充當這個 VLAN 的網關。

三層交換機的轉發效率和擴展性都遠比單臂路由實現 VLAN 間路由更優,管理和配置也更加簡單,目前這種方案已成為實現 VLAN 間路由方案的首選。

三層交換機實驗實驗拓撲圖接口列表實驗步驟根據接口 IP 地址表,配置交換機的 VLANIF 接口。PC1 ~ PC5 的 IP 地址配置以及對端交換機接口 VLAN 配置,參考上一個實驗的步驟 1 和步驟 2 。命令 interface Vlanif vlan-id 創建 VLANIF 接口。VLANIF 接口的編號必須與 VLAN ID 一致,VLAN 中的主機以 VLANIF 接口 IP 地址作為自己的默認網關。命令 display ip interface brief 查看 IP 地址信息,檢查配置是否正確。命令 display vlan 查看 VLAN 信息,檢查交換機端口的 VLAN 配置是否正確。命令 display ip routing-table 查看路由表信息,兩個 VLANIF 接口的直連網段加入了 IP 路由表,并以此實現 VLAN 間路由。測試,PC1 ping PC5 成功,通過三層交換機的 VLANIF 接口實現 VLAN 間路由。三層交換機能取代路由器嗎?

三層交換機的路由功能通常比較簡單,主要是局域網的連接,包含大量的以太網接口,主要用途是提供快速數據交換功能,滿足局域網數據交換頻繁的應用特點。

而路由器則不同,是為了滿足不同類型的網絡連接,如局域網與廣域網之間的連接、不同協議的網絡之間的連接等。它最主要的功能是路由轉發,解決各種復雜路徑的網絡連接,不僅適用于同種協議的局域網間,更適用于不同協議的局域網與廣域網間。具有選擇最佳路由、負荷分擔、鏈路備份及和其他網絡進行路由信息的交換等等功能。

因此,三層交換機與路由器存在著本質區別,三層交換機并不能完全取代路由器的工作。

標簽: VLAN 物理局域網 虛擬局域網