Access、Trunk、Hybrid端口对比解析
端口类别 | 前提条件 | 接收数据帧 | 发送数据帧 | ||
接收Untagged帧时 | 接收Tagged帧时 | 在允许的VID列表中 | 不在允许的VID列表中 | ||
Access端口 | 每个Access端口都要有1个PVID。 | 给Untagged帧添加Tag,Tag的VID值为Access端口的PVID值,然后接收此帧。 | 该帧Tag的VID值,是否和Access端口的PVID值相同,如果相同则接收此帧,如果不相同则丢弃此帧。 | 该帧Tag的VID值和Access端口的PVID值相同,剥离该帧的Tag后发送。 | 该帧Tag的VID值和Access端口的PVID值不相同,丢弃此帧。 |
Trunk端口 | 1.每个Trunk端口都要有1个PVID; 2.必须配置允许通过的VID列表; | 给Untagged帧添加Tag,Tag的VID值为Trunk端口的PVID值; 该帧Tag的VID值,是否在Trunk端口允许的VID列表中,如果在则接收此帧,如果不在则丢弃此帧。 | 该帧Tag的VID值,是否在Trunk端口允许的VID列表中,如果在则接收此帧,如果不在则丢弃此帧。 | 该帧Tag的VID值在Trunk端口允许的VID列表中; 该帧Tag的VID值是否和Trunk端口的PVID值相同,如果相同则剥离该帧的Tag后发送,如果不同则直接发送(不剥离Tag)。 | 该帧Tag的VID值不在Trunk端口允许的VID列表中,丢弃此帧。 |
Hybrid端口 | 1.每个Hybrid端口都要有1个PVID; 2.必须配置允许通过的Untagged VID列表和Tagged VID列表; | 给Untagged帧添加Tag,Tag的VID值为Hybrid端口的PVID值; 该帧Tag的VID值,是否在Hybrid端口允许的Untagged VID列表或Tagged VID列表中,如果在则接收此帧,如果不在则丢弃此帧。 | 该帧Tag的VID值,是否在Hybrid端口允许的Untagged VID列表或Tagged VID列表中,如果在则接收此帧,如果不在则丢弃此帧。 | 该帧Tag的VID值在Hybrid端口允许的Untagged VID列表中,剥离该帧的Tag后发送; 该帧Tag的VID值在Hybrid端口允许的Tagged VID列表中,直接发送(不剥离Tag)。 | 该帧Tag的VID值不在Hybrid端口允许的Untagged VID列表或Tagged VID列表中,丢弃此帧。 |
端口类别 | VLAN配置宗旨 | 接收数据帧时允许通行的VID列表 | 发送数据帧时允许通行的VID列表 | ||
需要给数据帧添加标签才接收的VLAN | 允许接收的VLAN数 | 允许发送的VLAN数 | 需要剥离数据帧标签发送的VLAN | ||
Access端口 | 1.每个VLAN端口(包括Access、Trunk、Hybrid)都要有1个PVID; 2.必须配置允许通过的VID列表。 | 如果接收的帧是Untagged帧,须添加Tag,Tag的VID值为Access接收端口的PVID值。 | 允许接收的VLAN只有1个,即VID值等于Access端口PVID值的VLAN。 | 允许发送的VLAN只有1个,即VID值等于Access端口PVID值的VLAN。 | 需要剥离数据帧Tag后从Access端口发送出去的VLAN,只有1个,即VID值等于Access端口PVID值的VLAN。 |
Trunk端口 | 如果接收的帧是Untagged帧,须添加Tag,Tag的VID值为Trunk接收端口的PVID值。 | 允许接收的VLAN列表里有多个,具体是哪些VLAN?根据配置允许的Tagged VLAN而定。 | 允许发送的VLAN列表里有多个,具体是哪些VLAN?根据配置允许的Tagged VLAN而定。 | 需要剥离数据帧Tag后从Trunk端口发送出去的VLAN,只有1个,即VID值等于Trunk端口PVID值的VLAN。 | |
Hybrid端口 | 如果接收的帧是Untagged帧,须添加Tag,Tag的VID值为Hybrid接收端口的PVID值。 | 允许接收的VLAN列表里有多个,具体是哪些VLAN?根据配置允许的Untagged VLAN和Tagged VLAN而定。 | 允许发送的VLAN列表里有多个,具体是哪些VLAN?根据配置允许的Untagged VLAN和Tagged VLAN而定。 | 需要剥离数据帧Tag后从Hybrid端口发送出去的VLAN,有多个,具体是哪些VLAN?根据配置允许的Untagged VLAN而定。 |
Tag:标签---如同标签纸 VID:VLAN编号(Tag的值)---如同标签纸上写的字 PVID:交换机端口VLAN编号 Tagged数据帧:带标签的数据帧 Untagged数据帧:不带标签的数据帧 | VLAN端口在转发数据过程中: 交换机的所有VLAN端口都是有PVID(端口VLAN编号)的; 在交换机内部的VLAN数据帧都是带Tag(标签)的; 在交换机外部的VLAN数据帧不是都带Tag(标签)的。 |
示例配置
示例1:交换机初始配置下(交换机所有端口都在VLAN 1下),实现多个网段终端各自通信
3台交换机没有配置(即初始状态)的情况下(交换机所有端口都在VLAN 1下),分别给4台PC配置了如网络拓扑图所示的两个网段的地址,实现192.168.1.1和192.168.1.5相互通信,192.168.2.1和192.168.2.5相互通信,但无法实现192.168.1.0/24和192.168.2.0/24两个网段终端间相互通信。
注:本示例是通过2层网络实现没有跨网段的通信。
其他PC和PC4配置相似。
测试验证
示例2:每台交换机所有端口都在同一VLAN下,实现多个网段终端各自通信
SW1初始配置、SW2所有端口都属于VLAN 20,SW3所有端口都属于VLAN 10,分别给6台PC配置了如网络拓扑图所示的3个网段的地址,实现192.168.1.1和192.168.1.5相互通信,192.168.2.1和192.168.2.5相互通信,192.168.3.1和192.168.3.5相互通信,但无法实现192.168.1.0/24、192.168.2.0/24和192.168.3.0/24各网段终端间相互通信。
注:本示例是通过2层网络实现没有跨网段的通信。
其他PC和PC6配置相似。
代码段
system-view
sysname SW2
vlan 20
interface GigabitEthernet0/0/1
port hybrid pvid vlan 20
port hybrid untagged vlan 20
interface GigabitEthernet0/0/2
port link-type trunk
port trunk pvid vlan 20
port trunk allow-pass vlan 20
system-view
sysname SW3
vlan 10
interface Ethernet0/0/1
port link-type access
port default vlan 10
interface Ethernet0/0/2
port link-type access
port default vlan 10
interface Ethernet0/0/3
port link-type trunk
port trunk pvid vlan 10
port trunk allow-pass vlan 10
interface Ethernet0/0/4
port hybrid pvid vlan 10
port hybrid untagged vlan 10
代码解析
<Huawei>system-view
[Huawei]sysname SW2
[SW2]vlan 20
[SW2-vlan20]interface GigabitEthernet0/0/1
[SW2-GigabitEthernet0/0/1]port hybrid pvid vlan 20 //设置GE0/0/1端口在hybrid模式下的pvid为vlan 20
[SW2-GigabitEthernet0/0/1]port hybrid untagged vlan 20 //设置GE0/0/1端口在hybrid模式下允许通行的vlan为vlan20
[SW2-GigabitEthernet0/0/1]interface GigabitEthernet0/0/2
[SW2-GigabitEthernet0/0/2]port link-type trunk //设置GE0/0/2端口链路类型为trunk
[SW2-GigabitEthernet0/0/2]port trunk pvid vlan 20 //设置GE0/0/2端口在trunk模式下的pvid为vlan 20
[SW2-GigabitEthernet0/0/2]port trunk allow-pass vlan 20//设置GE0/0/2端口在trunk模式下允许通行的vlan为vlan 20<Huawei>system-view
[Huawei]sysname SW3
[SW3]vlan 10
[SW3-vlan10]interface Ethernet0/0/1
[SW3-Ethernet0/0/1]port link-type access //设置Eth0/0/1端口链路类型为access
[SW3-Ethernet0/0/1]port default vlan 10 //设置Eth0/0/1端口默认vlan为vlan 10
[SW3-Ethernet0/0/1]interface Ethernet0/0/2
[SW3-Ethernet0/0/2]port link-type access
[SW3-Ethernet0/0/2]port default vlan 10
[SW3-Ethernet0/0/2]interface Ethernet0/0/3
[SW3-Ethernet0/0/3]port link-type trunk
[SW3-Ethernet0/0/3]port trunk pvid vlan 10
[SW3-Ethernet0/0/3]port trunk allow-pass vlan 10
[SW3-Ethernet0/0/3]interface Ethernet0/0/4
[SW3-Ethernet0/0/4]port hybrid pvid vlan 10
[SW3-Ethernet0/0/4]port hybrid untagged vlan 10
测试验证
示例3: 交换机配置VLAN链路(交换机端口在不同VLAN下),实现多个网段通信
3台交换机配置VLAN链路,分别给4台PC配置了如图所示的两个网段的地址,实现192.168.1.1和192.168.1.5相互通信,192.168.2.1和192.168.2.5相互通信,192.168.1.0/24和192.168.2.0/24两个网段间的终端相互通信。
SW2为网关交换机,配置VLAN 10的地址为192.168.1.10,VLAN 20的地址为192.168.2.20。
注:本示例是通过3层网络实现跨网段的通信。
其他PC和PC1配置相似。
代码段
system-view
sysname SW1
vlan batch 10 20
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 10 20
interface GigabitEthernet0/0/2
port link-type access
port default vlan 10
interface GigabitEthernet0/0/3
port link-type access
port default vlan 20
system-view
sysname SW2
vlan batch 10 20
interface Vlanif10
ip address 192.168.1.10 255.255.255.0
interface Vlanif20
ip address 192.168.2.20 255.255.255.0
interface GigabitEthernet0/0/1
port link-type trunk
port trunk allow-pass vlan 10 20
interface GigabitEthernet0/0/2
port hybrid tagged vlan 10 20
system-view
sysname SW3
vlan batch 10 20
interface Ethernet0/0/1
port hybrid tagged vlan 10 20
interface Ethernet0/0/2
port hybrid pvid vlan 10
port hybrid untagged vlan 10
interface Ethernet0/0/3
port link-type trunk
port trunk pvid vlan 20
port trunk allow-pass vlan 20
代码解析
<Huawei>system-view //进入系统视图
[Huawei]sysname SW1 //给交换机设置名称
[SW1]vlan batch 10 20 //创建vlan 10和vlan 20
[SW1]interface GigabitEthernet0/0/1 //进入端口模式
[SW1-GigabitEthernet0/0/1]port link-type trunk //设置GE0/0/1端口链路类型为trunk
[SW1-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20 //设置GE0/0/1端口在trunk模式下允许通行的vlan为vlan10和vlan 20
[SW1-GigabitEthernet0/0/1]interface GigabitEthernet0/0/2
[SW1-GigabitEthernet0/0/2]port link-type access //设置GE0/0/2端口链路类型为access
[SW1-GigabitEthernet0/0/2]port default vlan 10 //设置GE0/0/2端口默认vlan为vlan 10
[SW1-GigabitEthernet0/0/2]interface GigabitEthernet0/0/3
[SW1-GigabitEthernet0/0/3]port link-type access
[SW1-GigabitEthernet0/0/3]port default vlan 20<Huawei>system-view
[Huawei]sysname SW2
[SW2]vlan batch 10 20
[SW2]interface Vlanif10
[SW2-Vlanif10]ip address 192.168.1.10 255.255.255.0 //给vlan 10设置IP地址
[SW2-Vlanif10]interface Vlanif20
[SW2-Vlanif20]ip address 192.168.2.20 255.255.255.0 //给vlan 20设置IP地址
[SW2-Vlanif20]interface GigabitEthernet0/0/1
[SW2-GigabitEthernet0/0/1]port link-type trunk //设置GE0/0/1端口链路类型为trunk
[SW2-GigabitEthernet0/0/1]port trunk allow-pass vlan 10 20 //设置GE0/0/1端口在trunk模式下允许通行的vlan为vlan10和vlan 20
[SW2-GigabitEthernet0/0/1]interface GigabitEthernet0/0/2
[SW2-GigabitEthernet0/0/2]port hybrid tagged vlan 10 20 //设置GE0/0/2端口在hybrid模式下允许通行的vlan为vlan10和vlan 20
注:GE0/0/2端口没有配置port link-type hybrid命令,因为华为交换机端口默认为hybrid类型。<Huawei>system-view
[Huawei]sysname SW3
[SW3]vlan batch 10 20
[SW3]interface Ethernet0/0/1
[SW3-Ethernet0/0/1]port hybrid tagged vlan 10 20 //设置GE0/0/1端口在hybrid模式下允许通行的vlan为vlan10和vlan 20
[SW3-Ethernet0/0/1]interface Ethernet0/0/2
[SW3-Ethernet0/0/2]port hybrid pvid vlan 10 //设置Eth0/0/2端口在hybrid模式下的pvid为vlan 10
[SW3-Ethernet0/0/2]port hybrid untagged vlan 10 //设置Eth0/0/2端口在hybrid模式下允许通行的vlan为vlan10
[SW3-Ethernet0/0/2]interface Ethernet0/0/3
[SW3-Ethernet0/0/3]port link-type trunk //设置Eth0/0/3端口链路类型为trunk
[SW3-Ethernet0/0/3]port trunk pvid vlan 20 //设置Eth0/0/3端口在trunk模式下的pvid为vlan 20
[SW3-Ethernet0/0/3]port trunk allow-pass vlan 20 //设置Eth0/0/3端口在trunk模式下允许通行的vlan为vlan 20
测试验证
本网段和跨网段都通信正常。
上图说明,虽然3台交换机都没有配置路由,但有vlan间直连路由,实现了不同网段间通信。
上图说明配置了access的端口,此端口pvid会改为所配置的vlan,而trunk和hybrid需要经过配置pvid才能改变端口的pvid值。
上图说明trunk和hybrid端口也可以连接PC终端。