交换机上生成的各VLAN(逻辑组)是互不相通的
实现VLAN间通信的方法:
使用路由器
使用三层交换机
VLAN的实现机制
IEEE 802.1Q帧
交换机的端口类型
802.1Q帧是由交换机来处理的,而不是由用户主机来处理的。
当交换机收到普通的以太网帧时,会将其插入4字节的VLAN标识,进而改变为802.1Q帧,简称为"打标签"。
当交换机转发802.1Q帧时,可能会删除4字节VLAN标记,进而转变为普通以太网帧,简称"去标签"。
在一条Access链路上运动的帧只能是Untagged帧,并且这些帧只能属于某个特定的VLAN。
在一条Trunk链路上运动的帧只能是Tagged帧,并且这些帧可以属于不同的VLAN。
一个Access端口只能属于某个特定的VLAN,并且可以让属于不同的VLAN的帧通过。
每一个交换机的端口都应该配置一个PVID,到达这个端口的Untagged帧将一律被交换机划分到PVID所指代的VLAN。
交换机上生成的各VLAN(逻辑组)是互不相通的
实现VLAN间通信的方法:
使用路由器
使用三层交换机
以太网端口二种链路类型:Access 和Trunk。
Access 类型的端口:只能属于1 个VLAN,一般用于连接计算机的端口;
Trunk 类型的端口:可以允许多个VLAN 通过,可以接收和发送多个VLAN 的报文,一般用于交换机之间连接的端口;
交换机接口出入数据处理过程如下:
《一》
1. Acess 端口收报文:
收到一个报文,判断是否有VLAN 信息:如果没有则打上端口的PVID,并进行交换转发,如果有则直接丢弃(缺省)
(Access接受并转发的数据包必须是无VLAN信息的数据包)
2. Acess 端口发报文:
将报文的VLAN 信息剥离,直接发送出去
(Access发送的数据报必定是无VLAN信息的数据包)
总结:
Access 端口可接受并转发的数据来源:来自PC的无VLAN信息数据包;从一个Access口入打上VLAN标记在交换机内转交给相同VLAN的access口去掉标记的无VLAN信息数据包;
Access 端口发送出去的数据包无VLAN信息,可被PC接受或Access口接受。
PC2与PC3能够相互 ping通,PC1与PC2,PC3不能 ping通,与上述结论相符合。
《二》
1.trunk 端口收报文:
收到一个报文,判断是否有VLAN 信息;
如果有,判断该trunk 端口是否允许该VLAN 的数据进入;
如果可以则转发,否则丢弃;
如果没有VLAN 信息则打上端口的PVID,并进行交换转发。
(可以将trunk口看做是access口功能上的扩充,对于有VLAN信息的数据包Access直接丢弃,而Trunk则会对有指定VLAN的数据包直接转发)
2.Trunk 端口发报文:
比较将要发送报文的VLAN 信息和端口的PVID;
如果不相等则直接发送;
如果两者相等则剥离VLAN 信息,再发送。
(Access口发数据包时对所有数据包去除VLAN信息,而Trunk只对与自己端口PVID相等(Trunk默认PVID与VLAN1相等)的数据包去VLAN信息,其他则直接转发)
总结:
结合Trunk口接受与发送数据包特点,可以得出经双绞线相连的一对Trunk口或同一交换机上的两个Trunk口可以将数据包(有或无VLAN信息)原封不动的从一端传到另一端。
图中PC1 - PC3; PC2 - PC6; PC4 - PC5 之间可以ping通,与上述总结相符合
原文地址:https://www.cnblogs.com/pyzyliuyan/p/12654826.html