华为交换机VLAN划分、Trunk配置与三层互通排障实战

发布时间:2026/10/23 1:10:48
华为交换机VLAN划分、Trunk配置与三层互通排障实战 网络这行有个挺有意思的现象不少人简历上写着熟悉 VLAN 划分与三层互通真到现场把两根网线一插ping不通了就开始怀疑人生——换网线、换端口、重启设备折腾两小时最后发现是 Trunk 口忘了放行 VLAN 20。这类问题跟技术难度没关系纯粹是概念链条上缺了一环不知道一个数据帧从 PC 网卡出来之后在交换机的每个接口上到底被贴了什么标签、又被撕掉了什么标签。这篇内容围绕华为交换机上VLAN 划分、Trunk 链路配置、三层互通VLANIF 与单臂路由三条主线展开全部实验基于 eNSP 模拟器复现最后给出一套我实际排障时固定使用的排查顺序。前 100 字先把关键词说清楚VLAN、Trunk、VLANIF、三层互通、eNSP、排障。适合三类人看——刚考完 HCIA 但没摸过真设备的、需要在模拟器上搭实验环境做验证的、以及现场遇到同 VLAN 不通 / 跨 VLAN 不通 / 能 ping 网关不能 ping 对端想找一条清晰排查路径的。命令我给全理由我讲透坑我也照实说。1. 广播域这件事没想明白VLAN 配置就只是背命令1.1 一台出厂交换机的默认行为新拆封的接入交换机所有电口都在同一个广播域里。A 口接的 PC 发一个 ARP 广播B 口、C 口、D 口全部能收到交换机做的就是从除源端口外的所有端口泛洪出去。二十台机器的小办公室这么用没问题一旦设备数量上去广播帧、未知单播帧、组播帧叠加起来带宽被吃掉一部分更麻烦的是任何一台机器中招比如 ARP 欺骗、广播风暴整个广播域跟着遭殃。VLAN 的本质就是把一个物理交换机切分成多个逻辑交换机。VLAN 10 里的端口和 VLAN 20 里的端口从二层视角看就是两台互不相干的设备广播帧出不了自己的 VLAN。注意这句话里二层视角四个字——VLAN 隔离的是二层广播域不隔离三层。同一台交换机上 VLAN 10 和 VLAN 20 想互访必须走三层转发这就引出了后面 VLANIF 那一节。我见过不少人把 VLAN 理解成IP 网段的划分这个理解会产生一个直接后果觉得配了 VLAN 就能通。实际是配了 VLAN 只代表二层隔离做好了想通还得配网关。这两个动作是分开的缺一不可。还有一个经常被忽略的点华为交换机接口的默认链路类型是hybrid不是 access。你用display port vlan看一个没配过的口会看到 Port Link Type 是 hybrid、PVID 是 1、Trunk VLAN List 里有 VLAN 1。这意味着你不改类型直接插线帧是以 untagged 形式进出的行为上跟 access 有点像但配置细节完全不同。这个默认值坑过很多人尤其是从别的厂商设备转过来的人。1.2 Access 口的收发规则与 PVID 的隐式作用Access 口的规则可以用两句话概括收到 untagged 帧打上本口 PVID送进对应 VLAN发出帧时把 tag 剥掉以 untagged 形式发给终端。终端PC、打印机、摄像头不认识 802.1Q 标签所以必须剥。关键在 PVID 这个参数。port default vlan 10这条命令做了两件事把接口加入 VLAN 10同时把 PVID 改成 10。所以绝大多数场景下你不需要单独去配 PVID。但如果你手工敲过port hybrid pvid vlan 10又改回 access可能会残留一个不一致的 PVID导致帧被送进意料之外的 VLAN。排查时display port vlan的输出里 PVID 和 Port Link Type 必须一起看只看类型不看 PVID 是排查不彻底的。配置上就这么几行system-view sysname SW1 vlan batch 10 20 30 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit interface GigabitEthernet0/0/2 port link-type access port default vlan 20 quitvlan batch 10 20 30一次创建多个 VLAN比一条一条vlan 10敲省事。这里有个细节VLAN 必须先创建。如果你直接port default vlan 30而 VLAN 30 不存在华为设备一般会自动创建但不同版本行为不完全一致养成先vlan batch的习惯能避免一类莫名其妙的VLAN 表里查不到的问题。PC 侧的配置经常被当成不重要的一步。实验里 PC 的 IP、掩码、网关都要填对——网关就是后面三层接口的地址。掩码填错比如该填 255.255.255.0 填成 255.255.0.0会导致 PC 认为对端在同一网段直接发 ARP 而不走网关现象是能 ping 通部分地址、ping 不通另一部分很难一眼看出来。1.3 三种划分思路按端口、按 MAC、按协议VLAN 划分方式不止一种实际工程里选择哪种取决于你想解决什么问题。我把常用的三种摆在表格里对比划分方式配置命令方向适用场景主要缺点基于端口最常用port default vlan X办公区按部门、机房按机柜换端口要重新配人跟着端口走基于 MAC 地址vlan 10下mac-vlan mac-address XXXX-XXXX-XXXX移动办公、会议室固定人MAC 表维护量大伪造 MAC 可绕过基于 IP 子网ip-subnet-vlan终端 IP 规划严格统一依赖终端 IP 正确配置较重基于 MAC 的 VLAN 有个隐藏前提交换机必须先学到这个 MAC 才知道该往哪个 VLAN 送所以第一次通信必然要经过泛洪和学习接入瞬间可能短暂处于 VLAN 1。会议室场景用它挺合适人带着笔记本坐到哪儿都在自己部门 VLAN 里但前提是 MAC 地址清单得维护好新设备进来就得加一条运维成本其实不低。基于端口的方式是绝对主流原因很朴素配置简单、性能最好、故障定位最容易。出了问题看一眼端口在哪个 VLAN 就完事。代价是灵活性差人员调工位就得改配置。很多单位最后采取的折中方案是——端口 VLAN 固化人员调动靠调整跳线解决把配置复杂度转移到配线架上。还有个更灵活的hybrid 口同时具备 access 和 trunk 的部分能力可以指定某些 VLAN 的帧带 tag 发出去另一些 VLAN 的帧剥 tag 发出去。典型用法是一个口同时承载 VoIP 电话和 PC电话走带 tag 的 voice VLANPC 走 untagged 的数据 VLAN。这个后面不展开但要知道它的存在——当你在设备上看到 hybrid 口时不要以为配错了它可能是有意为之。2. Trunk 链路上的帧变形记PVID、允许列表与 untagged 帧2.1 一个帧从 PC 到 PC 的完整旅程假设 SW1 的 G0/0/1 和 SW2 的 G0/0/1 接了两台 PC都在 VLAN 10两台交换机之间用 G0/0/24 互联配成 Trunk。A 发一个 ICMP 包给 B这个过程是这样的PC-A 网卡发出一个普通以太网帧没有 802.1Q 标签因为 PC 根本不知道 VLAN 的存在。SW1 的 G0/0/1 是 access 口PVID10收到无标签帧后打上 VLAN 10 的 tag送入 VLAN 10 的转发表。SW1 查 MAC 表发现目标 MAC 在 G0/0/24 方向且 G0/0/24 是 Trunk 口、允许 VLAN 10 通过于是保持 tag 不变从 G0/0/24 发出。SW2 的 G0/0/24 收到带 tag 的帧识别出 VLAN 10查表发现目标在 G0/0/1 方向。SW2 的 G0/0/1 是 access 口、PVID10发出前剥掉 tag变成普通以太网帧。PC-B 收到一个干净的无标签帧。整条链路上标签只在交换机之间活着。理解了这一点很多故障就变得很好解释Trunk 口不放行 VLAN 10第 3 步就断了Trunk 两端有一端没配成 Trunk帧在那一跳就被打上错误的 tag 或者被剥掉。Trunk 配置长这样interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 30 undo port trunk allow-pass vlan 1最后那行undo port trunk allow-pass vlan 1是我个人的习惯不是必须。华为 Trunk 口默认允许 VLAN 1 通过而 VLAN 1 在生产环境里通常不该承载业务流量去掉它能避免一些说不清的广播。但在实验环境里如果你不确定先别删等基本连通性验证完再收紧。2.2 PVID 配错导致的单向通这是我最常遇到的 Trunk 类故障也是最有迷惑性的。现象A 能 ping 通 BB ping 不通 A或者反过来有时候表现为刚配上能通过一会儿又断了。根因在于 Trunk 口的 PVID。Trunk 口收到无标签帧时会用本口 PVID 给它打标签。正常情况下所有业务帧在 Trunk 上都是带标签的这个规则用不上。但有两种情况会冒出无标签帧对端设备把口配成了 access发出的帧没有标签本端 Trunk 用 PVID 一打直接进了 PVID 对应的 VLAN跟预期完全不一样。本端 Trunk 没配 PVID默认 1某台设备发了无标签帧比如管理帧、某些协议报文全进了 VLAN 1。解决方案很直接Trunk 两端的 PVID 要么都保持默认 1要么配成一致的值绝对不能只改一端。如果你确实需要某个 VLAN 作为 Trunk 的 native VLAN无标签承载两端必须同步。排查命令display port vlan display port vlan GigabitEthernet0/0/24输出里重点看三列Port Link Type、PVID、Trunk VLAN List。我排障时习惯把两端设备的这条命令输出并排贴出来对比一眼就能看出哪边不一致。这比一条条去看配置快得多。2.3 手工 Trunk 与自动协商的取舍华为部分交换机支持 LNPLink-type Negotiation Protocol可以自动协商链路类型。配置命令是port link-type negotiate。理论上两端一个 access 一个 auto能自动协商成一致状态。我的建议是生产环境一律手工配置关掉自动协商。理由有三条。第一自动协商一旦一方配置异常可能协商出一个能用但不符合设计的结果故障现象隐蔽排查成本远高于多敲两行命令。第二不同版本、不同型号对 LNP 的支持程度不一致跨型号对接时容易出问题。第三手工配置本身就是一份文档看配置就知道设计意图。实验环境里倒是可以利用它快速搭环境尤其是刚开始不熟悉命令的时候。但只要你打算把这套配置复制到真实设备务必改回手工模式。另外提一句port trunk allow-pass vlan all。这条命令在实验里很方便生产里我强烈建议不要用。原因很简单它会让所有 VLAN包括未来新增的、你不希望被这个口承载的 VLAN都从这个口涌出去。VLAN 数量上去之后某些老设备的 MAC 表、VLAN 资源会被无谓消耗。正确做法是显式写清楚允许哪些 VLANport trunk allow-pass vlan 10 20 30多敲几个数字换来的是可控性和可审计性。3. 三层互通的四条路VLANIF、子接口、路由口与单臂路由3.1 VLANIF 方案最常用也最容易翻车三层交换机上给每个 VLAN 配一个逻辑接口地址就是这个 VLAN 的网关interface Vlanif10 ip address 192.168.10.1 255.255.255.0 quit interface Vlanif20 ip address 192.168.20.1 255.255.255.0 quit配完之后设备上就自动多出两条直连路由display ip routing-table能看到192.168.10.0/24 Direct和192.168.20.0/24 Direct。VLAN 10 和 VLAN 20 之间的流量由这台交换机的三层引擎直接转发不需要外部路由器参与。这就是所谓三层互通。最容易翻车的点是 VLANIF 接口 down。华为设备上 VLANIF 的 up 条件是该 VLAN 内至少有一个物理端口处于 up 状态并且这个端口必须允许该 VLAN 通过。常见坑是VLAN 10 建好了VLANIF10 也配好地址了但 VLAN 10 里一个成员端口都没有或者只有一个端口是 down 的VLANIF10 就一直是 down/down网关 ping 不通。display ip interface brief这条命令的输出里 Protocol 状态是 Down 的话先回头查 VLAN 成员。这个坑我在实验里踩过当时排查了半天路由表其实路由根本没有生成。另一个细节三层交换机做网关时PC 的网关必须指向 VLANIF 地址而不是指向任何物理口地址。物理三层口和 VLANIF 是两套东西别混。三层交换机上把某个口用undo portswitch转成三层路由口也可以配 IP但那通常用于互联不用于接终端。3.2 单臂路由dot1q termination 与 arp broadcast用路由器做网关时一个物理口要承载多个 VLAN就得用子接口interface GigabitEthernet0/0/0.10 dot1q termination vid 10 ip address 192.168.10.1 255.255.255.0 arp broadcast enable quit interface GigabitEthernet0/0/0.20 dot1q termination vid 20 ip address 192.168.20.1 255.255.255.0 arp broadcast enable quitdot1q termination vid 10的意思是这个子接口终结 VLAN 10 的标签收到带 tag 10 的帧就把标签剥掉交给三层处理发出去的帧自动打上 tag 10。arp broadcast enable这行是 90% 的人会漏掉的也是单臂路由最经典的坑。原因在于路由器子接口是逻辑接口它不知道哪些物理端口属于 VLAN 10遇到需要广播的报文ARP 请求就是广播时不知道该往哪儿发默认会丢弃。开了这条命令子接口才允许把广播报文转发出去。不开的话现象是PC ping 网关不通或者 PC 之间不通因为 ARP 根本解析不出来。这个坑的隐蔽之处在于它的表现形式和没配网关VLAN 不对完全一样都是 ping 不通。所以排查单臂路由时我的第一反应就是display current-configuration interface GigabitEthernet0/0/0.10先看arp broadcast enable在不在。单臂路由和 VLANIF 的取舍单臂路由的流量全部挤在一个物理口上PC-A 到 PC-B 的流量要经过链路两次进路由器一次、出路由器一次带宽翻倍消耗VLANIF 方案由交换芯片内部转发性能高一个量级。所以只要三层交换机数量够优先用 VLANIF。单臂路由适合小规模、或者手头只有二层交换机和路由器的场景。3.3 网关位置与地址规划地址规划这件事实验里随便填就行真实项目里填错了后面全是麻烦。我给一套我常用的规划模板以 /24 为例VLAN用途网段网关地址池范围10办公终端192.168.10.0/24.1.10–.20020服务器区192.168.20.0/24.1.10–.5030管理网络192.168.30.0/24.1.10–.9999互联/预留192.168.99.0/30——几个原则。网关统一用 .1不要这个网段用 .1、那个用 .254运维时容易记混。地址池不占满留出 .2–.9 给静态设备打印机、NAS、AP 管理地址留出 .201–.254 给未来扩展。互联地址单独划一个小网段用 /30 就够两个可用地址一端一个。三层交换机上联路由器时两种常见做法一是交换机上写默认路由指向路由器路由器上写回程静态路由指向交换机各网段二是跑 OSPF让路由自动同步。网段数量少于 10 个静态路由更省心超过 10 个、或者有冗余链路直接上 OSPF别硬撑。# 交换机侧 ip route-static 0.0.0.0 0.0.0.0 192.168.99.2 # 路由器侧回程 ip route-static 192.168.10.0 255.255.255.0 192.168.99.1 ip route-static 192.168.20.0 255.255.255.0 192.168.99.1 ip route-static 192.168.30.0 255.255.255.0 192.168.99.1回程路由漏写是最常见的能 ping 通网关、ping 不通外网的原因。数据包去得去、回不来现象上就是超时。4. eNSP 上把这套拓扑跑通从拖设备到验证命令4.1 拓扑设计与地址规划表我用的实验拓扑是两台三层交换机、两台二层交换机、四台 PC标准的两层接入加三层核心结构PC1(10.0.0.10) ── SW2(G0/0/1) ── SW2(G0/0/24) ══ SW1(G0/0/24) PC2(10.0.0.20) ── SW2(G0/0/2) │ PC3(20.0.0.10) ── SW3(G0/0/1) ── SW3(G0/0/24) ══ SW1(G0/0/23) PC4(20.0.0.20) ── SW3(G0/0/2)SW1 做三层核心SW2、SW3 做二层接入两条 Trunk 上联。地址规划设备接口类型VLAN地址SW1Vlanif10—1010.0.0.1/24SW1Vlanif20—2020.0.0.1/24SW1G0/0/24trunk10,20—SW1G0/0/23trunk10,20—SW2G0/0/1access10—SW2G0/0/2access10—SW2G0/0/24trunk10,20—SW3G0/0/1access20—SW3G0/0/2access20—SW3G0/0/24trunk10,20—PC1 网关 10.0.0.1PC3 网关 20.0.0.1。实验目标PC1 ping 通 PC2同 VLAN 跨设备、PC1 ping 通 PC3跨 VLAN 跨设备。设备选型上eNSP 里三层交换机用 S5700 就行二层交换机 S3700 也可以PC 用默认的 PC 设备。不要用 S5700 当纯二层接入容易因为默认开着三层功能导致配置行为跟 S3700 不一致实验时增加困惑。分开用更贴近真实结构。4.2 配置清单逐台敲SW2 接入层system-view sysname SW2 vlan batch 10 20 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit interface GigabitEthernet0/0/2 port link-type access port default vlan 10 quit interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 quitSW3 同理只是把 G0/0/1、G0/0/2 换成 VLAN 20。SW1 核心层system-view sysname SW1 vlan batch 10 20 interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 quit interface GigabitEthernet0/0/23 port link-type trunk port trunk allow-pass vlan 10 20 quit interface Vlanif10 ip address 10.0.0.1 255.255.255.0 quit interface Vlanif20 ip address 20.0.0.1 255.255.255.0 quit注意 SW1 上的两个 Trunk 口都要放行 VLAN 10 和 20哪怕 SW2 下面只有 VLAN 10 的终端SW3 下面只有 VLAN 20 的终端。原因是要保证 VLAN 的两端都在同一广播域内跨设备的二层连通性才有保障。敲完这四台理论上就能通了。但理论上这三个字在实验里往往要打个折扣所以下面是验证环节。4.3 验证清单五条命令确认二层三层都对我固定按下面的顺序验证每一条都过了再进入下一条# 1. 接口状态是否 up display interface brief # 2. 端口类型与 PVID 是否正确 display port vlan # 3. VLAN 成员是否正确 display vlan # 4. MAC 表是否学到 display mac-address # 5. ARP 与路由 display arp display ip routing-table第 1 条看 Physical 和 Protocol 两列都是 UP 才算物理层没问题。实验里最常见的是忘了启动设备——eNSP 里拖出来的设备默认是关机状态右键点启动指示灯变绿才真正跑起来。这个低级错误我犯过不止一次。第 2、3 条是二层验证。display vlan会列出每个 VLAN 有哪些端口对照规划表逐项核对。特别注意 Trunk 口也会出现在 VLAN 成员列表里这是正常的因为 Trunk 承载了这些 VLAN。第 4 条display mac-address是判断二层转发是否正常的核心。PC1 发个 ping 之后SW2 上应该能学到 PC1 的 MAC 在 G0/0/1、VLAN 10SW1 上应该学到 PC1 的 MAC 在 G0/0/24、VLAN 10。如果 SW1 上没有说明帧根本没上 Trunk多半是允许列表漏了。第 5 条是三层验证。display arp里应该能看到 PC1 的 IP 对应的 MAC。display ip routing-table里应该有 10.0.0.0/24 和 20.0.0.0/24 两条 Direct 路由而且接口是 Vlanif10 / Vlanif20。4.4 eNSP 特有的坑模拟器跟真设备有差异这些坑不知道会浪费大量时间第一个 ping 必丢包。eNSP 里第一次 ping 常常显示 Request timeout第二次就通了。原因是 ARP 解析和 MAC 学习需要时间加上模拟器的处理延迟比真实设备大。所以评测连通性时习惯性 ping 四次以上看后面几次的结果别拿第一个包说事。真实设备上首包丢失也常见但通常只丢一两个。Cloud 和虚拟网卡。如果需要把 eNSP 里的设备桥接到本机做连通性测试Cloud 设备的配置是重灾区。绑定的虚拟网卡名字、UDP 端口、映射关系任何一项不对都不通。我个人的建议是纯实验阶段不要碰 Cloud全部在模拟环境内部闭环等你把 VLAN 和路由都玩熟了再说。桥接引入的问题会掩盖真正的配置问题。AR 路由器启动慢。用 AR 系列路由器做单臂路由实验时启动可能要等一两分钟期间接口是 down 的。别急着断定配置错了先等设备指示灯稳定。保存配置。eNSP 关闭时如果不保存配置全丢。每敲完一台就save输入 y 确认养成习惯。另外display saved-configuration可以查看已保存的配置跟display current-configuration对比能看出有没有漏保存。版本差异。不同版本 eNSP 里的设备镜像版本不同个别命令的支持情况有差异。比如某些老镜像的 S5700 不支持某些 hybrid 配置组合。遇到命令报错先display version看版本别怀疑自己记错了命令。5. Ping 不通的排查链路从物理口查到路由表5.1 第一层接口与链路状态我给自己的排障顺序是固定的从下往上一层一层过不在没验证的层上做假设。这个方法救过我很多次。第一步永远是display interface brief。看三个东西Physical 状态、Protocol 状态、以及接口的速率双工。Physical down 说明链路层以下有问题——网线没插、对端没启动、光模块没识别。Protocol down 但 Physical up通常是对端配置问题或者协议协商失败。display interface GigabitEthernet0/0/1这条看详细信息重点看 CRC 错误计数、丢弃计数、以及 Last 300 seconds input/output rate。如果 CRC 错误持续增长物理链路质量有问题网线劣质、水晶头没压好、距离超限这种故障配置改一万遍也没用。实验环境里基本不会遇到真实环境里不少。还有一个容易漏的接口被shutdown了。display interface brief里会显示 DOWN但如果只看配置不看状态很容易以为配好了。我现在的习惯是配完一组接口立刻刷一次 brief确认状态正常再往下走。5.2 第二层VLAN、Trunk、MAC 表物理层确认后查二层。顺序是端口类型 → VLAN 归属 → Trunk 允许列表 → MAC 表。display port vlan display vlan 10 display mac-addressdisplay vlan 10的输出会显示这个 VLAN 包含哪些端口标了 UTUntagged和 TGTagged。Access 口是 UTTrunk 口是 TG。如果某个本该在里面的端口不在说明port default vlan没生效或者敲错了接口号。MAC 表是判断二层转发是否成立的黄金指标。同 VLAN 的两台 PC交换机上应该能同时看到两个 MAC 在同一 VLAN 下、指向不同端口。只看到一个 MAC说明另一台的帧没进来线的问题、端口 VLAN 不对看到一个 MAC 指向错误的端口说明有环路或者 MAC 漂移。MAC 漂移这个现象值得单独说。如果同一个 MAC 在短时间内反复在两个端口之间跳通常意味着存在二层环路。这时候要去查 STP 状态display stp brief看是否有端口处于 ALTEAlternate阻塞状态。正常情况下应该有一个 Root 端口、若干 Designated 端口。如果发现拓扑跟预期不符可能是 STP 的优先级没规划好根桥落在了接入层设备上。5.3 第三层ARP、网关、路由、ACL二层通了、三层不通问题集中在四个地方ARP 没解析、网关配错、路由缺失、策略拦截。ARP 是第一个要看的display arp display arp all三层交换机上PC ping 网关的过程中交换机会学到 PC 的 IP-MAC 映射。如果display arp里完全没有对端记录说明 ARP 请求根本没到或者响应没回来。ARP 不通的常见原因有两个一是 VLANIF 接口状态不对回到 3.1 节说的成员端口问题二是中间有设备做了 ARP 隔离或者端口隔离。第二个是网关。PC 的网关地址必须和 VLANIF 地址完全一致掩码也要一致。这个错误听起来低级但在现场出现的频率高得惊人——尤其是多个人配过、配置没有版本管理的时候。我现在的排查习惯是PC 上ipconfig模拟器里看 PC 配置界面、交换机上display ip interface brief两边并排对比。第三个是路由表。display ip routing-table display ip routing-table 10.0.0.20华为设备支持指定目的地址查路由这个命令能看到具体某个地址会匹配哪条路由比自己在大表里找快得多。如果结果是没有匹配的路由那问题就明确了。第四个是策略。ACL 和 traffic-filter 是隐蔽性最强的。display acl all display traffic-filter applied-record display current-configuration | include traffic-filter很多设备上历史的 ACL 没人清理上游几条策略叠在一起把 ICMP 给拦了。这种情况表现出来的现象是配置全对就是不通最消耗耐心。我遇到这种问题的经验是先临时把所有 traffic-filter 去掉测一下确认是不是策略问题再逐条加回来定位。不要一上来就逐条分析 ACL效率太低。5.4 故障对照表现象到根因把常见现象和排查方向整理成一张表实操时直接对照现象最可能原因首要验证命令同交换机同 VLAN 不通端口 VLAN 配错、端口 shutdowndisplay port vlan跨交换机同 VLAN 不通Trunk 未放行该 VLANdisplay port vlan跨交换机同 VLAN 单向通两端 Trunk PVID 不一致两端display port vlan对比跨 VLAN 不通未配 VLANIF 或 PC 网关错display ip interface briefVLANIF 状态 Down该 VLAN 内无 up 成员端口display vlan单臂路由不通漏配arp broadcast enabledisplay current-config能 ping 网关不能 ping 对端掩码错误或回程路由缺失display ip routing-table配置全对但偶发不通ACL 拦截、MAC 漂移、环路display acl all/display stp brief首次 ping 丢包后续正常ARP 学习延迟正常现象多 ping 几次这张表是我这几年的排查经验浓缩。要说明一点表格给的是最可能不是一定。真实故障经常是两三个原因叠加比如 Trunk 允许列表漏了 VLAN同时 PC 网关又填错了。这种情况下先修一个、验证一个别同时改多个地方否则永远不知道是哪个改动生效的。6. 配置之外的稳定性问题6.1 环路与 STPVLAN 和 Trunk 配对了网络还是时不时抽风八成是环路。接入交换机的两个上联口接在同一台核心上如果没有配链路聚合也没跑 STP一个广播帧能在两个口之间无限循环几秒钟内打满链路全网瘫痪。华为交换机默认开启 STP通常是 MSTP 模式所以完全不配一般也不会出环路。但有几个操作会破坏这个保护手动stp disable、把端口配成边缘端口但接了交换机、或者把 STP 模式改成不一致的模式导致协商失败。display stp display stp brief stp mode mstp stp instance 0 root primary # 核心交换机上执行核心交换机上把根桥固定下来是比较稳妥的做法。如果不指定根桥选举靠优先级加 MAC结果可能不符合设计——比如某台接入交换机抢到了根桥流量路径绕远延迟变高。我个人的建议是任何两条交换机之间的互联链路要么做链路聚合要么确认 STP 正常运行二选一不能两个都没有。6.2 端口安全与 MAC 漂移办公网里经常遇到一种情况某个端口下接了一台小交换机或者一个无线路由器导致大量 MAC 从这个端口进来。如果配了端口安全超出上限的 MAC 会被丢弃表现为部分人能上网、部分人不能。interface GigabitEthernet0/0/5 port-security enable port-security max-mac-num 2 port-security protect-action restrictmax-mac-num 2意味着这个口只允许两个 MAC一台 PC 加一部 IP 电话刚好。protect-action有三个选项protect丢弃不告警、restrict丢弃并告警、shutdown直接关端口。生产环境我倾向用 restrict既不中断业务又能通过日志发现问题。用 shutdown 的话一旦触发端口关闭得人工去恢复运维成本高。MAC 漂移的另一个成因是双网卡设备。某台服务器两块网卡接到不同交换机其中一块配了和另一块同网段的地址就会造成 MAC 表反复刷新。这种情况表现是间歇性丢包很难查。看到display mac-address里某个 MAC 的端口字段频繁变化就往这个方向想。6.3 配置保存与回滚最后说一个听着无聊但极其重要的事保存和备份。save display saved-configurationsave之后配置才写入存储重启才不丢。eNSP 里很多人忘了这步关掉重开发现配置全没了白干。真设备上更严重——配置改完没保存一次断电回到解放前。更进一步的做法是配置备份。华为设备支持把配置导出也可以配configuration file定期自动保存。规模大一点的网络我建议每次变更前先导出一份当前配置命名带上日期改完验证通过再归档一份。出问题时对比两份配置能快速定位改了什么。display current-configuration flash:/backup-20240101.cfg这个重定向在部分版本上支持不支持的版本用save后从设备上导出文件也行。核心思想是变更前有备份变更后可回滚。我见过太多因为改错一行shutdown导致整层楼断网、又没有备份只能从头配的案例。7. 我个人在这些实验里踩出来的几点体会单臂路由那个arp broadcast enable我最初是照着教材敲的教材上有一行我漏了结果卡了一个下午。后来才明白这行不是形式主义是路由器子接口不知道 VLAN 成员导致的广播丢弃。从那以后我记命令不再只记顺序一定搞清楚每一行在解决什么问题。VLANIF 的 up 条件也一样。最开始我总以为配了地址就该 up实际是必须有成员端口。现在配完 VLANIF 我第一件事就是display ip interface brief看到 Protocol 是 Up 才继续。还有一点是关于 eNSP 的使用心态。模拟器很方便但它跟真设备有差异尤其是启动速度、首包丢失、Cloud 桥接这些地方。我的做法是把模拟器当成验证配置逻辑的工具而不是验证性能和行为细节的工具。配置逻辑在模拟器上跑通细节行为到真设备上再确认。最后一个小技巧给每台设备的接口写 description。description to-SW2-G0/0/24这种虽然多敲几个字但半年后回来看配置或者接手别人的配置这一行能省下大量翻图纸的时间。真实项目里我要求所有互联口和上联口必须有描述这是最低标准。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询