← 回到技术随笔
· 2947 字

H3C交换机VLAN不通排查实例

以 H3C S5570S 和 Comware V7 为例,通过正常端口对比快速发现并修正 Access VLAN 配错的问题。

本文以 H3C S5570S 系列和 Comware V7 为主要示例。文中的 VLAN、地址和端口都是示例,使用时要换成现场实际信息。

一、故障现象

公司新启用了办公端口 GigabitEthernet1/0/12。电脑接上后,交换机端口显示 UP,电脑的静态地址也正确,但无法访问网关。同一排工位的其他电脑都正常。

这个端口以前连接其他业务设备,近期才改成办公电脑端口。遇到这种情况,我先对比故障端口和旁边的正常端口,很快就能发现 VLAN 是否配错。

本例的正确办公 VLAN 是 10:

项目 示例值
故障端口 GigabitEthernet1/0/12
正常端口 GigabitEthernet1/0/11
正确 VLAN 10
错误 VLAN 20
IPv4 网关 192.168.10.1
IPv6 网关 2001:db8:10::1

示例中的地址不能直接用于生产网络。

二、快速检查

1. 确认端口已经连接

# 确认故障端口 GE1/0/12 为 UP。
<HQ-Access-01> display interface brief

端口是 DOWN 时先检查电脑、网卡和网线。端口已经 UP,再继续看 VLAN。

2. 对比故障端口和正常端口

# 查看故障端口配置。
<HQ-Access-01> display current-configuration interface GigabitEthernet 1/0/12

# 查看旁边正常办公端口的配置。
<HQ-Access-01> display current-configuration interface GigabitEthernet 1/0/11

本例只需要看下面两项:

# 正常端口应为 Access,并属于办公 VLAN 10。
port link-type access
port access vlan 10

如果故障端口显示 port access vlan 20,而正常端口是 VLAN 10,问题已经很明显。

3. 再用 VLAN 信息确认

# 确认办公 VLAN 10 中包含正常端口,但没有故障端口。
<HQ-Access-01> display vlan 10

# 确认故障端口当前被放进了 VLAN 20。
<HQ-Access-01> display vlan 20

到这里已经可以确认:电脑使用 VLAN 10 的地址,但交换机端口属于 VLAN 20,所以无法访问 VLAN 10 的网关。

三、修改错误 VLAN

确认 GigabitEthernet1/0/12 确实用于办公电脑后,把它改回 VLAN 10:

<HQ-Access-01> system-view

# 进入故障端口。
[HQ-Access-01] interface GigabitEthernet 1/0/12

# 确认端口使用 Access 类型。
[HQ-Access-01-GigabitEthernet1/0/12] port link-type access

# 把端口从错误的 VLAN 20 改为办公 VLAN 10。
[HQ-Access-01-GigabitEthernet1/0/12] port access vlan 10
[HQ-Access-01-GigabitEthernet1/0/12] return

Access 端口执行 port access vlan 10 后会加入 VLAN 10,不需要先手动从 VLAN 20 删除。

四、验证结果

先在交换机上确认:

# 确认故障端口现在属于 VLAN 10。
<HQ-Access-01> display current-configuration interface GigabitEthernet 1/0/12
<HQ-Access-01> display vlan 10

再从电脑测试网关:

# 使用时替换成现场实际网关。
ping 192.168.10.1
ping 2001:db8:10::1

网关和实际业务都恢复后再保存配置:

<HQ-Access-01> save force

五、Comware V5 配置

H3C S5500 Comware V5 Release 2208 在这个基础场景中使用相同的核心命令:

<HQ-Access-01> system-view
[HQ-Access-01] interface GigabitEthernet 1/0/12

# 把电脑端口改为 Access VLAN 10。
[HQ-Access-01-GigabitEthernet1/0/12] port link-type access
[HQ-Access-01-GigabitEthernet1/0/12] port access vlan 10
[HQ-Access-01-GigabitEthernet1/0/12] return

# 确认端口已经属于 VLAN 10。
<HQ-Access-01> display vlan 10

六、常见问题

1. 端口是 UP,为什么网络仍然不通

UP 只表示电脑与交换机已经建立物理连接,不代表端口所在的 VLAN 正确。

2. 能不能直接复制正常端口的全部配置

不能。正常端口只用来对比 port link-typeport access vlan。其他配置可能属于另一台电脑或其他业务。

3. 改成 VLAN 10 后仍然不通怎么办

先检查电脑的地址和网关。如果同一 VLAN 的多台电脑同时不通,再检查上联 Trunk 和网关,不要继续反复修改这个接入口。

七、回退方法

如果变更前经过确认的配置确实是 VLAN 20,可以恢复:

<HQ-Access-01> system-view
[HQ-Access-01] interface GigabitEthernet 1/0/12

# 恢复变更前记录的 VLAN,不能直接照抄本文的示例值。
[HQ-Access-01-GigabitEthernet1/0/12] port access vlan 20
[HQ-Access-01-GigabitEthernet1/0/12] return

八、小结

VLAN 配错是一种常见而且比较直观的故障。如果电脑端配置没有问题,尤其是端口近期调整过用途、物理状态正常,并且同一办公区的其他电脑也正常,就应该优先对比交换机上故障端口和正常端口的配置,确认 VLAN 是否一致。

确认端口用途后,把 port access vlan 改成正确值,再测试网关和实际业务即可。不要为了一个简单的 VLAN 错误删除其他配置或重启交换机。

九、完整配置汇总

下面是本例修正后的 Comware V7 配置:

<HQ-Access-01> system-view

# 配置确认过用途的办公电脑端口。
[HQ-Access-01] interface GigabitEthernet 1/0/12
[HQ-Access-01-GigabitEthernet1/0/12] port link-type access
[HQ-Access-01-GigabitEthernet1/0/12] port access vlan 10
[HQ-Access-01-GigabitEthernet1/0/12] return

# 检查端口和 VLAN。
<HQ-Access-01> display current-configuration interface GigabitEthernet 1/0/12
<HQ-Access-01> display vlan 10

# 完成网关和实际业务测试后再保存。
<HQ-Access-01> save force

参考资料