在局域網(wǎng)內(nèi),我們會用 VLAN 對不同的用戶、不同的部門、不同用途的區(qū)域進行分組,一個 VLAN 區(qū)分一組用戶,便于管理和使用。
什么是 VLAN ?
VLAN 技術能夠在邏輯上把一個物理局域網(wǎng)分隔為多個廣播域,每個廣播域稱為一個虛擬局域網(wǎng)(即 VLAN )。每臺主機只能屬于一個 VLAN ,同屬一個 VLAN 的主機通過二層直接通信。劃分 VLAN ,并不是為了徹底隔絕通信,而是減小廣播域傳播的范圍,過濾多余的包,提高網(wǎng)絡的傳輸效率。
如何實現(xiàn)不同 VLAN 間的主機通信呢?
VLAN 隔離二層網(wǎng)絡,必須通過三層網(wǎng)絡設備實現(xiàn)。這些設備根據(jù) IP 地址為不同 VLAN 間的流量執(zhí)行路由轉(zhuǎn)發(fā)的操作,稱為 VLAN 間路由。
實現(xiàn) VLAN 間路由的方法有哪些?
按照時間和技術發(fā)展的順序,介紹三種 VLAN 間路由的方法。
第一種:傳統(tǒng) VLAN 間路由
路由器的作用是在不同網(wǎng)絡之間轉(zhuǎn)發(fā)數(shù)據(jù)包,VLAN 則是在一臺或一組交換機上劃分不同的局域網(wǎng),將它們隔離為不同的網(wǎng)段。因此,不同 VLAN 之間的通信需要路由器來進行轉(zhuǎn)發(fā),也就順理成章了。
不同的 VLAN 連接不同的路由器接口,一個路由器接口連接一個 VLAN 的交換機端口。
假設 PC 和路由器都有同網(wǎng)段中所有設備的 ARP 緩存表,交換機的 mac 地址表也有各個設備的 MAC 地址信息。那么 PC1 向 PC5 發(fā)送數(shù)據(jù)時,整個過程如下:
- PC1 查詢路由表,發(fā)現(xiàn) PC5 的 IP 地址在另一個網(wǎng)段,需要通過默認網(wǎng)關進行數(shù)據(jù)轉(zhuǎn)發(fā);
- PC1 以 PC5 的 IP 地址為目的 IP 地址,以默認網(wǎng)關的 MAC 地址為目的 MAC 地址,封裝數(shù)據(jù)幀后發(fā)送給交換機;
- 交換機收到數(shù)據(jù)幀后,查詢 MAC 地址表,找到目的 MAC 地址對應的端口,于是將數(shù)據(jù)幀從這個端口轉(zhuǎn)發(fā)出去,即轉(zhuǎn)發(fā)給路由器;
- 路由器收到數(shù)據(jù)幀后,查看數(shù)據(jù)幀的目的 MAC 地址是自己,于是解封裝查看目的 IP 地址。根據(jù)目的 IP 地址的網(wǎng)絡號查詢路由表,發(fā)現(xiàn)目的網(wǎng)段的直連路由,以及對應的出接口;
- 路由器以 PC5 的 IP 地址作為目的 IP 地址,以 PC5 的 MAC 地址作為目的 MAC 地址封裝報文,并從出接口轉(zhuǎn)發(fā)出去,即轉(zhuǎn)發(fā)給交換機;
- 交換機查看數(shù)據(jù)幀的目的 MAC 地址,并根據(jù)目的 MAC 地址,將數(shù)據(jù)幀轉(zhuǎn)發(fā)給 PC5 。
相同 VLAN 的主機如何互相通信?
PC1 向 PC2 發(fā)送數(shù)據(jù)時,由于目的 IP 地址與自己處于同一個網(wǎng)段,PC1 會使用 PC2 的 MAC 地址作為目的 MAC 地址封裝數(shù)據(jù)幀;交換機也會直接通過 PC2 的端口,將數(shù)據(jù)幀轉(zhuǎn)發(fā)給 PC2 。
如果不同 VLAN 的 PC1 和 PC3 通訊,交換機是否會直接根據(jù) MAC 地址,把 PC1 發(fā)送的報文直接轉(zhuǎn)發(fā)給 PC3 ?
MAC 地址表不僅記錄了交換機端口和 MAC 地址的對應關系,還包括這個端口的 VLAN 。交換機不會通過查詢 MAC 地址表,就把數(shù)據(jù)幀從不同 VLAN 的端口轉(zhuǎn)發(fā)出去。
傳統(tǒng) VLAN 間路由實驗
實驗拓撲圖
接口列表
實驗要求
- ENSP 模擬器
- PC1 能 ping 通 PC5
實驗步驟
- 根據(jù)接口 IP 地址表,各個設備分別配置 IP 地址。
- 根據(jù) VLAN 劃分表,SW 配置各個端口的 VLAN 。
- 測試:PC1 ping PC5 成功,通過路由器的接口實現(xiàn) VLAN 間路由。
實驗總結(jié)
進行網(wǎng)絡配置前,先梳理出接口列表、接口 IP 地址表和 VLAN 劃分表,便于進行設備配置。
第二種:單臂路由
路由器用于連接異構網(wǎng)絡,特點是有不同類型的物理接口,接口數(shù)量少;交換機則是用于組建局域網(wǎng),特點是物理接口類型少,接口數(shù)量多。實際網(wǎng)絡環(huán)境中,會在一臺交換機上創(chuàng)建大量的 VLAN ,每個 VLAN 使用一個路由器接口作為默認網(wǎng)關,路由器接口就不夠用了。
為了節(jié)省路由器的接口,使用一個接口來連接交換機,無論哪個 VLAN 的流量都通過這一個接口進出路由器,實現(xiàn)所有 VLAN 之間的流量轉(zhuǎn)發(fā),這種方式稱為單臂路由。
上面的物理拓撲圖可能描述的不太清楚,查看下面單臂路由的邏輯拓撲圖可以更好的理解原理。
- 物理拓撲圖:展示網(wǎng)絡設備之間物理連接方式的拓撲圖。
- 邏輯拓撲圖:網(wǎng)絡設備根據(jù)網(wǎng)絡地址轉(zhuǎn)發(fā)數(shù)據(jù)包的邏輯通道圖。
一個路由器接口能夠像多個接口那樣工作,同時用來傳輸多個不同 VLAN 的流量嗎?
路由器提供了一種稱為子接口的邏輯接口。子接口顧名思義,就是通過邏輯的方式,將一個路由器物理接口劃分為多個邏輯子接口,來滿足用一個物理接口連接多個網(wǎng)絡的需求。
單臂路由實驗
實驗拓撲圖
接口列表
由傳統(tǒng) VLAN 間路由的多個路由器接口,變成單臂路由的一個路由器接口,用于連接交換機。其它接口配置不變。
實驗要求
- PC1 能 ping 通 PC5
實驗步驟
- 根據(jù)接口 IP 地址表,配置路由器的子接口 IP 地址。其余設備配置參考上一個實驗的步驟 1 。
- 命令 interface interface-type interface-number.sub-interface number 創(chuàng)建子接口。子接口編號范圍是 1 ~ 4096 ,與 VLAN ID 保持一致。
命令 dot1q termination vid 配置 802.1Q 封裝并指定端口的 PVID ,確保路由器子接口與對端的交換機端口封裝模式一致。
命令 arp broadcast enable 啟動子接口的 ARP 廣播功能。默認狀態(tài)下,ARP 廣播功能是禁用的,收到 ARP 廣播幀會直接丟棄。
- 根據(jù) VLAN 劃分表,配置 SW 連接路由器端口的 VLAN 。其余設備配置參考上一個實驗的步驟 2 。
- 測試:PC1 ping PC5 成功,通過路由器的子接口實現(xiàn) VLAN 間路由。
第三種:三層交換技術
從流量走向上看單臂路由,是舍近求遠的,交換機上兩個不同 VLAN 的端口流量,無法通過交換機直接完成數(shù)據(jù)轉(zhuǎn)發(fā),還需要在路由器上繞一下。這是因為二層交換機沒有三層轉(zhuǎn)發(fā)能力,無法根據(jù)數(shù)據(jù)包的目的 IP 地址查看自己的路由表;二層交換機也無法成為所連主機的網(wǎng)關,需要一臺路由器充當網(wǎng)關。
然后出現(xiàn)了一種在傳統(tǒng)以太網(wǎng)交換機的基礎上,添加專門路由轉(zhuǎn)發(fā)硬件的設備。這類設備不僅有傳統(tǒng)二層交換機的功能,還可以通過 ASIC(特殊應用集成電路)實現(xiàn)對數(shù)據(jù)包的路由。這種集成了三層數(shù)據(jù)包轉(zhuǎn)發(fā)功能的交換機稱為三層交換機。
一臺三層交換機既可以實現(xiàn)將終端隔離在不同的 VLAN 中,同時位這些終端提供 VLAN 間路由的功能,不需要再借助路由器來轉(zhuǎn)發(fā)不同 VLAN 之間的流量。
實現(xiàn) VLAN 間路由需要給每一個 VLAN 分配一個獨立的三層接口作為網(wǎng)關,三層交換機并不是使用三層物理接口連接各個 VLAN ,而是通過創(chuàng)建虛擬 VLAN 接口,為每一個 VLAN 分配一個虛擬三層接口。
虛擬 VLAN 接口是由三層交換機創(chuàng)建的,因此三層交換機會作為直連接口,將它們所在的網(wǎng)絡作為直連路由填充到路由表中。同時,虛擬 VLAN 接口和對應的 VLAN 中的物理二層端口處于同一個子網(wǎng)中,充當這個 VLAN 的網(wǎng)關。
三層交換機的轉(zhuǎn)發(fā)效率和擴展性都遠比單臂路由實現(xiàn) VLAN 間路由更優(yōu),管理和配置也更加簡單,目前這種方案已成為實現(xiàn) VLAN 間路由方案的首選。
三層交換機實驗
實驗拓撲圖
接口列表
實驗步驟
- 根據(jù)接口 IP 地址表,配置交換機的 VLANIF 接口。PC1 ~ PC5 的 IP 地址配置以及對端交換機接口 VLAN 配置,參考上一個實驗的步驟 1 和步驟 2 。
- 命令 interface Vlanif vlan-id 創(chuàng)建 VLANIF 接口。VLANIF 接口的編號必須與 VLAN ID 一致,VLAN 中的主機以 VLANIF 接口 IP 地址作為自己的默認網(wǎng)關。
- 命令 display ip interface brief 查看 IP 地址信息,檢查配置是否正確。
- 命令 display vlan 查看 VLAN 信息,檢查交換機端口的 VLAN 配置是否正確。
- 命令 display ip routing-table 查看路由表信息,兩個 VLANIF 接口的直連網(wǎng)段加入了 IP 路由表,并以此實現(xiàn) VLAN 間路由。
- 測試:PC1 ping PC5 成功,通過三層交換機的 VLANIF 接口實現(xiàn) VLAN 間路由。
三層交換機能取代路由器嗎?
三層交換機的路由功能通常比較簡單,主要是局域網(wǎng)的連接,包含大量的以太網(wǎng)接口,主要用途是提供快速數(shù)據(jù)交換功能,滿足局域網(wǎng)數(shù)據(jù)交換頻繁的應用特點。
而路由器則不同,是為了滿足不同類型的網(wǎng)絡連接,如局域網(wǎng)與廣域網(wǎng)之間的連接、不同協(xié)議的網(wǎng)絡之間的連接等。它最主要的功能是路由轉(zhuǎn)發(fā),解決各種復雜路徑的網(wǎng)絡連接,不僅適用于同種協(xié)議的局域網(wǎng)間,更適用于不同協(xié)議的局域網(wǎng)與廣域網(wǎng)間。具有選擇最佳路由、負荷分擔、鏈路備份及和其他網(wǎng)絡進行路由信息的交換等等功能。
因此,三層交換機與路由器存在著本質(zhì)區(qū)別,三層交換機并不能完全取代路由器的工作。