access: 主要用来接入终端设备,如PC机、服务器、打印服务器等。
trunk: 主要用在连接其它交换机,以便在线路上承载多个vlan。
1.以太网端口的链路类型
Access、Trunk和Hybrid
Access类型:端口只能属于1个VLAN,一般用于连接计算机;
Trunk类型:端口可以属于多个VLAN,可以接收和发送多个VLAN的报文,一般用于交换机之间连接;
Hybrid类型:端口可以属于多个VLAN,可以接收和发送多个VLAN的报文,可以用于交换机之间连接,也可以用于连接用户的计算机。
注意:Hybrid端口和Trunk端口在接收数据时,处理方法是一样的,唯一不同之处在于发送数据时:Hybrid端口可以允许多个VLAN的报文发送时不打标签,而Trunk端口只允许缺省VLAN的报文发送时不打标签。
三种类型的端口可以共存在一台设备上,但Trunk端口和Hybrid端口之间不能直接切换,只能先设为Access端口,再设置为其他类型端口。例如:Trunk端口不能直接被设置为Hybrid端口,只能先设为Access端口,再设置为Hybrid端口。
2:配置以太网端口的缺省VLAN
Access端口只能属于1个VLAN,所以它的缺省VLAN就是它所在的VLAN,不用设置
Hybrid端口和Trunk端口可以属于多个VLAN,所以需要设置端口的缺省VLAN ID。缺省情况下,Hybrid端口和Trunk端口的缺省VLAN为VLAN 1
3:配置了以太网端口的缺省VLAN ID后,端口对报文的接收和发送的处理有几种不同情况
端口对报文的接收:
当接收到的报文不带Tag时:接收该报文,并为报文添加缺省VLAN的Tag
当接收到的报文带有Tag时:
Acess端口:
收到一个报文,判断VLAN ID与缺省VLAN ID是否相同,相同则接收该报文;不相同则丢弃该报文。
trunk端口:
收到一个报文,判断VLAN ID与缺省VLAN ID是否相同,相同则接收该报文;不同时:如果VLAN ID是该端口允许通过的VLAN ID时则接收该报文;如果VLAN ID是该端口不允许通过的VLAN ID时则丢弃该报文。
hybrid端口:
收到一个报文,判断VLAN ID与缺省VLAN ID是否相同,相同则接收该报文;不同时:如果VLAN ID是该端口允许通过的VLAN ID时则接收该报文;如果VLAN ID是该端口不允许通过的VLAN ID时则丢弃该报文。
端口对报文的发送:
当接收到的报文不带Tag时:接收该报文,并为报文添加缺省VLAN的Tag
当接收到的报文带有Tag时:
Acess端口: 当收到一个报文时,由于VLAN ID就是缺省VLAN ID,不用设置,去掉Tag后直接发送
trunk端口:当收到一个报文,判断VLAN ID与缺省VLAN ID是否相同,相同则去掉Tag后发送该报文;不相同时保留tag发送该报文。
hybrid端口:当收到一个报文,判断VLAN ID与缺省VLAN ID是否相同,相同则去掉Tag后发送该报文;不相同时则可以通过命令port hybrid vlan vlan-id-list { tagged | untagged } 配置该端口是否标记,然后发送该报文
设备的的Hybrid端口或Trunk端口的缺省VLAN ID和相连的对应交换机的Hybrid端口或Trunk端口的缺省VLAN ID必须一致,否则端口将不能正常转发报文。
Switch-Ethernet0/1]int e0/1
[Switch-Ethernet0/1]port link-type hybrid
[Switch-Ethernet0/1]port hybrid pvid vlan 10
[Switch-Ethernet0/1]port hybrid vlan 10 20 untagged
[Switch-Ethernet0/1] int e0/2
[Switch-Ethernet0/2]port link-type hybrid
[Switch-Ethernet0/2]port hybrid pvid vlan 20
[Switch-Ethernet0/2]port hybrid vlan 10 20 untagged
此时inter e0/1和inter e0/2下的所接的PC是可以互通的,但互通时数据所走的往返vlan是不同的。
以下以inter e0/1下的所接的pc1访问inter e0/2下的所接的pc2为例进行说明
pc1所发出的数据,由inter0/1所在的pvid vlan10封装vlan10的标记后送入交换机,交换机发现inter e0/2允许vlan 10的数据通过,于是数据被转发到inter e0/2上,由于inter e0/2上vlan 10是untagged的,于是交换机此时去除数据包上vlan10的标记,以普通包的形式发给pc2,此时pc1->p2走的是vlan10
再来分析pc2给pc1回包的过程,pc2所发出的数据,由inter0/2所在的pvid vlan20封装vlan20的标记后送入交换机,交换机发现inter e0/1允许vlan 20的数据通过,于是数据被转发到inter e0/1上,由于inter e0/1上vlan 20是untagged的,于是交换机此时去除数据包上vlan20的标记,以普通包的形式发给pc1,此时pc2->pc1走的是vlan20