1 基於端口劃分VLAN
命令含義
port link-type命令用來配置接口的鏈路類型。
port trunk allow-pass vlan命令用來配置Trunk類型接口加入的VLAN。
port hybrid untagged vlan命令用來配置Hybrid類型接口加入的VLAN,這些VLAN的幀以Untagged方式通過接口。
具體用法
接口視圖
參數意義
port link-type { access | dot1q-tunnel | hybrid | trunk }
access:配置接口的鏈路類型爲Access。
dot1q-tunnel:配置接口的鏈路類型爲QinQ。
hybrid:配置接口的鏈路類型爲Hybrid。
trunk:配置接口的鏈路類型爲Trunk。
如上圖所示,基於端口劃分VLAN,且S1的E0/0/1端口必須爲Hybrid端口;僅允許相關VLAN通過trunk鏈路:
S1:
int e0/0/1
port hybrid pvid vlan 2
port hybrid untagged vlan 2
int e0/0/2
port link-type access
port default vlan 3
int e0/0/10
port link-type trunk
port trunk allow-pass vlan 2 3
undo port trunk allow-pass vlan 1
S2:
int e0/0/1
port link-type access
port default vlan 2
int e0/0/2
port link-type access
port default vlan 4
int e0/0/10
port link-type trunk
port trunk allow-pass vlan 2 3
undo port trunk allow-pass vlan 1
2 基於MAC地址劃分VLAN
命令含義
mac-vlan mac-address命令用來配置MAC地址與VLAN關聯。
mac-vlan enable命令用來使能接口的MAC VLAN功能。
注意事項
一個MAC地址關聯了MAC VLAN後,則不可以再用於配置其它MAC VLAN。
當接口收到Untagged報文時,接口會以報文的源MAC地址去匹配MAC-VLAN表項。如果匹配成功,則按照匹配到的VLANID進行轉發;如果匹配失敗,則按照優先級選擇其他匹配原則繼續進行匹配。當收到Tagged報文時,按照基於端口劃分VLAN進行轉發。
二層端口類型必須爲hybrid。
S1:
vlan 2
mac-vlan mac-address 0000-0011-1111
vlan 3
mac-vlan mac-address 0000-0022-2222
int e0/0/1
port hybrid untagged vlan 2 3
mac-vlan enable
int e0/0/10
port link-type trunk
port trunk allow-pass vlan 2 3
undo port trunk allow-pass vlan 1
S2:
vlan 2
mac-vlan mac-address 0000-0011-1111
vlan 3
mac-vlan mac-address 0000-0022-2222
int e0/0/1
port hybrid untagged vlan 2 3
mac-vlan enable
int e0/0/10
port link-type trunk
port trunk allow-pass vlan 2 3
undo port trunk allow-pass vlan 1
display mac-vlan mac-address all
3 基於子網劃分VLAN
命令含義
ip-subnet-vlan命令用來基於IP子網劃分VLAN。
ip-subnet-vlan enable命令用來使能接口基於IP子網劃分VLAN的功能。
注意事項
ip-subnet-vlan命令中的IP網段或IP地址參數不能配置爲組播網段或組播地址。
基於IP子網的VLAN劃分必須在Hybrid類型接口上配置。
S1:
vlan 2
ip-subnet-vlan 1 ip 1.1.1.0 255.255.255.0
vlan 3
ip-subnet-vlan 1 ip 1.1.2.0 255.255.255.0
int e0/0/1
port hybrid untagged vlan 2 3
ip-subnet-vlan enable
4 基於協議劃分VLAN
命令含義
protocol-vlan命令用來配置基於協議劃分VLAN,並指定關聯的協議。
protocol-vlan vlan命令用來配置接口關聯協議VLAN。
注意事項
基於協議的VLAN劃分必須在Hybrid類型接口上配置。
如果接口採用基於協議劃分VLAN的機制,當接口收到報文時,交換機需要解析報文的協議類型並進行相應轉換。
vlan 2
protocol-vlan 0 ipv6
vlan 3
protocol-vlan 0 ipv4
int e0/0/1
port hybrid untagged vlan 2 3
protocol-vlan vlan 2 0 priority 0
protocol-vlan vlan 3 0 priority 0
5 配置VLAN Aggregation
VLAN Aggregation(VLAN聚合,也稱Super VLAN)技術就是在一個物理網絡內,用多個VLAN隔離廣播域,使不同的VLAN 屬於同一個子網。
Super-VLAN:和通常意義上的VLAN不同,它只建立三層接口,與該子網對應,而且不包含物理端口。可以把它看作一個邏輯的三層概念——若干Sub-VLAN的集合。
Sub-VLAN:只包含物理端口,用於隔離廣播域的VLAN,不能建立三層VLAN接口。它與外部的三層交換是靠Super-VLAN的三層接口來實現的。
一個Super-VLAN可以包含一個或多個保持着不同廣播域的Sub-VLAN。Sub-VLAN不再佔用一個獨立的子網網段。在同一個Super-VLAN中,無論主機屬於哪一個Sub-VLAN,它的IP地址都在Super-VLAN對應的子網網段內。
Sub-VLAN間的三層通信通過使能Sub-VLAN間的ARP Proxy功能,實現Sub-VLAN間互通。
Sub-VLAN與外部網絡的二層通信:基於端口的VLAN二層通信中,無論是數據幀進入接口還是從接口發出都不會針對Super-VlAN的報文,即Super-VLAN中是不存在物理端口的,這種限制是強制的。
實例分析:
命令含義:
aggregate-vlan命令用來將當前VLAN配置爲Super-VLAN。
access-vlan命令用來將一個或一組Sub-VLAN加入Super-VLAN中。
注意事項
VLAN1不能配置爲Super-VLAN。
Super-VLAN與Sub-VLAN必須爲不同的VLAN。
一個VLAN不能同時加入多個不同的Super-VLAN中。
LSW1:
vlan batch 2 to 4
vlan 4
aggregate-vlan
access-vlan 2 to 3
int vlanif4
ip add 192.168.1.254 255.255.255.0
quit
int e0/0/1
port link-type access
port default vlan 2
int e0/0/2
port link-type access
port default vlan 3
int e0/0/10
port link-type trunk
port trunk allow-pass vlan 2 3
LSW2:
vlan batch 2 3
int e0/0/1
port link-type access
port default vlan 2
int e0/0/2
port link-type access
port default vlan 3
int e0/0/10
port link-type trunk
port trunk allow-pass vlan 2 3
此時4臺PC都能ping通192.168.1.254,PC1和PC3正常互通,PC2和PC4正常互通, VLAN 2和VLAN 3之間二層隔離不能互通,通過使能VLAN間的ARP代理實現VLAN間互通:
LSW1:
int vlanif4
arp-proxy inter-sub-vlan-proxy enable
quit
ARP代理配置完成後,所有PC可有正常互通,抓包可以發現,VLAN間的通信是通過ARP代理完成的,如下圖所示,PC3在PING PC4的過程中,對LSW2的E0/0/10口進行抓包,可以觀察到,ICMP每次都要經過192.168.1.254的轉發:
6 配置MUX VLAN
MUX VLAN(Multiplex VLAN)提供了一種通過VLAN進行網絡資源控制的機制。通MUX VLAN提供的二層流量隔離的機制可以實現企業內部員工之間互相通信,而企業外來訪客之間的互訪是隔離的。
MUX VLAN的劃分:
主VLAN(Principal VLAN):可以與MUX VLAN內的所有VLAN進行通信。
隔離型從VLAN(Separate VLAN):只能和Principal VLAN進行通信,和其他類型的VLAN完全隔離,Separate VLAN內部也完全隔離。
互通型從VLAN(Group VLAN):可以和Principal VLAN進行通信,在同一Group VLAN內的用戶也可互相通信,但不能和其他Group VLAN或Separate VLAN內的用戶通信。
配置要求如下:
VLAN2和VLAN3內的主機能夠訪問VLAN4內的主機;
VLAN2和VLAN3內的主機不能互相訪問;
VLAN2內的主機不能相互訪問;
命令含義:
mux-vlan命令用來將當前VLAN配置爲MUX VLAN中的主VLAN。
subordinate group命令用來配置主VLAN下的互通型從VLAN。
subordinate separate命令用來配置主VLAN下的隔離型從VLAN。
LSW1:
vlan batch 2 3
vlan 4
mux-vlan
subordinate separate 2
subordinate group 3
int e0/0/1
port link-type access
port default vlan 2
port mux-vlan enable
int e0/0/2
port link-type access
port default vlan 3
port mux-vlan enable
int e0/0/3
port link-type access
port default vlan 2
port mux-vlan enable
int e0/0/10
port link-type trunk
port trunk allow-pass vlan 2 to 4
LSW2:
vlan batch 2 to 4
vlan 4
mux-vlan
subordinate separate 2
subordinate group 3
int e0/0/1
port link-type access
port default vlan 2
port mux-vlan enable
int e0/0/2
port link-type access
port default vlan 4
port mux-vlan enable
int e0/0/10
port link-type trunk
port trunk allow-pass vlan 2 to 4
做完上述配置後,PC1與PC6無法互通,但PC3卻依然可以正常ping通PC1和PC2。