access、trunk、hybrid
一、基本概念
1、vlan接口簡介
不同vlan間的主機不能直接通信,需要通過路由器或三層交換機等網絡層設備進行轉發,設備提供vlan接口實現對報文進行三層轉發的功能。
vlan接口是一種三層模式下的虛擬接口,主要用於實現vlan間的三層互通,它不作為物理實體存在於設備上。每個vlan對應一個vlan接口,在為vlan接口配置了ip地址后,該接口即可作為本vlan內網絡設備的網關,對需要跨網段的報文進行基於ip地址的三層轉發。
2、端口類型
交換機端口加入vlan的三種方式:hybrid、access、trunk
- access:只允許一個VLAN報文通過,一般用來連接交換機和pc,也可以連接交換機和交換機。
- trunk:可以多個VLAN報文通過,一般連接交換機和交換機,所有默認的vlan的數據幀發出去時都會去掉vlan tag,其他的vlan不去除tag,只有默認的vlan端口才可以連接到客戶端trunk端口有一個默認vlan,如果收到的報文沒有vlan ID,就把這個報文當做默認vlan的報文處理。對於trunk口發送出去的報文,只有默認vlan的報文不帶vlan ID,其它vlan的報文都要帶vlan ID。
- hybrid:可以多個VLAN報文通過,可以連接交換機和pc,可以為多個vlan的端口為數據幀打上指定的vlan tag或者去除某些vlan tag tag,
access
和trunk
是hybrid的兩個極端案例。並且hybrid可以實現vlan和vlan之間互通,這是access和trunk不能達到的。(華為私有)
3、 access, trunk端口和tag、untag端口的關系
access,trunk,hybrid都是上層的概念,其實在底層只有tag,untag概念。
比如:ge1 是access端口,他任何時候只能存在於一個vlan,在底層實際他是untag端口。
ge1是trunk端口,他可能存在於多個vlan,那么他在底層實際是tag端口,但在缺省vlan是untag端口。
二、默認vlan
1、Access端口只屬於1個VLAN,所以它的缺省VLAN就是它所在的VLAN,不用設置;
2、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”,對於思科交換機缺省VLAN被稱為“Native Vlan”。
三、交換機接口數據的過程
1、Access端口收報文:
收到電腦或者其他設備的一個報文,判斷是否有VLAN信息:如果沒有則打上端口的PVID, 並進行交換轉發;如果有則直接丟棄(缺省);
Access端口發報文:
將報文的VLAN信息剝離, 直接發送出去;
2、Trunk端口收報文
收到一個報文,判斷是否有VLAN信息:如果沒有則打上端口的PVID,並進行交換轉發;如果有則判斷該Trunk端口是否允許該VLAN的數據進入:如果可以則轉發,否則丟棄;
Trunk端口發報文:
比較端口的PVID和將要發送報文的VLAN信息,如果兩者相等則剝離VLAN信息,再發送,如果不相等則直接發送;
3、Hybrid端口收報文:
收到一個報文,判斷是否有VLAN信息:如果沒有則打上端口的PVID, 並進行交換轉發;如果有則判斷該Hybrid端口是否允許該VLAN的數據進入,如果可以則轉發,否則丟棄(此時端口上的untag配置是不用考慮的,untag配置只是對發送報文時起作用)。
Hybrid端口發報文
1、判斷該VLAN在本端口的屬性(disp interface即可看到該端口對哪些VLAN是untag,哪些VLAN是tag);
2、untag則剝離VLAN信息再發送,tag則直接發送;
3、交換機在接受幀的時候會判斷是port上的pvid是否和vlan ID 一致,如果一致則用untag,不一致用tag。
四、802.1Q
- 802.1q協議(也叫dot1q),802.1q協議定義了vlan字段的結構和vlan字段在以太網幀中的位置。
標准的以太網幀封裝格式
S.DMA | S.MAC | TYPE | DATA | FCS |
---|---|---|---|---|
目的Mac地址 | 源Mac地址 | 類型 | 上層協議 | 幀格式校驗合 |
802.1Q的數據幀封裝格式
S.DMA | S.MAC | Tag | TYPE | DATA | FCS |
---|---|---|---|---|---|
目的Mac地址 | 源Mac地址 | 標記 | 類型 | 上層協議 | 幀格式校驗合 |
graph LR
Tag-->TPID
Tag-->Priority
Tag-->CFI
Tag-->VALN-ID
1.TPID:2個字節,0X8100, 標識802.1q協議。
-
802.1p優先級:3個bit,標識報文的優先級,這個字段用於qos功能。
-
CFI:1個bit,取0表示mac地址以標准形式封裝,取1則以非標准形式。
-
VLAN ID:12個bit,0-4095,其中0和4095為協議保留。
思科除了支持802.1q的封裝,還有自己私有的vlan協議----cisco ISL。
priority、cfi、vlan ID 屬於TCI(Tag Control Information)
五、配置命令
華為的命令
trunk口配置
#
interface GigabitEthernet xxx
port link-type trunk //端口的鏈路類型為trunk
port trunk allow-pass vlan xx to yy //允許vlanxx到yy通過
#
access口配置
#
interface GigabitEthernet0/0/1
port link-type access
port default vlan 10
#
hybrid口配置
#
interface GigabitEthernet0/0/1
port link-type hybrid //設置端口的類型
port hybrid pvid vlan xx //設置缺省vlan
port hybrid tagged/untagged vlan yy //端口直接發送或剝離vlan的便簽
#
PVID的配置
[sw1-GigabitEthernet0/0/1] port hybrid pvid vlan 100
本文純屬原創,如有錯誤可以指出。
想和我一起交流可以向我發送郵箱:2449080520@qq.com