1. 程式人生 > >VID 與 PVID 的簡單概述,附上一個有趣案例

VID 與 PVID 的簡單概述,附上一個有趣案例

vlan PVID VID

重要前提,交換機內部的幀都是會打tag的

PVID:port-based vlan id 
pvid是交換機上的概念,說的是進入該端口的報文如果沒有打vlan id就按pvid的值打上
PVID是基於端口的VLAN ID,一個端口可以屬於多個vlan(trunk 口),但是只能有一個PVID(對trunk 口而言,就是native vlan;對access口而言,就是access vlan-id = pvid),收到一個不帶tag頭的數據包時,會打上PVID所表示的vlan號,視同該vlan的數據包處理,所以也有人說PVID就是某個端口默認的vlan ID號

native vlan的作用之一是減輕交換機的負擔,不用老是打tag,祛tag。


VID: vlan id
vid是報文上的vlan tag的意思.tag裏面包含vid

在網上發現一個比較好的解釋是:PVID並不是加在幀頭的標記,而是端口的屬性,用來標識端口接收到的未標記的幀。也就是說,當端口收到一個未標記的幀時,則把該幀轉發到VID和本端口PVID相等的VLAN中去。

?
下圖是一個有趣的情景:
技術分享圖片
pc1 ping pc2的過程是這樣的:
·sw1的接口收到pc1的ping包,因為給他打上包含vid=10的tag,
·然後在sw1的trunk因為設置了native vlan 10(亦就是PVID=10),對該ping包拆掉進來時打的tag,不打tag的發出去,
·然後到sw2的trunk口時,因為sw2在該trunk設置了native vlan 20(亦就是PVID=20),所以ping包進入後會打上vid=20的tag,

·然後交換機查看 vlan 20 MAC address table,決定從連接了pc2 的access vlan 20口發出去,
·但是在發出去之前,要把ping包裏面的tag去掉(因為pc2無法識別還有tag的幀)。
?
?
最後附上:交換機收到幀後的處理方式

VID 與 PVID 的簡單概述,附上一個有趣案例