拓冰建站拓冰建站
首页 / 资讯中心 / 正文

网络运维实战:交换机VLAN接口状态排查全流程指南

1. 先搞清楚你要查的到底是什么一提到“查询交换机VLAN接口情况”很多刚接触网络运维的朋友容易懵。他们可能刚在命令行里敲了个display vlan看到一堆VLAN ID列表就觉得任务完成了。但实际上这离真正解决问题还差得远。VLAN接口这个概念本身就分两层。第一层是二层接口比如GigabitEthernet0/0/1它身上可能被打上了access、trunk或hybrid标签决定了它能承载哪些VLAN的流量。第二层是三层接口比如Vlanif10它才是VLAN的网关负责不同VLAN之间的路由。所以当你领导或同事让你“查一下VLAN接口情况”时你首先得问清楚是要看某个物理端口属于哪个VLAN二层成员关系还是要看某个VLAN的网关地址和状态三层路由信息或者是这个VLAN里有哪些活跃的MAC地址这个问题不先界定后面所有操作都可能白费功夫。对于华为、H3C、锐捷这些主流厂商的交换机虽然命令有差异但排查思路是相通的。下面我会以最常见的场景为例带你从二层到三层把该看的、该记的都过一遍。2. 从基础开始确认VLAN是否存在与端口成员关系在深入接口细节前先得确保这个VLAN在交换机上是“活的”。很多配置问题根源在于VLAN根本没创建成功或者创建了但没生效。2.1 查看VLAN摘要信息这是第一步目的是快速总览交换机上所有已创建的VLAN及其基本状态。在华为/H3C交换机上核心命令是display vlan。别小看这个命令它的输出信息量很大HUAWEI display vlan The total number of vlans is : 3 ------------------------------------------------------------------------------- U: Up; D: Down; TG: Tagged; UT: Untagged; MP: Vlan-mapping; ST: Vlan-stacking; #: ProtocolTransparent-vlan; *: Management-vlan; ------------------------------------------------------------------------------- VID Type Ports ----------------------------------------------------- 1 common UT:GE0/0/1(D) GE0/0/2(D) GE0/0/3(D) GE0/0/4(D) GE0/0/5(D) GE0/0/6(D) GE0/0/7(D) GE0/0/8(D) GE0/0/9(D) GE0/0/10(D) GE0/0/11(D) GE0/0/12(D) GE0/0/13(D) GE0/0/14(D) GE0/0/15(D) GE0/0/16(D) GE0/0/17(D) GE0/0/18(D) GE0/0/19(D) GE0/0/20(D) GE0/0/21(D) GE0/0/22(D) GE0/0/23(D) GE0/0/24(D) 10 common UT:GE0/0/1(D) GE0/0/2(D) TG:GE0/0/24(U) 100 common UT:GE0/0/3(D) GE0/0/4(D)关键信息解读VID: VLAN ID这里是1、10、100。Type: 通常是common普通VLAN。看到*表示管理VLAN。Ports: 这是重点。UT(Untagged): 端口以access或hybrid untagged方式加入该VLAN发出的数据帧不带VLAN标签。通常是连接终端设备PC、服务器的端口。TG(Tagged): 端口以trunk或hybrid tagged方式允许该VLAN通过发出的数据帧带VLAN标签。通常是连接其他交换机的端口。(U)/(D): 端口物理状态Up或Down。一个端口物理Down了配置再对也没用。如果只想看某个特定VLAN比如VLAN 10可以用display vlan 10信息更集中。在锐捷交换机上类似命令是show vlan或show vlan brief。思科交换机则是show vlan brief。输出的格式和字段大同小异核心都是看VLAN ID、名称、状态、有哪些端口。2.2 深入查看单个端口的VLAN配置知道VLAN有哪些端口后反过来我们经常需要查看某个具体端口比如怀疑有问题的GE0/0/1的详细VLAN配置。这是排查端口级故障的必备操作。华为/H3C交换机命令display interface [interface-type interface-number]。例如HUAWEI display interface gigabitethernet 0/0/1 GigabitEthernet0/0/1 current state: DOWN Line protocol current state: DOWN Description: TO_PC_01 Port Mode: COMMON COPPER Speed : 1000, Loopback: NONE Duplex: FULL, Negotiation: ENABLE Mdi : AUTO Last 300 seconds input rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec Last 300 seconds output rate: 0 bytes/sec, 0 bits/sec, 0 packets/sec ... PVID: 10 Mdi : AUTO Link delay is 0(sec) Port link-type: access Tagged VLAN ID : none Untagged VLAN ID : 10 ...这里要盯住几个关键行current state: UP/DOWN物理状态必须先UP。PVID: 10端口的默认VLAN ID。对于access端口PVID就是它所属的VLAN。对于trunk端口PVID是接收不带标签数据帧时打上的VLAN标签。Port link-type: access端口链路类型。可能是access、trunk或hybrid。Untagged VLAN ID : 10对于access端口这里显示它所属的VLAN。对于trunk/hybrid这里会列出所有以Untagged方式放行的VLAN。如果是trunk端口输出会类似Port link-type: trunk VLAN Passing : 1, 10, 100 (default vlan 1) Tagged VLAN ID : 1, 10, 100 Untagged VLAN ID : none这表示该trunk端口允许VLAN 110100的带标签流量通过并且默认VLANPVID是1。一个常见误区很多人以为trunk端口配置了port trunk allow-pass vlan 10 100就完事了却忽略了port trunk pvid vlan 10这个配置。如果连接对端设备比如另一台交换机或支持VLAN的服务器网卡的端口PVID不匹配就会导致本端发出的Untagged帧在对端被打上错误的VLAN标签引发通信问题。所以查trunk口时PVID和允许通过的VLAN列表必须一起核对。2.3 验证MAC地址表与VLAN的关联这是动态验证VLAN内是否有设备活跃的“金标准”。通过查看MAC地址表你可以知道哪个VLAN里学习到了哪些MAC地址以及这些地址是通过哪个端口学来的。这对于定位“同一个VLAN内电脑互不通”或者“疑似环路”问题非常有用。命令display mac-address vlan [vlan-id]HUAWEI display mac-address vlan 10 MAC address table of slot 0: ------------------------------------------------------------------------------- MAC Address VLAN/ PEVLAN CEVLAN Port Type LSP/LSR-ID VSI/SI MAC-Tunnel ------------------------------------------------------------------------------- 5489-98b3-1678 10 - - GE0/0/1 dynamic 0/- 00e0-fc12-3456 10 - - GE0/0/2 dynamic 0/- ------------------------------------------------------------------------------- Total matching items on slot 0 displayed 2解读MAC Address学习到的终端设备的MAC地址。VLAN该MAC地址所属的VLAN这里是10。Port学习到该MAC地址的交换机物理端口。Typedynamic表示动态学习static表示静态绑定。怎么用这个信息如果VLAN 10下的两台电脑互ping不通但你在这个表里能看到两台电脑的MAC地址都正确地在VLAN 10下并且对应端口是UP的那么问题很可能不在交换机的二层转发上可能需要去查电脑本身的防火墙、IP地址或网关。反之如果看不到某台电脑的MAC那就要去排查该电脑连接的端口VLAN配置是否正确、网线是否正常、电脑网卡是否启用。3. 进阶排查聚焦三层VLAN接口状态与路由当VLAN之间需要通信时比如VLAN 10的电脑要访问VLAN 100的服务器就必须依赖三层VLAN接口SVI在华为叫Vlanif。这部分排查是解决“不同VLAN互访不通”问题的核心。3.1 查看VLANIF接口的IP与状态首先确认三层网关接口是否存在、是否配置了IP、物理状态是否UP。命令display ip interface brief vlanif [vlan-id]或更详细的display interface vlanif [vlan-id]HUAWEI display ip interface brief vlanif 10 *down: administratively down ^down: standby (l): loopback (s): spoofing Interface IP Address/Mask Physical Protocol Vlanif10 192.168.10.1/24 up up这是最理想的状态Physical和Protocol都是up。Physical up至少有一个该VLAN的成员端口物理状态为Up。这是Vlanif接口能起来的首要前提。如果所有属于VLAN 10的端口都Down了Vlanif 10的物理状态就会是down三层功能就失效了。Protocol upIP协议层正常通常意味着IP地址配置正确且无冲突。如果Physical是down你就得回到第二步去检查display vlan 10看看是哪些端口属于VLAN 10并逐一排查这些端口为什么是DOWN状态网线未插、对端设备关机、端口被shutdown。3.2 检查接口下的详细配置与统计使用display interface vlanif 10可以查看更详细的信息包括接口描述、MTU、收发包统计、错误包等。在排查流量不通时看看输入输出包是否有计数增长能快速判断流量是否到达了网关。HUAWEI display interface vlanif 10 Vlanif10 current state : UP Line protocol current state : UP Description: Gateway_for_Office_VLAN Internet Address is 192.168.10.1/24 Primary ... Last 300 seconds input rate: 2000 bits/sec, 2 packets/sec Last 300 seconds output rate: 4000 bits/sec, 4 packets/sec ... Input: 1000 packets, 100000 bytes Output: 2000 packets, 200000 bytes如果发现Input有包但Output没包或很少可能问题出在三层路由或策略上比如没有回程路由、ACL拦截。3.3 确认路由表Vlanif接口UP后交换机会自动生成一条指向该直连网段的直连路由。这是VLAN间路由的基础。你必须确认这条路由在路由表里。命令display ip routing-table。你可以加一个目标IP来过滤看得更清楚。HUAWEI display ip routing-table 192.168.10.0 Route Flags: R - relay, D - download to fib ------------------------------------------------------------------------------ Routing Table : Public Destinations : 1 Routes : 1 Destination/Mask Proto Pre Cost Flags NextHop Interface 192.168.10.0/24 Direct 0 0 D 192.168.10.1 Vlanif10Proto: Direct表示直连路由。NextHop: 192.168.10.1就是Vlanif10的接口地址。Interface: Vlanif10指出口。如果看不到这条直连路由那Vlanif接口肯定有问题状态没UP或者IP地址配置有误。此外还要检查去往其他网段比如VLAN 100的192.168.100.0/24的路由是否存在。如果是通过静态路由就用display ip routing-table protocol static查看如果是动态路由如OSPF就用display ospf routing等命令查看。4. 综合诊断与高频问题定位把二、三层信息都查完后大部分问题已经能定位了。下面是一些综合性的排查场景和命令能帮你更快地锁定疑难杂症。4.1 场景一PC获取不到IP地址DHCP Relay相关如果VLAN内的电脑配置为自动获取IP但拿不到地址除了检查DHCP服务器本身交换机作为DHCP中继的配置是关键。检查Vlanif接口是否启用DHCP中继display current-configuration interface vlanif 10看是否有dhcp select relay命令。检查中继服务器地址是否正确同上条命令查看dhcp relay server-ip x.x.x.x是否配置且IP正确。开启DHCP调试信息生产环境慎用debugging dhcp relay all然后在PC端触发重新获取IP观察交换机上的调试信息看请求是否被中继转发回复是否收到。4.2 场景二VLAN间偶尔不通或延迟大ACL/QoS策略影响配置了访问控制列表ACL或服务质量QoS策略可能会意外阻断或限制某些VLAN间的流量。检查接口应用的ACLdisplay current-configuration interface gigabitethernet 0/0/1或display traffic-policy applied-record查看入/出方向是否绑定了ACL或流策略。查看ACL规则display acl [acl-number]仔细核对规则中的源/目的IP、VLAN、动作permit/deny是否正确。检查QoS策略如果配置了限速或优先级重标记可能会影响关键业务流量。使用display qos policy interface [interface]查看。4.3 场景三使用抓包工具如Wireshark验证VLAN标签当逻辑排查无法定位时抓包是终极手段。特别是在处理trunk链路、服务器虚拟网卡VLAN对接时。交换机镜像端口在交换机上配置端口镜像将需要抓包的trunk端口或Vlanif端口的流量复制到一个空闲端口然后将装有Wireshark的电脑接到这个空闲端口。华为命令示例将GE0/0/24的入出流量镜像到GE0/0/10[HUAWEI] observe-port 1 interface gigabitethernet 0/0/10 [HUAWEI] interface gigabitethernet 0/0/24 [HUAWEI-GigabitEthernet0/0/24] port-mirroring to observe-port 1 inbound [HUAWEI-GigabitEthernet0/0/24] port-mirroring to observe-port 1 outboundWireshark设置确保网卡能抓取到VLAN标签。有时需要安装WinPcap/Npcap并选择“捕获VLAN信息”选项。在Wireshark抓包界面可以看到以太网帧头部后面跟着802.1Q Virtual LAN标签里面就包含了VLAN ID和优先级等信息。这能直观地验证数据帧是否被打上了正确的VLAN标签。4.4 几个必知的维护命令保存配置任何查看和修改后别忘save。华为交换机是save思科是write memory或copy running-config startup-config。查看当前运行配置display current-configuration。可以配合管道符|过滤如display current-configuration | include vlan 10或display current-configuration interface vlanif 10。查看日志信息display logbuffer或display trapbuffer。这里会记录接口Up/Down、MAC地址漂移、协议状态变化等信息是发现隐性问题的好地方。重置接口统计在长时间监控流量前可以先reset counters interface [interface-type interface-number]清空统计然后过一段时间再看数据更干净。最后也是最关键的经验网络问题排查一定要有清晰的层次感。先物理层端口灯亮不亮、display interface看状态再数据链路层VLAN、MAC地址表最后网络层IP地址、路由表、ACL。按照这个顺序大部分“VLAN接口”相关的问题都能被系统地定位和解决。不要一上来就死磕路由或ACL很可能问题只是根网线松了或者某个access端口的PVID配错了。
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门