以太网端口有三种链路类型:Access、Hybrid和Trunk:
这三种链路类型的连接终端有所区别:
Access类型的端口只能属于1个VLAN,一般用于连接计算机的端口;
Trunk类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,一般用于交换机之间连接的端口;
Hybrid类型的端口可以允许多个VLAN通过,可以接收和发送多个VLAN的报文,可以用于交换机之间连接,也可以用于连接用户的计算机。
这三种链路类型数据的处理过程也有所差别:
Acess端口收报文:
收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有则直接丢弃(缺省)
Acess端口发报文:
将报文的VLAN信息剥离,直接发送出去
trunk端口收报文:
收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有判断该trunk端口是否允许该 VLAN的数据进入:如果可以则转发,否则丢弃
trunk端口发报文:
比较端口的PVID和将要发送报文的VLAN信息,如果两者相等则剥离VLAN信息,再发送,如果不相等则直接发送
hybrid端口收报文:
收到一个报文,判断是否有VLAN信息:如果没有则打上端口的PVID,并进行交换转发,如果有则判断该hybrid端口是否允许该VLAN的数据进入:如果可以则转发,否则丢弃(此时端口上的untag配置是不用考虑的,untag配置只对发送报文时起作用)
hybrid端口发报文:
1、判断该VLAN在本端口的属性(disp interface 即可看到该端口对哪些VLAN是untag, 哪些VLAN是tag)
2、如果是untag则剥离VLAN信息,再发送,如果是tag则直接发送
总体来讲,Hybrid端口和Trunk端口在接收数据时,处理方法是一样的,唯一不同之处在于发送数据时:Hybrid端口可以允许多个VLAN的报文发送时不打标签,而Trunk端口只允许缺省VLAN的报文发送时不打标签。
下面就通过几个简单的例子来了解下Trunk、Hybrid、Access的配置和工作原理。
Trunk
实验目的:
1. sw1和sw2之间相同vlan可以通信
2. sw1和sw2之间不相同vlan不可以通信
实验过程:
sw1配置
设置vlan并把端口加入vlan
[sw1]vlan10
[sw1-vlan10]port e0/1
[sw1-vlan10]vlan 20
[sw1-vlan20]port e0/2
设置e0/24为trunk
[sw1-vlan20]interface e0/24
[sw1-Ethernet0/24]port link-type trunk
[sw1-Ethernet0/24]port trunk permit vlan 10 20
Sw2配置
设置vlan并把端口加入vlan
[sw2]vlan10
[sw2-vlan10]port e0/10
[sw2-vlan10]vlan 20
[sw2-vlan20]port e0/20
设置e0/24为trunk
[sw2-vlan20]interface e0/24
[sw2-Ethernet0/24]port link-type trunk
[sw2-Ethernet0/24]port trunk permit vlan 10 20
特点以及注意事项:
(1)如果一个端口是trunk端口,则该端口可以属于多个vlan;
(2)缺省情况下trunk端口的PVID为1,可以在端口模式下通过命令port trunk pvid vlan vlanid 来修改端口的PVID;
(3)如果从trunk转发出去的数据报文的vlan id和端口的PVID一致,则该报文的VLAN信息会被剥去,这点在配置trunk端口时需要注意。
(4)一台交换机上如果已经设置了某个端口为hybrid端口,则不可以再把另外的端口设置为trunk端口。
(5)一般情况下最好指定端口允许通过哪些具体的VLAN,不要设置允许所有的VLAN通过。
Hybrid
实验目的:
1. pc1、pc2、pc3都可以访问服务器
2. pc1和pc2可以互访
3. pc1和pc3可以互访
4. pc2和pc3不可以互访
实验过程
创建vlan并将端口加入vlan
[sw1]vlan10
[sw1-vlan10]port e0/1
[sw1-vlan10]vlan 20
[sw1-vlan20]port e0/2
[sw1-vlan20]vlan30
[sw1-vlan30]port e0/3
[sw1-vlan20]vlan 100
[sw1-vlan20]port e0/24
设置e0/1 为hybrid,能够接收vlan 20 30 100 的报文
[sw1-vlan20]int e0/1
[sw1-Ethernet0/1]port link-type hybrid
[sw1-Ethernet0/1]port hybrid vlan 20 30 100 untagged
设置e0/2 为hybrid,允许vlan10 100通过
[sw1-Ethernet0/1]int e0/2
[sw1-Ethernet0/2]port link-type hybrid
[sw1-Ethernet0/2]port hybrid vlan 10 100 untagged
设置e0/2 为hybrid,能够接收vlan10 100 的报文
[sw1-Ethernet0/2]int e0/3
[sw1-Ethernet0/3]port link-type hybrid
[sw1-Ethernet0/3]port hybrid vlan 10 100 untagged
设置e0/24为hybrid 能够接收vlan10 20 30 的报文
[sw1-Ethernet0/3]int e0/24
[sw1-Ethernet0/24]port link-type hybrid
[sw1-Ethernet0/24]port hybrid vlan 10 20 30 untagged
ACCESS
[SwitchA]vlan 2
指定端口E0/2端口类型为accesss属于vlan2
[SwitchA]interface ethernet 0/2
[SwitchA-Ethernet1]port access vlan 2
[SwitchA]vlan 3
指定端口E0/10类型为access属于vlan10
[SwitchA]interface ethernet 0/10
[SwitchA-Ethernet2]port access vlan 10
特点以及注意事项:
(1)缺省情况下所有端口都属于VLAN 1,并且端口是access端口,一个access端口只能属于一个vlan;
(2)如果端口是access端口,则把端口加入到另外一个vlan的同时,系统自动把该端口从原来的vlan中删除掉;