1. 程式人生 > >Access、Hybrid和Trunk三種模式的理解

Access、Hybrid和Trunk三種模式的理解

乙太網埠的三種鏈路型別:Access、Hybrid和Trunk

Access型別的埠只能屬於1個VLAN,一般用於連線計算機的埠;
Trunk型別的埠可以允許多個VLAN通過,可以接收和傳送多個VLAN的報文,一般用於交換機之間連線的埠;
Hybrid型別的埠可以允許多個VLAN通過,可以接收和傳送多個VLAN的報文,可以用於交換機之間連線,也可以用於連線使用者的計算機。

Hybrid埠和Trunk埠在接收資料時,處理方法是一樣的,唯一不同之處在於傳送資料時:Hybrid埠可以允許多個VLAN的報文傳送時不打標籤,而Trunk埠只允許預設VLAN的報文傳送時不打標籤。

在這裡大家要理解埠的預設VLAN這個概念
Access埠只屬於1個VLAN,所以它的預設VLAN就是它所在的VLAN,不用設定;
Hybrid埠和Trunk埠屬於多個VLAN,所以需要設定預設VLAN ID。預設情況下,Hybrid埠和Trunk埠的預設VLAN為VLAN 1
如果設定了埠的預設VLAN ID,當埠接收到不帶VLAN Tag的報文後,則將報文轉發到屬於預設VLAN的埠;當埠傳送帶有VLAN Tag的報文時,如果該報文的VLAN ID與埠預設的VLAN ID相同,則系統將去掉報文的VLAN Tag,然後再發送該報文。
注:對於華為交換機預設VLAN被稱為“PVID Vlan”,(PVID為Port-base Vlan ID), 對於思科交換機預設VLAN被稱為“Native Vlan”

交換機接口出入資料處理過程:
Acess埠收報文:
收到一個報文,判斷是否有VLAN資訊:如果沒有則打上埠的PVID,並進行交換轉發,如果有則直接丟棄(預設)
Acess埠發報文:
將報文的VLAN資訊剝離,直接傳送出去
trunk埠收報文:
收到一個報文,判斷是否有VLAN資訊:如果沒有則打上埠的PVID,並進行交換轉發,如果有判斷該trunk埠是否允許該 VLAN的資料進入:如果可以則轉發,否則丟棄
trunk埠發報文:
比較埠的PVID和將要傳送報文的VLAN資訊,如果兩者相等則剝離VLAN資訊,再發送,如果不相等則直接傳送
hybrid埠收報文:
收到一個報文,判斷是否有VLAN資訊:如果沒有則打上埠的PVID,並進行交換轉發,如果有則判斷該hybrid埠是否允許該VLAN的資料進入:如果可以則轉發,否則丟棄(此時埠上的untag配置是不用考慮的,untag配置只對傳送報文時起作用)

hybrid埠發報文:
1、判斷該VLAN在本埠的屬性(disp interface 即可看到該埠對哪些VLAN是untag, 哪些VLAN是tag)
2、如果是untag則剝離VLAN資訊,再發送,如果是tag則直接傳送

以下案例可以幫助大家深入理解華為交換機的hybrid埠模式
[Switch-Ethernet0/1]int e0/1
[Switch-Ethernet0/1]port link-type hybrid
[Switch-Ethernet0/1]port hybrid pvid vlan 10
[Switch-Ethernet0/1]port hybrid vlan 10 20 untagged
[Switch-Ethernet0/1] int e0/2
[Switch-Ethernet0/2]port link-type hybrid
[Switch-Ethernet0/2]port hybrid pvid vlan 20
[Switch-Ethernet0/2]port hybrid vlan 10 20 untagged
此時inter e0/1和inter e0/2下的所接的PC是可以互通的,但互通時資料所走的往返vlan是不同的。
以下以inter e0/1下的所接的pc1訪問inter e0/2下的所接的pc2為例進行說明
pc1所發出的資料,由inter0/1所在的pvid vlan10封裝vlan10的標記後送入交換機,交換機發現inter e0/2允許vlan 10的資料通過,於是資料被轉發到inter e0/2上,由於inter e0/2上vlan 10是untagged的,於是交換機此時去除資料包上vlan10的標記,以普通包的形式發給pc2,此時pc1->p2走的是vlan10
再來分析pc2給pc1回包的過程,pc2所發出的資料,由inter0/2所在的pvid vlan20封裝vlan20的標記後送入交換機,交換機發現inter e0/1允許vlan 20的資料通過,於是資料被轉發到inter e0/1上,由於inter e0/1上vlan 20是untagged的,於是交換機此時去除資料包上vlan20的標記,以普通包的形式發給pc1,此時pc2->pc1走的是vlan20