第4章 Access接口实战:Access接口特性、数据帧收发处理流程、配置Access接口(华为/思科命令对比)、实战:单交换机VLAN隔离
4.1 Access接口到底是什么?
Access接口,说白了就是交换机上最普通的接口。它只属于一个VLAN,不跟别的VLAN打交道。我刚开始学网络时,总觉得Access口太简单,没什么好研究的。后来在项目里吃过亏,才发现越是基础的东西,越容易出问题。
Access接口有几个关键特性,我一个个说:
- 只属于一个VLAN:这个VLAN叫PVID(Port VLAN ID),也就是接口的默认VLAN
- 只收发不带标签的帧:Access口发出去的帧,都是不带802.1Q标签的
- 收到带标签的帧会丢弃:除非这个标签跟PVID一样
你想想看,Access口就像小区里的单元门。每个单元门只对应一个单元号,你拿着3单元的钥匙,进不了2单元的门。这就是隔离。
核心要点:Access接口是VLAN隔离的最基本单元。它不处理标签,只做一件事——把收到的帧打上PVID标签,发出去时再把标签剥掉。
4.2 数据帧收发处理流程
这部分我建议你仔细看。很多人在配置时出问题,就是因为没搞懂数据帧在Access口上到底经历了什么。
4.2.1 接收数据帧
当Access口收到一个数据帧时,交换机会做以下判断:
- 检查帧是否带标签
- 如果没带标签:打上PVID对应的VLAN标签,然后交给交换芯片处理
- 如果带了标签:检查标签里的VLAN ID是否等于PVID
- 等于PVID:接收这个帧,继续处理
- 不等于PVID:直接丢弃
嗯,这里要注意。我曾经遇到过一个故障,终端设备莫名其妙连不上网络。排查了半天,发现是设备自己发出的帧带了VLAN 100的标签,而交换机Access口的PVID是VLAN 10。交换机一看标签不对,直接扔了。这就是典型的标签不匹配问题。
4.2.2 发送数据帧
发送流程相对简单:
- 交换芯片把帧送到Access口
- Access口把帧里的VLAN标签剥掉
- 把不带标签的帧发出去
为什么会这样?因为终端设备(比如PC、打印机)根本不认识802.1Q标签。你给它一个带标签的帧,它反而会当成垃圾数据丢掉。
我的经验:在排错时,可以用抓包工具看看Access口出去的帧。如果发现带了标签,那肯定是配置有问题。我习惯在配置完Access口后,先用display port vlan(华为)或show interfaces switchport(思科)确认一下PVID。
4.3 配置Access接口——华为vs思科
配置命令其实不复杂,但两家厂商的语法差异挺大。我当年从思科转华为时,就经常搞混。下面直接上对比:
| 操作 | 华为命令 | 思科命令 |
|---|---|---|
| 进入接口视图 | interface GigabitEthernet0/0/1 |
interface GigabitEthernet0/1 |
| 设置接口类型 | port link-type access |
switchport mode access |
| 配置PVID | port default vlan 10 |
switchport access vlan 10 |
| 查看配置 | display port vlan |
show interfaces switchport |
你看,华为用port link-type,思科用switchport mode。华为用port default vlan,思科用switchport access vlan。记不住的话,我建议你做个笔记贴在显示器上。
避坑指南:我曾经在华为交换机上忘了配port link-type access,直接配了port default vlan。结果接口默认是Hybrid类型,虽然也能工作,但行为跟Access口不一样。后来排查了半天才发现问题。所以,一定要先配接口类型,再配PVID。
4.4 实战:单交换机VLAN隔离
光说不练假把式。我们来做一个最简单的实验:一台交换机,两台PC,让它们互相看不见。
4.4.1 实验拓扑
交换机S1,PC1接G0/0/1,PC2接G0/0/2。PC1在VLAN 10,PC2在VLAN 20。
4.4.2 华为配置步骤
<Huawei> system-view
[Huawei] vlan batch 10 20
[Huawei] interface GigabitEthernet0/0/1
[Huawei-GigabitEthernet0/0/1] port link-type access
[Huawei-GigabitEthernet0/0/1] port default vlan 10
[Huawei-GigabitEthernet0/0/1] quit
[Huawei] interface GigabitEthernet0/0/2
[Huawei-GigabitEthernet0/0/2] port link-type access
[Huawei-GigabitEthernet0/0/2] port default vlan 20
[Huawei-GigabitEthernet0/0/2] quit
4.4.3 思科配置步骤
Switch> enable
Switch# configure terminal
Switch(config)# vlan 10,20
Switch(config-vlan)# exit
Switch(config)# interface GigabitEthernet0/1
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 10
Switch(config-if)# exit
Switch(config)# interface GigabitEthernet0/2
Switch(config-if)# switchport mode access
Switch(config-if)# switchport access vlan 20
Switch(config-if)# end
4.4.4 验证结果
配置完后,用PC1去ping PC2。你会发现——不通。这就是VLAN隔离的效果。
你可以用以下命令验证:
- 华为:
display vlan查看VLAN信息,display port vlan查看接口VLAN归属 - 思科:
show vlan brief查看VLAN信息,show interfaces switchport查看接口模式
关键验证点:在华为上执行display vlan 10,应该看到G0/0/1在VLAN 10里。执行display vlan 20,应该看到G0/0/2在VLAN 20里。两个接口不在同一个VLAN,自然无法通信。
4.5 我踩过的坑
最后分享一个真实案例。有一次给客户做网络改造,我配完Access口后,PC能ping通网关,但就是访问不了服务器。查了半天,发现服务器端的交换机Access口PVID配成了VLAN 1,而服务器实际应该属于VLAN 100。这就是典型的PVID配置错误。
所以,我建议你在配置Access口时,养成三个习惯:
- 先配接口类型,再配PVID——顺序别搞反
- 配完马上验证——用
display或show命令确认 - 两端都要检查——交换机端和终端设备端,缺一不可
Access接口虽然基础,但它是VLAN隔离的基石。搞懂了它,后面的Trunk口、Hybrid口才能学得扎实。嗯,这一章就到这儿,下一章我们讲Trunk接口,那才是真正的大头。