「原創」關於Access、trunk、hybrid的理解(上)

近期收到如下的留言,本期阿龍整理一下,與大家分享,權當複習一下也好。


「原創」關於Access、trunk、hybrid的理解(上)


why?

為什麼會有這個東東(access、trunk、hybrid)?

只有先把這個問題搞懂了,那麼要掌握與理解就容易多了。

會有access、trunk、hybrid,是因為有了VLAN技術,VLAN技術為了原先所有二層都在同一個大廣播域(廣播氾濫,容易導致性能下降,上網體驗就差了。交換機的出現,解決的是衝突域,沒有有效解決廣播域。)


「原創」關於Access、trunk、hybrid的理解(上)


這時,VLAN技術就誕生,不同vlan之間無法直接二層通信,也就是說每一個VLAN就是一個廣播域,這樣廣播報文就能有效地控制了。


「原創」關於Access、trunk、hybrid的理解(上)


how?

有了vlan技術,那交換機該如何識別哪些是vlan1,哪些是vlan20呢?並且該如何轉發到正確的端口呢?

這點,阿龍覺得可以多聯繫生活(經常也有人來問我,沒基礎能學好網絡技術嗎?肯定可以的啊,除非你跟生活脫軌了。只要你多動動腦子,多聯繫生活,你會發現學網絡很有趣的。)

我們可以瞭解一下快遞公司是如何快速轉發包裹的?如果一個市的所有快遞,只由1個人來收取或派送,那這個快遞員是不是會累死呢?那如果市裡的不同區,各專門安排1一個人以上來收取或派送,是不是就輕鬆多呢?那快遞公司怎麼識別哪個包裹由誰來收取或派送呢?快遞公司肯定是根據標籤或一種編碼來識別,然後貼到包裹上面。快遞公司掃碼時,就能識別轉發給誰來收取或派送。

所以,交換機也是通過打標籤來實現如何轉發。

untag就是普通的Ethernet報文,普通PC機的網卡是可以識別這樣的報文進行通訊;

tag

報文結構的變化是在源mac地址和目的mac地址後,加上了4bytes的vlan信息,也就是vlan tag頭,一般來說這樣的報文普通PC機的網卡是不能識別的;


「原創」關於Access、trunk、hybrid的理解(上)



交換機端口鏈路類型access、trunk、hybrid,主要作用是讓交換機知道怎麼處理數據幀,何時加標籤?何時去標籤?何時丟棄?

含義

Access類型:端口只能屬於1個VLAN,一般用於連接計算機;

Trunk類型:端口可以屬於多個VLAN,可以接收和發送多個VLAN的報文,一般用於交換機之間連接;

Hybrid類型:端口可以屬於多個VLAN,可以接收和發送多個VLAN的報文,可以用於交換機之間連接,也可以用於連接用戶的計算機。

trunk與Hybrid區別:Hybrid端口可以允許多個VLAN的報文發送時不打標籤,而Trunk端口只允許缺省VLAN的報文發送時不打標籤。

1、access口:

VLAN在本交換機內的轉發流程


「原創」關於Access、trunk、hybrid的理解(上)


讓PCA發廣播幀,交換機收到,檢查mac表該接口E1/0/1,屬於vlan10,然後打上vlan10的標籤,進行轉發時,就看看mac表裡哪些接口是vlan10的?然後就向這些接口泛洪PCA發出的廣播幀。從E1/0/2發出去時,會去掉vlan10標籤,因為PCB是無法識別帶標籤的報名。


「原創」關於Access、trunk、hybrid的理解(上)


mac表:


「原創」關於Access、trunk、hybrid的理解(上)



2、trunk 口


「原創」關於Access、trunk、hybrid的理解(上)


trunk口主要用於連接交換機與交換機之間的,傳輸多個不同vlan的數據包。trunk鏈路允許默認vlan不帶tag,其他都需要帶tag,這樣對端才能正確識別是哪個vlan的。


「原創」關於Access、trunk、hybrid的理解(上)



再來看看這兩張圖vlan跨交換機的處理流程,或許更能理解:

(大家注意藍色箭頭)


「原創」關於Access、trunk、hybrid的理解(上)


PCA發了個廣播幀,未帶tag,到了交換機SWA,E1/0/1是屬於vlan 10的,交換機給這個報文打了vlan 10的tag,從E1/0/24轉發出去時,去掉VLAN 10的tag,到了交換機SWB,E1/0/24是屬於vlan 10的,所以SWB給這個報文打上vlan10的tag,查mac表,找到接口是vlan 10的,進行泛洪,從E1/0/1去掉標籤,進行轉發。


「原創」關於Access、trunk、hybrid的理解(上)


PCA發了個廣播幀,未帶tag,到了交換機SWA,E1/0/1是屬於vlan 10的,交換機給這個報文打了vlan 10的tag,從E1/0/24轉發出去時,去掉VLAN 10的tag,到了交換機SWB,E1/0/24是屬於vlan 30的,所以SWB給這個報文打上vlan10的tag,查mac表,找到接口是vlan 30的,進行泛洪,從E1/0/3去掉標籤,進行轉發。


「原創」關於Access、trunk、hybrid的理解(上)



接下來,簡單做個實驗,來驗證trunk鏈路是否有帶tag,access鏈路交換機發送報文是否去掉tag?


「原創」關於Access、trunk、hybrid的理解(上)


1、在SW2的G0/0/1處抓包,用了驗證SW1在trunk鏈路發過來的報文是否有帶tag。

2、在SW2的G0/0/2處抓包,用了驗證SW2在access鏈路發送出去的報文是否有帶tag。

3、用PC1ping PC2。

SW2的G0/0/1處抓包:


「原創」關於Access、trunk、hybrid的理解(上)


SW2的G0/0/2處抓包:


「原創」關於Access、trunk、hybrid的理解(上)


本期先分享到這,下期繼續,下期主要繼續講一下hybrid,並且做個實驗來幫助大家理解。

另外,中秋節的活動結果,已更新到福利派送,大家有空可以看看。


分享到:


相關文章: