全網(wǎng)最全的VLAN基礎(chǔ)知識入門

VLAN簡介 定義:
VLAN(Virtual Local Area Network)即虛擬局域網(wǎng),是將一個物理的LAN在邏輯上劃分成多個廣播域的通信技術(shù)。VLAN內(nèi)的主機(jī)間可以直接通信,而VLAN間不能直接通信,從而將廣播報文限制在一個VLAN內(nèi)。
目的:
以太網(wǎng)是一種基于CSMA/CD(Carrier Sense Multiple Access/Collision Detection)的共享通訊介質(zhì)的數(shù)據(jù)網(wǎng)絡(luò)通訊技術(shù)。當(dāng)主機(jī)數(shù)目較多時會導(dǎo)致沖突嚴(yán)重、廣播泛濫、性能顯著下降甚至造成網(wǎng)絡(luò)不可用等問題。通過交換機(jī)實現(xiàn)LAN互連雖然可以解決沖突嚴(yán)重的問題,但仍然不能隔離廣播報文和提升網(wǎng)絡(luò)質(zhì)量。
在這種情況下出現(xiàn)了VLAN技術(shù),這種技術(shù)可以把一個LAN劃分成多個邏輯的VLAN,每個VLAN是一個廣播域,VLAN內(nèi)的主機(jī)間通信就和在一個LAN內(nèi)一樣,而VLAN間則不能直接互通,這樣,廣播報文就被限制在一個VLAN內(nèi)。
作用:
限制廣播域:廣播域被限制在一個VLAN內(nèi),節(jié)省了帶寬,提高了網(wǎng)絡(luò)處理能力。
增強(qiáng)局域網(wǎng)的安全性:不同VLAN內(nèi)的報文在傳輸時是相互隔離的,即一個VLAN內(nèi)的用戶不能和其它VLAN內(nèi)的用戶直接通信。
提高了網(wǎng)絡(luò)的健壯性:故障被限制在一個VLAN內(nèi),本VLAN內(nèi)的故障不會影響其他VLAN的正常工作。
靈活構(gòu)建虛擬工作組:用VLAN可以劃分不同的用戶到不同的工作組,同一工作組的用戶也不必局限于某一固定的物理范圍,網(wǎng)絡(luò)構(gòu)建和維護(hù)更方便靈活。
VLAN的基本概念
VLAN標(biāo)簽:
要使設(shè)備能夠分辨不同VLAN的報文,需要在報文中添加標(biāo)識VLAN信息的字段。IEEE 802.1Q協(xié)議規(guī)定,在以太網(wǎng)數(shù)據(jù)幀的目的MAC地址和源MAC地址字段之后、協(xié)議類型字段之前加入4個字節(jié)的VLAN標(biāo)簽(又稱VLAN Tag,簡稱Tag),用以標(biāo)識VLAN信息。
VLAN幀格式:
字段解釋:
字段 | 長度 | 含義 | 取值 |
---|---|---|---|
TPID | 2Byte | Tag Protocol Identifier(標(biāo)簽協(xié)議標(biāo)識符),表示數(shù)據(jù)幀類型。 | 表示幀類型,取值為0x8100時表示IEEE 802.1Q的VLAN數(shù)據(jù)幀。如果不支持802.1Q的設(shè)備收到這樣的幀,會將其丟棄。 各設(shè)備廠商可以自定義該字段的值。當(dāng)鄰居設(shè)備將TPID值配置為非0x8100時, 為了能夠識別這樣的報文,實現(xiàn)互通,必須在本設(shè)備上修改TPID值,確保和鄰居設(shè)備的TPID值配置一致。 |
PRI | 3bit | Priority,表示數(shù)據(jù)幀的802.1Q優(yōu)先級。 | 取值范圍為0~7,值越大優(yōu)先級越高。當(dāng)網(wǎng)絡(luò)阻塞時,設(shè)備優(yōu)先發(fā)送優(yōu)先級高的數(shù)據(jù)幀。 |
CFI | 1bit | Canonical Format Indicator(標(biāo)準(zhǔn)格式指示位),表示MAC地址在不同的傳輸介質(zhì)中是否以標(biāo)準(zhǔn)格式進(jìn)行封裝,用于兼容以太網(wǎng)和令牌環(huán)網(wǎng)。 | CFI取值為0表示MAC地址以標(biāo)準(zhǔn)格式進(jìn)行封裝,為1表示以非標(biāo)準(zhǔn)格式封裝。在以太網(wǎng)中,CFI的值為0。 |
VID | 12bit | VLAN ID,表示該數(shù)據(jù)幀所屬VLAN的編號。 | VLAN ID取值范圍是0~4095。由于0和4095為協(xié)議保留取值,所以VLAN ID的有效取值范圍是1~4094。 |
設(shè)備利用VLAN標(biāo)簽中的VID來識別數(shù)據(jù)幀所屬的VLAN,廣播幀只在同一VLAN內(nèi)轉(zhuǎn)發(fā),這就將廣播域限制在一個VLAN內(nèi)。
常用設(shè)備收發(fā)數(shù)據(jù)幀的VLAN標(biāo)簽情況:
在一個VLAN交換網(wǎng)絡(luò)中,以太網(wǎng)幀主要有以下兩種格式:
有標(biāo)記幀(Tagged幀):加入了4字節(jié)VLAN標(biāo)簽的幀。無標(biāo)記幀(Untagged幀):原始的、未加入4字節(jié)VLAN標(biāo)簽的幀。
常用設(shè)備中:
用戶主機(jī)、服務(wù)器、Hub只能收發(fā)Untagged幀。交換機(jī)、路由器和AC既能收發(fā)Tagged幀,也能收發(fā)Untagged幀。語音終端、AP等設(shè)備可以同時收發(fā)一個Tagged幀和一個Untagged幀。
為了提高處理效率,設(shè)備內(nèi)部處理的數(shù)據(jù)幀一律都是Tagged幀。
鏈路類型和接口類型:
設(shè)備內(nèi)部處理的數(shù)據(jù)幀一律都帶有VLAN標(biāo)簽,而現(xiàn)網(wǎng)中的設(shè)備有些只會收發(fā)Untagged幀,要與這些設(shè)備交互,就需要接口能夠識別Untagged幀并在收發(fā)時給幀添加、剝除VLAN標(biāo)簽。同時,現(xiàn)網(wǎng)中屬于同一個VLAN的用戶可能會被連接在不同的設(shè)備上,且跨越設(shè)備的VLAN可能不止一個,如果需要用戶間的互通,就需要設(shè)備間的接口能夠同時識別和發(fā)送多個VLAN的數(shù)據(jù)幀。
為了適應(yīng)不同的連接和組網(wǎng),設(shè)備定義了Access接口、Trunk接口和Hybrid接口3種接口類型,以及接入鏈路(Access Link)和干道鏈路(Trunk Link)兩種鏈路類型。
鏈路類型:
根據(jù)鏈路中需要承載的VLAN數(shù)目的不同,以太網(wǎng)鏈路分為:
- 接入鏈路
接入鏈路只可以承載1個VLAN的數(shù)據(jù)幀,用于連接設(shè)備和用戶終端(如用戶主機(jī)、服務(wù)器等)。通常情況下,用戶終端并不需要知道自己屬于哪個VLAN,也不能識別帶有Tag的幀,所以在接入鏈路上傳輸?shù)膸际荱ntagged幀。
- 干道鏈路
干道鏈路可以承載多個不同VLAN的數(shù)據(jù)幀,用于設(shè)備間互連。為了保證其它網(wǎng)絡(luò)設(shè)備能夠正確識別數(shù)據(jù)幀中的VLAN信息,在干道鏈路上傳輸?shù)臄?shù)據(jù)幀必須都打上Tag。
接口類型:
根據(jù)接口連接對象以及對收發(fā)數(shù)據(jù)幀處理的不同,以太網(wǎng)接口分為:
- Access接口
Access接口一般用于和不能識別Tag的用戶終端(如用戶主機(jī)、服務(wù)器等)相連,或者不需要區(qū)分不同VLAN成員時使用。它只能收發(fā)Untagged幀,且只能為Untagged幀添加唯一VLAN的Tag。
- Trunk接口
Trunk接口一般用于連接交換機(jī)、路由器、AP以及可同時收發(fā)Tagged幀和Untagged幀的語音終端。它可以允許多個VLAN的幀帶Tag通過,但只允許一個VLAN的幀從該類接口上發(fā)出時不帶Tag(即剝除Tag)。
- Hybrid接口
Hybrid接口既可以用于連接不能識別Tag的用戶終端(如用戶主機(jī)、服務(wù)器等)和網(wǎng)絡(luò)設(shè)備(如Hub),也可以用于連接交換機(jī)、路由器以及可同時收發(fā)Tagged幀和Untagged幀的語音終端、AP。它可以允許多個VLAN的幀帶Tag通過,且允許從該類接口發(fā)出的幀根據(jù)需要配置某些VLAN的幀帶Tag(即不剝除Tag)、某些VLAN的幀不帶Tag(即剝除Tag)。
Hybrid接口和Trunk接口在很多應(yīng)用場景下可以通用,但在某些應(yīng)用場景下,必須使用Hybrid接口。比如一個接口連接不同VLAN網(wǎng)段的場景中,因為一個接口需要給多個Untagged報文添加Tag,所以必須使用Hybrid接口。
缺省VLAN:
缺省VLAN又稱PVID(Port Default VLAN ID)。前面提到,設(shè)備處理的數(shù)據(jù)幀都帶Tag,當(dāng)設(shè)備收到Untagged幀時,就需要給該幀添加Tag,添加什么Tag,就由接口上的缺省VLAN決定。
接口收發(fā)數(shù)據(jù)幀時,對Tag的添加或剝除過程。
對于Access接口,缺省VLAN就是它允許通過的VLAN,修改缺省VLAN即可更改接口允許通過的VLAN。對于Trunk接口和Hybrid接口,一個接口可以允許多個VLAN通過,但是只能有一個缺省VLAN。接口的缺省VLAN和允許通過的VLAN需要分別配置,互不影響。 同類型接口添加或剝除VLAN標(biāo)簽的比較:
接口類型 | 對接收不帶Tag的報文處理 | 對接收帶Tag的報文處理 | 發(fā)送幀處理過程 |
---|---|---|---|
Access接口 | 接收該報文,并打上缺省的VLAN ID。 | 當(dāng)VLAN ID與缺省VLAN ID相同時,接收該報文。當(dāng)VLAN ID與缺省VLAN ID不同時,丟棄該報文。 | 先剝離幀的PVID Tag,然后再發(fā)送。 |
Trunk接口 | 打上缺省的VLAN ID,當(dāng)缺省VLAN ID在允許通過的VLAN ID列表里時,接收該報文。打上缺省的VLAN ID,當(dāng)缺省VLAN ID不在允許通過的VLAN ID列表里時,丟棄該報文。 | 當(dāng)VLAN ID在接口允許通過的VLAN ID列表里時,接收該報文。當(dāng)VLAN ID不在接口允許通過的VLAN ID列表里時,丟棄該報文。 | 當(dāng)VLAN ID與缺省VLAN ID相同,且是該接口允許通過的VLAN ID時,去掉Tag,發(fā)送該報文。當(dāng)VLAN ID與缺省VLAN ID不同,且是該接口允許通過的VLAN ID時,保持原有Tag,發(fā)送該報文。 |
Hybrid接口 | 打上缺省的VLAN ID,當(dāng)缺省VLAN ID在允許通過的VLAN ID列表里時,接收該報文。打上缺省的VLAN ID,當(dāng)缺省VLAN ID不在允許通過的VLAN ID列表里時,丟棄該報文。 | 當(dāng)VLAN ID在接口允許通過的VLAN ID列表里時,接收該報文。當(dāng)VLAN ID不在接口允許通過的VLAN ID列表里時,丟棄該報文。 | 當(dāng)VLAN ID是該接口允許通過的VLAN ID時,發(fā)送該報文??梢酝ㄟ^命令設(shè)置發(fā)送時是否攜帶Tag。 |
當(dāng)接收到不帶VLAN標(biāo)簽的數(shù)據(jù)幀時,Access接口、Trunk接口、Hybrid接口都會給數(shù)據(jù)幀打上VLAN標(biāo)簽,但Trunk接口、Hybrid接口會根據(jù)數(shù)據(jù)幀的VID是否為其允許通過的VLAN來判斷是否接收,而Access接口則無條件接收。
當(dāng)接收到帶VLAN標(biāo)簽的數(shù)據(jù)幀時,Access接口、Trunk接口、Hybrid接口都會根據(jù)數(shù)據(jù)幀的VID是否為其允許通過的VLAN(Access接口允許通過的VLAN就是缺省VLAN)來判斷是否接收。
當(dāng)發(fā)送數(shù)據(jù)幀時:
Access接口直接剝離數(shù)據(jù)幀中的VLAN標(biāo)簽。Trunk接口只有在數(shù)據(jù)幀中的VID與接口的PVID相等時才會剝離數(shù)據(jù)幀中的VLAN標(biāo)簽。Hybrid接口會根據(jù)接口上的配置判斷是否剝離數(shù)據(jù)幀中的VLAN標(biāo)簽。
因此,Access接口發(fā)出的數(shù)據(jù)幀肯定不帶Tag,Trunk接口發(fā)出的數(shù)據(jù)幀只有一個VLAN的數(shù)據(jù)幀不帶Tag,其他都帶VLAN標(biāo)簽,Hybrid接口發(fā)出的數(shù)據(jù)幀可根據(jù)需要設(shè)置某些VLAN的數(shù)據(jù)幀帶Tag,某些VLAN的數(shù)據(jù)幀不帶Tag。
VLAN通信 VLAN內(nèi)互訪:
同一VLAN內(nèi)用戶互訪(簡稱VLAN內(nèi)互訪)會經(jīng)過如下三個環(huán)節(jié)。
用戶主機(jī)的報文轉(zhuǎn)發(fā)
源主機(jī)在發(fā)起通信之前,會將自己的IP與目的主機(jī)的IP進(jìn)行比較,如果兩者位于同一網(wǎng)段,會獲取目的主機(jī)的MAC地址,并將其作為目的MAC地址封裝進(jìn)報文;如果兩者位于不同網(wǎng)段,源主機(jī)會將報文遞交給網(wǎng)關(guān),獲取網(wǎng)關(guān)的MAC地址,并將其作為目的MAC地址封裝進(jìn)報文。
設(shè)備內(nèi)部的以太網(wǎng)交換
設(shè)備
如果目的MAC地址+VID匹配自己的MAC表且三層轉(zhuǎn)發(fā)標(biāo)志置位,則進(jìn)行三層交換,會根據(jù)報文的目的IP地址查找三層轉(zhuǎn)發(fā)表項,如果沒有找到會將報文上送CPU,由CPU查找路由表實現(xiàn)三層轉(zhuǎn)發(fā)。如果目的MAC地址+VID匹配自己的MAC表但三層轉(zhuǎn)發(fā)標(biāo)志未置位,則進(jìn)行二層交換,會直接將報文根據(jù)MAC表的出接口發(fā)出去。如果目的MAC地址+VID沒有匹配自己的MAC表,則進(jìn)行二層交換,此時會向所有允許VID通過的接口廣播該報文,以獲取目的主機(jī)的MAC地址。
設(shè)備之間交互時,VLAN標(biāo)簽的添加和剝離
設(shè)備內(nèi)部的以太網(wǎng)交換都是帶Tag的,為了與不同設(shè)備進(jìn)行成功交互,設(shè)備需要根據(jù)接口的設(shè)置添加或剝除Tag。不同接口VLAN標(biāo)簽添加和剝離情況不同。
從以太網(wǎng)交換原理可以看出,劃分VLAN后,廣播報文只在同一VLAN內(nèi)二層轉(zhuǎn)發(fā),因此同一VLAN內(nèi)的用戶可以直接二層互訪。根據(jù)屬于同一VLAN的主機(jī)是否連接在不同的設(shè)備,VLAN內(nèi)互訪有兩種場景:同設(shè)備VLAN內(nèi)互訪和跨設(shè)備VLAN內(nèi)互訪。
同設(shè)備VLAN內(nèi)互訪:
如下圖所示,用戶主機(jī)Host_1和Host_2連接在同臺設(shè)備上,屬于同一VLAN2,且位于相同網(wǎng)段,連接接口均設(shè)置為Access接口。
(假設(shè)Router上還未建立任何轉(zhuǎn)發(fā)表項)。
- Host_1判斷目的IP地址跟自己的IP地址在同一網(wǎng)段,于是發(fā)送ARP廣播請求報文獲取目的主機(jī)Host_2的MAC地址,報文目的MAC填寫全F,目的IP為Host_2的IP地址10.1.1.3。
- 報文到達(dá)Router的接口IF_1,發(fā)現(xiàn)是Untagged幀,給報文添加VID=2的Tag(Tag的VID=接口的PVID),然后根據(jù)報文的源MAC地址、VID和報文入接口(1-1-1, 2, IF_1)生成MAC表。
- 根據(jù)報文目的MAC地址+VID查找Router的MAC表,沒有找到,于是在所有允許VLAN2通過的接口(本例中接口為IF_2)廣播該報文。
- Router的接口IF_2在發(fā)出ARP請求報文前,根據(jù)接口配置,剝離VID=2的Tag。
- Host_2收到該ARP請求報文,將Host_1的MAC地址和IP地址對應(yīng)關(guān)系記錄ARP表。然后比較目的IP與自己的IP,發(fā)現(xiàn)跟自己的相同,就發(fā)送ARP響應(yīng)報文,報文中封裝自己的MAC地址2-2-2,目的IP為Host_1的IP地址10.1.1.2。
- Router的接口IF_2收到ARP響應(yīng)報文后,同樣給報文添加VID=2的Tag。
- Router根據(jù)報文的源MAC地址、VID和報文入接口(2-2-2, 2, IF_2)生成MAC表,然后根據(jù)報文的目的MAC地址+VID(1-1-1, 2)查找MAC地址表,由于前面已記錄,查找成功,向出接口IF_1轉(zhuǎn)發(fā)該ARP響應(yīng)報文。
- Router向出接口IF_1轉(zhuǎn)發(fā)前,同樣根據(jù)接口配置剝離VID=2的Tag。
- Host_1收到Host_2的ARP響應(yīng)報文,將Host_2的MAC地址和IP地址對應(yīng)關(guān)系記錄ARP表。
后續(xù)Host_1與Host_2的互訪,由于彼此已學(xué)習(xí)到對方的MAC地址,報文中的目的MAC地址直接填寫對方的MAC地址。
此組網(wǎng)場景下,當(dāng)同一VLAN的用戶處于不同網(wǎng)段時,主機(jī)將在報文中封裝網(wǎng)關(guān)的MAC地址,可借助VLANIF技術(shù)(需配置主從IP地址)實現(xiàn)互訪。
跨設(shè)備VLAN內(nèi)互訪:
如下圖,用戶主機(jī)Host_1和Host_2連接在不同的設(shè)備上,屬于同一個VLAN2,且位于相同網(wǎng)段。為了識別和發(fā)送跨越設(shè)備的數(shù)據(jù)幀,設(shè)備間通過干道鏈路連接。
當(dāng)用戶主機(jī)Host_1發(fā)送報文給用戶主機(jī)Host_2時,報文的發(fā)送過程如下(假設(shè)Router_1和Router_2上還未建立任何轉(zhuǎn)發(fā)表項)。
- 經(jīng)過與同設(shè)備VLAN內(nèi)互訪的步驟1~2一樣的過程后,報文被廣播到Router_1的IF_2接口。
- Router_1的IF_2接口在發(fā)出ARP請求報文前,因為接口的PVID=1(缺省值),與報文的VID不相等,直接透傳該報文到Router_2的IF_2接口,不剝除報文的Tag。
- Router_2的IF_2接口收到該報文后,判斷報文的Tag中的VID=2是接口允許通過的VLAN,接收該報文。
- 經(jīng)過與同設(shè)備VLAN內(nèi)互訪的步驟3~6一樣的過程后,Router_2將向其出接口IF_2轉(zhuǎn)發(fā)Host_2的ARP響應(yīng)報文,轉(zhuǎn)發(fā)前,因為接口IF_2為Trunk接口且PVID=1(缺省值),與報文的VID不相等,直接透傳報文到Router_1的IF_2接口。
- Router_1的IF_2接口收到Host_2的ARP響應(yīng)報文后,判斷報文的Tag中的VID=2是接口允許通過的VLAN,接收該報文。后續(xù)處理同同設(shè)備VLAN內(nèi)互訪的步驟7~9一樣。
可見,干道鏈路除可傳輸多個VLAN的數(shù)據(jù)幀外,還起到透傳VLAN的作用,即干道鏈路上,數(shù)據(jù)幀只會轉(zhuǎn)發(fā),不會發(fā)生Tag的添加或剝離。
VLAN間互訪:
劃分VLAN后,由于廣播報文只在同VLAN內(nèi)轉(zhuǎn)發(fā),所以不同VLAN的用戶間不能二層互訪,這樣能起到隔離廣播的作用。但實際應(yīng)用中,不同VLAN的用戶又常有互訪的需求,此時就需要實現(xiàn)不同VLAN的用戶互訪,簡稱VLAN間互訪。
同VLAN間互訪一樣,VLAN間互訪也會經(jīng)過用戶主機(jī)的報文轉(zhuǎn)發(fā)、設(shè)備內(nèi)部的以太網(wǎng)交換、設(shè)備之間交互時VLAN標(biāo)簽的添加和剝離三個環(huán)節(jié)。同樣,根據(jù)以太網(wǎng)交換原理,廣播報文只在同一VLAN內(nèi)轉(zhuǎn)發(fā),不同VLAN內(nèi)的用戶則不能直接二層互訪,需要借助三層路由技術(shù)或VLAN轉(zhuǎn)換技術(shù)才能實現(xiàn)互訪。
VLAN間互訪技術(shù):
華為提供了多種技術(shù)實現(xiàn)VLAN間互訪,常用的兩種技術(shù)為VLANIF接口和Dot1q終結(jié)子接口。
VLANIF接口
VLANIF接口是一種三層的邏輯接口。在VLANIF接口上配置IP地址后,設(shè)備會在MAC地址表中添加VLANIF接口的MAC地址+VID表項,并且為表項的三層轉(zhuǎn)發(fā)標(biāo)志位置位。當(dāng)報文的目的MAC地址匹配該表項后,會進(jìn)行三層轉(zhuǎn)發(fā),進(jìn)而實現(xiàn)VLAN間的三層互通。
VLANIF配置簡單,是實現(xiàn)VLAN間互訪最常用的一種技術(shù)。但每個VLAN需要配置一個VLANIF,并在接口上指定一個IP子網(wǎng)網(wǎng)段,比較浪費IP地址。
Dot1q終結(jié)子接口
子接口也是一種三層的邏輯接口。跟VLANIF接口一樣,在子接口上配置Dot1q終結(jié)功能和IP地址后,設(shè)備也會添加相應(yīng)的MAC表項并置位三層轉(zhuǎn)發(fā)標(biāo)志位,進(jìn)而實現(xiàn)VLAN間的三層互通。
Dot1q終結(jié)子接口適用于通過一個三層以太網(wǎng)接口下接多個VLAN網(wǎng)絡(luò)的環(huán)境。由于不同VLAN的數(shù)據(jù)流會爭用同一個以太網(wǎng)主接口的帶寬,網(wǎng)絡(luò)繁忙時,會導(dǎo)致通信瓶頸。
通過VLANIF接口實現(xiàn)VLAN間互訪,必須要求VLAN間的用戶都只能處于不同的網(wǎng)段(因為相同網(wǎng)段,主機(jī)會封裝目的主機(jī)的MAC地址,設(shè)備判斷進(jìn)行二層交換,二層交換只在同VLAN內(nèi),廣播報文無法到達(dá)不同的VLAN,獲取不到目的主機(jī)的MAC地址,也就無法實現(xiàn)互通)。現(xiàn)網(wǎng)中,也存在不同VLAN相同網(wǎng)段的組網(wǎng)需求,此時可通過VLAN聚合實現(xiàn)。
VLAN聚合(又稱Super VLAN)通過引入Super-VLAN和Sub-VLAN,將一個Super-VLAN和多個Sub-VLAN關(guān)聯(lián),多個Sub-VLAN共享Super-VLAN的IP地址作為其網(wǎng)關(guān)IP,實現(xiàn)與外部網(wǎng)絡(luò)的三層互通;并通過在Sub-VLAN間啟用Proxy ARP,實現(xiàn)Sub-VLAN間的三層互通,進(jìn)而即節(jié)約IP地址資源,又實現(xiàn)VLAN間的三層互通。
VLAN聚合通常用于多個VLAN共用一個網(wǎng)關(guān)的組網(wǎng)場景。
同設(shè)備VLAN間互訪:
如下圖:互訪的源主機(jī)Host_1和目的主機(jī)Host_2連接在同一臺設(shè)備Router上,分別屬于VLAN2和VLAN3,并位于不同的網(wǎng)段。在Router上分別創(chuàng)建VLANIF2和VLANIF3并配置其IP地址,然后將用戶主機(jī)的缺省網(wǎng)關(guān)設(shè)置為所屬VLAN對應(yīng)VLANIF接口的IP地址。
當(dāng)用戶主機(jī)Host_1發(fā)送報文給用戶主機(jī)Host_2時,報文的發(fā)送過程如下(假設(shè)Router上還未建立任何轉(zhuǎn)發(fā)表項)。
- Host_1判斷目的IP地址跟自己的IP地址不在同一網(wǎng)段,因此,它發(fā)出請求網(wǎng)關(guān)MAC地址的ARP請求報文,目的IP為網(wǎng)關(guān)IP 10.1.1.1,目的MAC為全F。
- 報文到達(dá)Router的接口IF_1,Router給報文添加VID=2的Tag(Tag的VID=接口的PVID),然后將報文的源MAC地址+VID與接口的對應(yīng)關(guān)系(1-1-1, 2, IF_1)添加進(jìn)MAC表。
- Router檢查報文是ARP請求報文,且目的IP是自己VLANIF2接口的IP地址,給Host_1應(yīng)答,并將VLANIF2接口的MAC地址3-3-3封裝在應(yīng)答報文中,應(yīng)答報文從IF_1發(fā)出前,剝掉VID=2的Tag。同時,Router會將Host_1的IP地址與MAC地址的對應(yīng)關(guān)系記錄到ARP表。
- Host_1收到Router的應(yīng)答報文,將Router的VLANIF2接口的IP地址與MAC地址對應(yīng)關(guān)系記錄到自己的ARP表中,并向Router發(fā)送目的MAC為3-3-3、目的IP為Host_2的IP地址 10.2.2.2的報文。
- 報文到達(dá)Router的接口IF_1,同樣給報文添加VID=2的Tag。
- Router根據(jù)報文的源MAC地址+VID與接口的對應(yīng)關(guān)系更新MAC表,并比較報文的目的MAC地址與VLANIF2的MAC地址,發(fā)現(xiàn)兩者相等,進(jìn)行三層轉(zhuǎn)發(fā),根據(jù)目的IP查找三層轉(zhuǎn)發(fā)表,沒有找到匹配項,上送CPU查找路由表。
- CPU根據(jù)報文的目的IP去找路由表,發(fā)現(xiàn)匹配了一個直連網(wǎng)段(VLANIF3對應(yīng)的網(wǎng)段),于是繼續(xù)查找ARP表,沒有找到,Router會在目的網(wǎng)段對應(yīng)的VLAN3的所有接口發(fā)送ARP請求報文,目的IP是10.2.2.2。從接口IF_2發(fā)出前,根據(jù)接口配置,剝掉VID=2的Tag。
- Host_2收到ARP請求報文,發(fā)現(xiàn)請求IP是自己的IP地址,就發(fā)送ARP應(yīng)答報文,將自己的MAC地址包含在其中。同時,將VLANIF3的MAC地址與IP地址的對應(yīng)關(guān)系記錄到自己的ARP表中。
- Router的接口IF_2收到Host_2的ARP應(yīng)答報文后,給報文添加VID=3的Tag,并將Host_2的MAC和IP的對應(yīng)關(guān)系記錄到自己的ARP表中。然后,將Host_1的報文轉(zhuǎn)發(fā)給Host_2,發(fā)送前,同樣剝離報文中的Tag。同時,將Host_2的IP、MAC、VID及出接口的對應(yīng)關(guān)系記錄到三層轉(zhuǎn)發(fā)表中。
至此,Host_1完成對Host_2的單向訪問。Host_2訪問Host_1的過程與此類似。這樣,后續(xù)Host_1與Host_2之間的往返報文,都先發(fā)送給網(wǎng)關(guān)Router,由Router查三層轉(zhuǎn)發(fā)表進(jìn)行三層轉(zhuǎn)發(fā)。
跨設(shè)備VLAN間互訪:
由于VLANIF接口的IP地址只能在設(shè)備上生成直連路由,當(dāng)不同VLAN的用戶跨多臺設(shè)備互訪時,除配置VLANIF接口的IP地址外,還需要配置靜態(tài)路由或運行動態(tài)路由協(xié)議。
如下圖所示,互訪的源主機(jī)Host_1和目的主機(jī)Host_2連接在不同的設(shè)備Router_1和Router_2上,分別屬于VLAN2和VLAN3,并位于不同的網(wǎng)段。在Router_1上分別創(chuàng)建VLANIF2和VLANIF4,配置其IP地址為10.1.1.1和10.1.4.1;在Router_2上分別創(chuàng)建VLANIF3和VLANIF4,配置其IP地址為10.1.2.1和10.1.4.2,并在Router_1和Router_2上分別配置靜態(tài)路由。Router_1上靜態(tài)路由的目的網(wǎng)段是10.1.2.0/24,下一跳是10.1.4.2;Router_2上靜態(tài)路由的目的網(wǎng)段是10.1.1.0/24,下一跳是10.1.4.1。
當(dāng)用戶主機(jī)Host_1發(fā)送報文給用戶主機(jī)Host_2時,報文的發(fā)送過程如下(假設(shè)Router_1和Router_2上還未建立任何轉(zhuǎn)發(fā)表項)。
- 與同設(shè)備VLAN間互訪的步驟1~6一樣,經(jīng)過“Host_1比較目的IP地址—>Host_1查ARP表—>Host_1獲取網(wǎng)關(guān)MAC地址—>Host_1將發(fā)給Host_2的報文送到Router_1—>Router_1查MAC表—>Router_1查三層轉(zhuǎn)發(fā)表”的過程,Router_1上送CPU查找路由表。
- Router_1的CPU根據(jù)報文的目的IP 10.1.2.2去找路由表,發(fā)現(xiàn)匹配了一個路由網(wǎng)段10.1.2.0/24(VLANIF3對應(yīng)的網(wǎng)段),下一跳IP地址為10.1.4.2,于是繼續(xù)查找ARP表,沒有找到,Router_1會在下一跳IP地址對應(yīng)的VLAN4的所有接口發(fā)送ARP請求報文,目的IP是10.1.4.2。報文從Router_1的接口IF_2發(fā)出前,根據(jù)接口配置,直接透傳該報文到Router_2的IF_2接口,不剝除報文的Tag。
- ARP請求報文到達(dá)Router_2后,發(fā)現(xiàn)目的IP為VLANIF4接口的IP地址,給Router_1回應(yīng),填寫VLANIF4接口的MAC地址。
- Router_2的ARP響應(yīng)報文從其IF_2接口直接透傳到Router_1,Router_1接收后,記錄VLANIF4的MAC地址與IP地址的對應(yīng)關(guān)系到ARP表項。
- Router_1將Host_1的報文轉(zhuǎn)發(fā)給Router_2,報文的目的MAC修改為Router_2的VLANIF4接口的MAC地址,源MAC地址修改自己的VLANIF4接口的MAC地址,并將剛用到的轉(zhuǎn)發(fā)信息記錄在三層轉(zhuǎn)發(fā)表中(10.1.2.0/24,下一跳IP的MAC地址, 出口VLAN, 出接口)。同樣,報文是直接透傳到Router_2的IF_2接口。
- Router_2收到Router_1轉(zhuǎn)發(fā)的Host_1的報文后,與同設(shè)備VLAN間互訪的步驟6~9一樣,經(jīng)過“查MAC表—>查三層轉(zhuǎn)發(fā)表—>送CPU—>匹配直連路由—>查ARP表并獲取Host_2的MAC地址—>將Host_1的報文轉(zhuǎn)發(fā)給Host_2”的過程,同時將Host_2的IP地址、MAC地址、出口VLAN、出接口記錄到三層轉(zhuǎn)發(fā)表項。
VLAN Damping:
VLAN抑制
如果指定VLAN已經(jīng)創(chuàng)建對應(yīng)的VLANIF接口,當(dāng)VLAN中所有接口狀態(tài)變?yōu)镈own而引起VLAN狀態(tài)變?yōu)镈own時,VLAN會向VLANIF接口上報接口Down狀態(tài),從而引起VLANIF接口狀態(tài)變化。
為避免由于VLANIF接口狀態(tài)變化引起的網(wǎng)絡(luò)震蕩,可以在VLANIF接口上啟動VLAN Damping功能,抑制VLANIF接口狀態(tài)變?yōu)镈own的時間。
當(dāng)使能VLAN Damping功能,VLAN中最后一個處于Up狀態(tài)的接口變?yōu)镈own后,會抑制一定時間(抑制時間可配置)再上報給VLANIF接口。如果在抑制時間內(nèi)VLAN中有接口Up,則VLANIF接口狀態(tài)保持Up狀態(tài)不變。即VLAN Damping功能可以適當(dāng)延遲VLAN向VLANIF接口上報接口Down狀態(tài)的時間,從而抑制不必要的路由震蕩。
VLAN內(nèi)二層隔離:
為了實現(xiàn)用戶之間的二層隔離,可以將不同的用戶加入不同的VLAN。但若企業(yè)規(guī)模很大,擁有大量的用戶,那么就要為不能互相訪問的用戶都分配VLAN,這不但需要耗費大量的VLAN,還增加了網(wǎng)絡(luò)管理者配置和維護(hù)的工作量。
為此,華為提供了一些VLAN內(nèi)二層隔離技術(shù),如端口隔離、MUX VLAN和基于MQC的VLAN內(nèi)二層隔離等。
端口隔離:
端口隔離可實現(xiàn)同一VLAN內(nèi)端口之間的隔離。用戶只需要將端口加入到隔離組中,就可以實現(xiàn)隔離組內(nèi)端口之間的二層隔離,不同隔離組的端口之間或者不屬于任何隔離組的端口與其他端口之間都能進(jìn)行正常的數(shù)據(jù)轉(zhuǎn)發(fā)。同時,用戶還可以通過配置實現(xiàn)端口的單向隔離,為用戶提供更安全、更靈活的組網(wǎng)方案。
MUX VLAN:
MUX VLAN(Multiplex VLAN)提供了一種通過VLAN進(jìn)行網(wǎng)絡(luò)資源控制的機(jī)制。它既可實現(xiàn)VLAN間用戶通信,也可實現(xiàn)VLAN內(nèi)的用戶相互隔離。
比如,企業(yè)有如下需求:
要求企業(yè)內(nèi)部員工之間可以互相交流,而企業(yè)客戶之間是隔離的,不能夠互相訪問。要求企業(yè)員工和企業(yè)客戶都可以訪問企業(yè)的服務(wù)器。
此種場景,通過部署MUX-VLAN就可以實現(xiàn)。
基于流策略的VLAN內(nèi)二層隔離:
流策略是將流分類和流行為關(guān)聯(lián)后形成的完整的QoS策略?;诹鞑呗缘腣LAN內(nèi)二層隔離指用戶可以根據(jù)匹配規(guī)則對報文進(jìn)行流分類,然后通過流策略將流分類與permit/deny動作相關(guān)聯(lián),使符合流分類的報文被允許或被禁止通過,從而實現(xiàn)靈活的VLAN內(nèi)單向或雙向隔離。
VLAN間三層隔離:
VLAN間實現(xiàn)三層互通后,兩VLAN內(nèi)的所有用戶之間都可以互相訪問,但某些場景中,需要禁止部分用戶之間的互訪或者只允許用戶單向訪問,比如用戶主機(jī)和服務(wù)器之間一般是單向訪問、企業(yè)的訪客一般只允許上網(wǎng)和訪問部分服務(wù)器等。此時,就需要配置VLAN間互訪控制。
VLAN間互訪控制一般通過流策略實現(xiàn)。用戶可根據(jù)實際需求定義匹配規(guī)則對報文進(jìn)行流分類,然后通過流策略將流分類與permit/deny動作相關(guān)聯(lián),使符合流分類的報文被允許或禁止通過,從而實現(xiàn)靈活的VLAN間互訪控制。
管理VLAN:
當(dāng)用戶通過遠(yuǎn)端網(wǎng)管集中管理設(shè)備時,需要在設(shè)備上通過VLANIF接口配置IP地址作為設(shè)備管理IP,通過管理IP來STelnet到設(shè)備上進(jìn)行管理。若設(shè)備上其他接口相連的用戶加入該VLAN,也可以訪問該設(shè)備,增加了設(shè)備的不安全因素。
這種情況下可以配置VLAN為管理VLAN(與管理VLAN對應(yīng),沒有指定為管理VLAN的VLAN稱為業(yè)務(wù)VLAN),不允許Access類型和Dot1q-tunnel類型接口加入該VLAN。由于Access類型和Dot1q-tunnel類型通常用于連接用戶,限制這兩種類型接口加入管理VLAN后,與該接口相連的用戶就無法訪問該設(shè)備,從而增加了設(shè)備的安全性。
版權(quán)聲明:本文為CSDN博主「曹世宏的博客」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_38265137/article/details/80390759
相關(guān)推薦:
相關(guān)文章
交換機(jī)vlan劃分有哪些方法? 交換機(jī)劃分vlan的三種方法詳細(xì)介紹
交換機(jī)vlan劃分有哪些方法?交換機(jī)進(jìn)行vlan劃分的時候,該怎么劃分呢?有哪些方法?下面我們就來看看交換機(jī)劃分vlan的三種方法詳細(xì)介紹,需要的朋友可以參考下2021-05-11- 今天我們來介紹關(guān)于vlan的基礎(chǔ)知識,主要從vlan的技術(shù)特點,端口類型,以及vlan劃分的過程,通過一個實例來進(jìn)行詳細(xì)分析,適合新手學(xué)習(xí),需要的朋友可以參考下2021-05-11
- 華為交換機(jī)vlan下怎么配置流量抑制功能?公司使用華為交換機(jī),由于企業(yè)內(nèi)部網(wǎng)絡(luò)經(jīng)常會出現(xiàn)大量無效的網(wǎng)絡(luò)流量,該怎么配置流量抑制功能呢?下面我們就來看看詳細(xì)的教程,需2020-12-11
華為交換機(jī)怎么配置VLAN和VLANif接口IP地址?
華為交換機(jī)怎么配置VLAN和VLANif接口IP地址?華為交換機(jī)想要配置VLAN和VLANif,該怎么配置呢?下面我們就來啊看看你詳細(xì)的教程,需要的朋友可以參考下2017-07-06- CISCO交換機(jī)配置了很多接口,想要刪除不用的VLAN,該怎么刪除呢?發(fā)現(xiàn)使用no vlan刪除不干凈,下面我們就來介紹詳細(xì)的解決辦法,需要的朋友可以參考下2017-04-23
如何實現(xiàn)同一路由器不同vlan之間的通信?vlan劃分配置方法
VLAN是一種將局域網(wǎng)設(shè)備從邏輯上劃分成一個個網(wǎng)段,從而實現(xiàn)虛擬工作組的新興數(shù)據(jù)交換技術(shù)。那么如何實現(xiàn)同一路由器不同vlan之間的通信?下面就詳情來看看vlan配置方式了解2017-03-29Unifi Switch交換機(jī)配置vlan及trunk口的教程
Unifi Switch新發(fā)布了交換機(jī),那么很多網(wǎng)友想知道Unifi Switch交換機(jī)怎么配置vlan及trunk口?下面就為大家介紹下Unifi Switch交換機(jī)配置vlan及trunk口的方法,僅供參考2017-03-20C-F6. 多VLAN配置DHCP ? C3750-E 思科(CISCO) 交換機(jī)
按照規(guī)劃分配好VLAN及接口后,就需要考慮哪些VLAN需要配置DHCP服務(wù)了,有可能會有多個VLAN需要配置DHCP服務(wù),下面就詳情來看看DHCP配置的方法,僅供參考2017-03-15虛擬局域網(wǎng) VLAN(Virtual Local Area Network)
虛擬局域網(wǎng)(VLAN)是一組邏輯上的設(shè)備和用戶,這些設(shè)備和用戶并不受物理位置的限制,可以根據(jù)功能、部門及應(yīng)用等因素將它們組織起來,相互之間的通信就好像它們在同一個網(wǎng)2016-11-20- 三層交換機(jī)怎么設(shè)置vlan間通信?在三層交換機(jī)與二層交換機(jī)之間采用trunk鏈路,實現(xiàn)各子網(wǎng)的互聯(lián),但是具體該怎么設(shè)置呢?下面我們來看看三層交換機(jī)vlan通信的設(shè)置方法,需2016-04-13