交换机的ACCESS工作模式在设计的时候,主要的场景是对端连接的是PC,而正常PC发送报文时是不带VLAN的,所以一般交换机的ACCESS端口都是处理不带vlan的报文。在一些特殊的场景中,ACCESS端口也可能会收到带VLAN的报文,这个时候该如何处理呢?这就是我们今天所要讨论的内容。
这个问题可以分为三种场景来分析:
这三种场景,交换机的处理方式是不一样的,我们来一一描述,重点关注场景2。
首先看看场景1:ACCESS端口收到不带VLAN的报文, 如下图所示
这种场景是最基本的ACCESS VLAN的应用,交换机E0/1端口收到PC1发送的不带VLAN的报文(假设是广播),会加上VLAN, 然后再在交换机上查找在相同VLAN里的端口进行转发(从E0/2转发出去)。
PC1发送出去的报文,不带VLAN
从E0/2端口发送出去报文,也是不带VLAN的
PC2收到的报文,也不带VLAN
在来看看场景2:ACCESS端口收到带VLAN的报文,并且和配置的ACCESS VLAN相同
拓扑还是不变
场景2拓扑
只是我们把PC1配置一个子接口,并且加上dot1Q封装,这样PC1发送出去的报文,都会加上VLAN10
PC的配置,PC1是个子接口
查看PC1发送的报文:发现携带了VLAN10
PC1发送的报文,都带VLAN10
交换机收到PC1带VLAN的报文以后,会和端口配置的ACCESS VLAN进行比较,如果相同,则会进行处理,处理过程和接收到不带VLAN的报文相同。
思科交换机配置
PC2能够收到PC1发送的报文,不过收到的报文都是不带VLAN的
PC2接收的报文:不带VLAN
这个时候,在交换机上查看mac地址表,也是有表项的
最后一个场景3:ACCESS端口收到带VLAN的报文,并且和配置的ACCESS VLAN不相同
这种情况交换机收到报文以后,就直接丢弃了,不会进行处理,也不会形成MAC地址表项。
综上所述我们得出如下的结论:
ACESSS端口接收不带VLAN报文
接收到带VLAN报文, 和ACCESS端口配置的VLAN相同
接收到带VLAN报文, 和ACCESS端口配置的VLAN不同
ACCESS端口发送报文
这样解释,各位对ACCESS端口处理报文的机制了解了吗?如果有疑问,欢迎留言讨论!也非常欢迎各位关注本头条号,一起讨论网络知识!