VLAN 主幹(VLAN trunking)
VLAN 主幹(trunking)是讓多個 VLAN 共用交換器之間單一纜線而不會混在一起的方法。如果 VLAN 10 與 VLAN 20 各自在兩台交換器間拉自己的線,每個 VLAN 就得有一條纜線——很浪費。改用主幹,一條連結就能同時承載許多 VLAN 的訊框,每個訊框都蓋上戳記說明它屬於哪個 VLAN。這就像把許多部門的信都丟進同一個郵件投遞口,每封都裝在標了部門名稱的信封裡。
那個戳記就是 802.1Q 標籤:一個 4 位元組的欄位,插在乙太網路訊框中緊接著來源 MAC 位址之後,裝著 12 位元的 VLAN ID(以及一個優先權欄位)。當交換器從主幹埠送出訊框時,會為該訊框的 VLAN 加上標籤;另一端的交換器讀標籤、把它剝掉,只把訊框送進相符的 VLAN。埠有兩種:存取埠(access port)把某一個 VLAN 的未標記流量送給端裝置(該裝置對 VLAN 一無所知),而主幹埠(trunk port)把許多 VLAN 的已標記流量送給另一台交換器或路由器。主幹上習慣保留一個 VLAN——原生 VLAN(native VLAN)——維持未標記以相容舊裝置。
主幹是讓 VLAN 能大規模實用的關鍵:樓層交換器與核心之間的一條上行連結,就能承載整棟樓的每個 VLAN。它也讓「單臂路由(router-on-a-stick)」成為可能,用一條已標記的連結,讓單一路由器介面在許多 VLAN 之間路由。誠實的提醒:主幹埠很強大,設錯一個就可能暴露你本想分開的 VLAN,所以主幹通常被限制成它該承載的那組確切 VLAN。
從存取埠離開的訊框(VLAN 10 的 PC)是未標記的。越過主幹前往核心交換器時,它帶著一個 VLAN ID 為 10 的 802.1Q 標籤。抵達遠端存取埠時,標籤被剝除,未標記的訊框送達目的 PC,而該 PC 從不知道有標籤存在。
標籤只存在於主幹連結上;存取埠與端主機看到的是未標記的普通訊框。
802.1Q 標籤多加 4 位元組,所以已標記的訊框可能略微超過正常的 1500 位元組乙太網路上限;主幹連結必須允許這一點(baby-giant 訊框),否則就會發生丟棄。