☰
eNSP华为交换机VLAN划分、Trunk与三层互通配置排障
2026/10/23 4:00:37 网站建设 项目流程

eNSP 里拖两台交换机、几台 PC,划 VLAN、配 Trunk、起 VLANIF,最后让不同网段互相 ping 通——这套华为交换机 VLAN 与三层互通的实验,我带新人做过很多轮。有意思的是,每次卡住的地方高度重合:端口默认是 hybrid 不是 access、Trunk 忘了放行 VLAN、VLANIF 地址配了但协议状态是 down、PC 网关那一栏空着。命令本身没几个,真正难的是脑子里要有一张“帧在链路上怎么变”的动态图。这篇就把这张图拆开讲,从拓扑规划、地址设计、Access 与 Trunk 的标签处理、VLANIF 三层互通,一直到不通时按什么顺序查,全部按我在 eNSP 里实际操作的顺序写,命令可以直接抄。适合刚接触数通配置的入门者,也适合已经能配通但说不清原理、排障靠瞎试的人。

1. 先把拓扑和地址想清楚,再动手敲命令

1.1 这个实验真正要验证的是什么

很多人把 VLAN、Trunk、三层互通当成三组独立命令来背,背完发现换个拓扑就不会了。问题出在没有理解一件事:这个实验从头到尾只在验证同一件事——802.1Q 标签在数据帧经过每一段链路时,什么时候被打上、什么时候被剥掉、什么时候被丢弃。

VLAN 解决的是广播域隔离,本质是让交换机在二层把端口分组;Trunk 解决的是多个 VLAN 的帧怎么挤在同一根物理链路上传输,靠的是给帧打标签;三层互通解决的是被隔离的广播域之间怎么通信,靠的是给每个 VLAN 配一个网关接口。三者串起来才是一条完整的数据路径。

所以我做这个实验时,习惯先在纸上把路径画出来:PC1(VLAN 10)ping PC4(VLAN 30),帧从 PC1 出来是 untagged,进 SW2 的 Access 口被打上 VLAN 10 标签,从 SW2 的 Trunk 口带标签发出,进 SW1 的 Trunk 口带着标签进来,SW1 查目标 MAC 是自己 VLANIF30 的地址,于是把帧交给三层处理,重新封装后再从 VLAN 30 的出口送出去,最后到 SW3 的 Access 口剥掉标签到达 PC4。这条路径每个节点上标签的状态,就是排障时唯一需要盯的东西。

1.2 拓扑结构与地址规划表

实验拓扑我一般用“一台三层核心 + 两台二层接入”的结构,既覆盖了 VLAN 划分,又覆盖了 Trunk 和三层网关,规模不大但该有的环节一个不少。

  • SW1:三层交换机,作为核心,承担所有 VLAN 的网关(VLANIF 接口)
  • SW2、SW3:二层交换机,作为接入,负责把终端划进不同 VLAN
  • SW1 的 GE0/0/1 接 SW2 的 GE0/0/24,SW1 的 GE0/0/2 接 SW3 的 GE0/0/24
  • SW2 的 GE0/0/1 至 GE0/0/3 接 PC1 至 PC3,SW3 的 GE0/0/1 至 GE0/0/2 接 PC4 至 PC5

地址规划这一步千万别跳过,直接决定后面配置时会不会自己给自己挖坑。我用的规划如下:

VLAN ID用途网段网关地址承载设备
10办公终端192.168.10.0/24192.168.10.254SW2 GE0/0/1、GE0/0/2
20研发终端192.168.20.0/24192.168.20.254SW2 GE0/0/3、SW3 GE0/0/2
30服务器区192.168.30.0/24192.168.30.254SW3 GE0/0/1

PC 侧地址按顺序分配:PC1 是 192.168.10.1/24、网关 192.168.10.254;PC2 是 192.168.10.2/24;PC3 是 192.168.20.1/24、网关 192.168.20.254;PC4 是 192.168.30.1/24、网关 192.168.30.254;PC5 是 192.168.20.2/24、网关 192.168.20.254。

这里有个设计上的小考虑:我把 VLAN 20 故意跨了两台接入交换机,目的是让“同 VLAN 跨设备二层互通”和“不同 VLAN 跨设备三层互通”两条路径都能在同一套拓扑里验证到。如果所有 VLAN 都只在一台交换机上,Trunk 配得对不对根本看不出来。

提示:网关地址统一用 .254 而不是 .1,这是运维里比较常见的习惯,好处是终端自动获取地址时不会和手配的 .1 撞车。实验里养成这个习惯,以后迁移到真实设备上会顺手很多。

1.3 三种互通方案的取舍对比

VLAN 之间要通,方案不止一种。很多人做完 VLANIF 就以为这是唯一解,其实选型背后有明确的成本和场景逻辑。

方案实现方式优点局限适用场景
三层交换机 VLANIF每个 VLAN 建一个虚拟三层接口转发在硬件内完成,时延低;配置集中;扩展性好需要三层交换机,设备成本高中大型园区网核心层
单臂路由(路由器子接口)一条物理链路划多个子接口,dot1q 终结二层交换机加一台路由器就能实现,成本低所有 VLAN 流量挤一个物理口,容易成瓶颈;配置分散小型网络、临时实验
外接路由器做网关每个 VLAN 对应路由器一个物理口逻辑最简单直白端口数量限制严重,无法扩展极小规模、教学演示

我见过不少小机房为了省设备,用一个路由器单臂路由扛十几个 VLAN,结果内网互访一多就明显卡顿——物理口的带宽是所有 VLAN 共享的,而且每条流都要经过路由器 CPU 转发。实验里两种方案我都会配一遍,因为排障时遇到的故障现象完全不一样,熟悉两种才能快速定位。

2. eNSP 环境和基础操作,别输在起跑线上

2.1 设备型号怎么选

eNSP 里设备型号不少,选错型号后面会走弯路。这个实验我的固定组合是:核心用三层交换机(S5700 系列)、接入用二层交换机(S3700 系列)、需要演示单臂路由时再加一台 AR 系列路由器、终端用 PC。

关键区别在端口的三层能力:三层交换机可以直接创建 VLANIF 并配 IP,二层交换机不行,只能做透传。如果你拿一台二层设备当核心,配了interface Vlanif 10会发现接口起不来或者根本没这个命令,白白折腾半天。所以实验开始前先确认设备图标下面的型号,别接完线才发现选错。

另一个细节是 eNSP 启动设备需要时间,特别是同时开五六台设备时,前一台还在加载,后一台就已经点了启动。正确的做法是全部点启动后等指示灯变绿、控制台能敲出命令回显再开始配,否则容易出现“命令敲了没反应”的假故障。

2.2 实验前的清零与基础设置

真实设备上做实验,第一件事是把设备恢复到出厂状态。eNSP 里虽然每次新建工程都是干净的,但如果是在已有工程上改,一定要先清干净,否则残留配置会让排障变得极其混乱。

<Huawei> system-view [Huawei] sysname SW1 [SW1] undo info-center enable

sysname是必须改的,三台设备都叫 Huawei 的时候,你根本分不清当前在配哪一台,这在实际排障里是致命的。undo info-center enable关掉日志刷屏,配置时控制台不会被大量日志打断,专注度会高很多。

另外两个基础设置我每次都加:

[SW1] user-interface console 0 [SW1-ui-console0] idle-timeout 0 0 [SW1-ui-console0] screen-length 0 temporary

idle-timeout 0 0是让控制台永不超时,防止配到一半去查资料回来发现会话断了;screen-length 0 temporary是让display命令一次输出全部内容,不用反复按空格翻页,查路由表、VLAN 表的时候特别省事。

如果需要彻底重置设备:

<SW1> reset saved-configuration <SW1> reboot

注意reset saved-configuration清的是下次启动加载的配置文件,当前运行配置还在,必须重启才生效。这一步在 eNSP 里经常被忽略,改完以为清空了,结果重启前又存了一次盘,配置全回来了。

2.3 eNSP 里几个容易踩的坑

eNSP 毕竟是模拟器,有些行为跟真机有差异,提前知道能省很多时间。

第一,配置不保存就关设备会丢。eNSP 里设备断电相当于真机重启,运行配置全部丢失,回到上次 save 的状态。所以每配完一个阶段,养成save的习惯,尤其是马上要重启设备或者关闭工程之前。

第二,连线要连对端口,别凭印象。我见过太多次“Trunk 配了但不通”,最后发现线根本没插在配的那个口上。双击链路能看到两端接的具体端口号,配置前花十秒确认一下。

第三,PC 的配置在图形界面里,不在命令行。双击 PC 打开配置窗口,在“基础配置”页填 IP 地址、子网掩码、网关,一定记得点“应用”。很多人填完直接关窗口,配置根本没生效,然后对着交换机查半天。

第四,抓包是排查标签问题的最强手段。右键链路选“开始抓包”,会在抓包工具里看到真实的帧结构,802.1Q 标签在不在、VLAN ID 是多少,一目了然。二层问题查不明白的时候,抓一次包比敲十条命令都管用。

3. VLAN 划分与 Access 端口配置

3.1 批量创建 VLAN 与命名

VLAN 要先创建才能使用,这是硬性前提。虽然有些场景下配端口时会自动创建 VLAN,但依赖这个行为很容易出现“VLAN 存在但没命名”“VLAN 数量对不上”的混乱,我习惯显式创建。

[SW1] vlan batch 10 20 30 [SW1] vlan 10 [SW1-vlan10] description office [SW1-vlan10] quit [SW1] vlan 20 [SW1-vlan20] description dev [SW1-vlan20] quit [SW1] vlan 30 [SW1-vlan30] description server

vlan batch支持连续范围,写vlan batch 10 to 20就是创建 10 到 20 共 11 个 VLAN,写vlan batch 10 20 30是创建三个不连续的。两种写法可以混用,比如vlan batch 10 20 30 to 35。

description这个命令看着可有可无,实际价值很大。真实网络里 VLAN 编号到后期能到几百个,光看数字根本记不住哪个是干什么的,加个描述,display vlan一敲就清楚。实验阶段就把这个习惯养起来。

3.2 Access 端口的两个必配项

这里是最容易出错的地方,必须重点说:华为交换机的端口默认链路类型是 hybrid,PVID 是 1,不是 access。很多教程直接写“把端口设成 access 并加入 VLAN”,但没强调默认值,导致有人漏配port link-type access,端口仍是 hybrid,行为上虽然可能歪打正着能通,但一旦涉及多 VLAN 就会出问题。

正确的 Access 口配置:

[SW2] interface GigabitEthernet 0/0/1 [SW2-GigabitEthernet0/0/1] port link-type access [SW2-GigabitEthernet0/0/1] port default vlan 10 [SW2-GigabitEthernet0/0/1] quit

两行命令各管一件事:port link-type access定义端口的链路类型,port default vlan 10把端口划进 VLAN 10,同时把该 VLAN 的 PVID 改成 10。Access 口的行为是:收到 untagged 帧打上 PVID 10 的标签,发出时如果帧的 VLAN ID 等于 PVID 就剥掉标签。终端发出的帧本来就不带标签,所以进出都很自然。

注意:port default vlan和port trunk pvid vlan不要混用。前者只在 access 口下有效,后者在 trunk 口下改 PVID 但不改变端口承载的 VLAN 列表。命令敲错不会报错,但行为完全不对,这是排障时的隐形炸弹。

3.3 用 port-group 批量配置端口

接线多的交换机上一个个配端口太慢,华为提供了端口组机制:

[SW2] port-group group-member GigabitEthernet 0/0/1 to GigabitEthernet 0/0/3 [SW2-port-group] port link-type access [SW2-port-group] port default vlan 10

进入端口组视图后敲的命令会同时在所有成员端口上执行,效率很高。但这里有个必须提醒的点:端口组里的端口会被施加完全相同的配置,如果你其实想让这三个口分属不同 VLAN,用端口组反而会把它们全改成同一个,事后再改回来更麻烦。所以我的做法是:同 VLAN 的端口用端口组,不同 VLAN 的分开配。

3.4 配置后的验证方法

配完别急着往下走,先验证这一步是对的。三条命令足够:

[SW2] display vlan [SW2] display port vlan [SW2] display interface brief

display vlan看 VLAN 是否创建成功、每个 VLAN 下有哪些端口、是 tagged 还是 untagged。输出里会明确写UT:Untagged和TG:Tagged,Access 口应该是 UT。

display port vlan看每个端口的 PVID 和允许通过的 VLAN 列表,这是查 PVID 问题最快的方式。

display interface brief看物理层状态,PHY列显示up才说明线接对了、对端设备在线。如果这里是down,后面所有配置都是白配,先解决物理层。

4. Trunk 链路:标签怎么打、怎么剥

4.1 Trunk 的报文处理规则

Trunk 是整个实验里最抽象的部分,但只要把三条规则记住,基本能推出所有现象。

规则一:收到 untagged 帧,交换机会给它打上该端口的 PVID 标签,然后检查这个 VLAN 是否在允许通过列表里,在就转发,不在就丢弃。

规则二:收到 tagged 帧,直接看帧里的 VLAN ID,在允许列表里就转发,不在就丢弃。

规则三:发出帧时,如果帧的 VLAN ID 等于端口 PVID,且该 VLAN 在允许列表里,就剥掉标签发出;如果 VLAN ID 不等于 PVID,就带着标签发出。

这三条规则解释了为什么两端 Trunk 的 PVID 必须一致:如果一端发出去是 untagged(因为 VLAN ID 等于本端 PVID),另一端收到后会按自己的 PVID 重新打标签,一旦两端 PVID 不同,帧就被划进了错误的 VLAN。

4.2 Trunk 端口的标准配置

SW2 上联口和 SW1 的对接口都要配:

[SW2] interface GigabitEthernet 0/0/24 [SW2-GigabitEthernet0/0/24] port link-type trunk [SW2-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20 30 [SW2-GigabitEthernet0/0/24] quit [SW1] interface GigabitEthernet 0/0/1 [SW1-GigabitEthernet0/0/1] port link-type trunk [SW1-GigabitEthernet0/0/1] port trunk allow-pass vlan 10 20 30 [SW1-GigabitEthernet0/0/1] quit

SW1 和 SW3 之间的链路同理,放行 VLAN 20 和 30。

这里有个容易被忽略的事实:Trunk 端口默认允许 VLAN 1 通过。执行port trunk allow-pass vlan 10 20 30之后,允许列表实际是 1、10、20、30,VLAN 1 依然在里面。实验里无所谓,但在真实环境里,VLAN 1 承载管理流量存在安全隐患,通常会在 Trunk 上显式禁掉:

[SW1-GigabitEthernet0/0/1] undo port trunk allow-pass vlan 1

禁之前一定确认管理地址不在 VLAN 1 上,否则会把自己关在门外,只能去现场接console口。这种“配完就失联”的事故在运维里不算罕见,做实验时就应该有这个意识。

4.3 PVID 不一致会导致什么

我专门做过一次破坏性测试,把 SW2 上联口的 PVID 改成 20,SW1 那边保持默认 1,其他配置不变。现象很有意思:

VLAN 10 的 PC 完全不通了。原因是从 SW2 往 SW1 方向,VLAN 10 的帧因为 VLAN ID 不等于 PVID(10 不等于 20),带着标签发出,SW1 收到后查允许列表,VLAN 10 在列表里,正常转发——这一段没问题。问题在反方向:SW1 发往 SW2 的 VLAN 10 帧,SW1 的 PVID 是 1,VLAN ID 10 不等于 1,所以带标签发出。SW2 收到 tagged 帧,VLAN 10 在允许列表里,也正常。看起来应该通?

真正的坑在 VLAN 20。SW2 上 VLAN 20 的帧,VLAN ID 等于本端 PVID 20,所以剥掉标签发出。SW1 收到一个 untagged 帧,按自己的 PVID 1 打上 VLAN 1 的标签——VLAN 20 的流量就这样跑进了 VLAN 1,VLAN 20 的用户彻底断了,而且从 VLAN 20 的视角看,是“网关 ping 不通”,很容易误判成三层问题。

这个案例说明一件事:Trunk 两端 PVID 不一致导致的故障,现象往往出现在另一个 VLAN上,排查时如果只盯着出问题的那个 VLAN 查,永远查不到根因。display port vlan对比两端 PVID,是遇到这类诡异现象时的第一动作。

4.4 Trunk 配置的验证

[SW1] display port vlan [SW1] display interface GigabitEthernet 0/0/1 [SW1] display vlan

display port vlan的输出里,Trunk 口会列出 PVID 和 Trunk VLAN List,确认放行的 VLAN 都在里面。display interface看端口状态和流量统计,如果Input和Output的包计数一直是 0,说明根本没有流量过来,问题在更下层。display vlan里 Trunk 口会显示为TG(Tagged)。

如果条件允许,在 eNSP 里右键 Trunk 链路抓个包,可以看到 VLAN 10、20、30 的帧都带着 802.1Q 标签,标签里的 VID 字段就是 VLAN 号。这是理解 Trunk 最直观的方式,比看十遍文档都有效。

5. 三层互通:VLANIF 怎么配、路由从哪来

5.1 VLANIF 接口的本质

三层交换机内部为每个 VLAN 维护一个虚拟三层接口,叫 VLANIF。它相当于这个 VLAN 的网关,所有发往其他网段的流量都会先送到这里,由交换机做三层转发。

VLANIF 有一个特性必须理解:它的协议状态取决于该 VLAN 内是否有处于 up 状态的成员端口。如果 VLAN 10 创建了,但没有任何物理端口加入,或者加入的端口全是 down 的,VLANIF 10 的协议状态就是 down,配了 IP 也不通。这个机制保证了网关不会在 VLAN 实际不存在时还对外宣告可达。

所以配 VLANIF 之前,先回头确认 Access 端口配好了、线接对了、display interface brief里是 up 的。顺序反了就会出现“IP 配得好好的就是 ping 不通”这种典型困惑。

5.2 VLANIF 的配置过程

在三层核心 SW1 上配三个网关:

[SW1] interface Vlanif 10 [SW1-Vlanif10] ip address 192.168.10.254 24 [SW1-Vlanif10] quit [SW1] interface Vlanif 20 [SW1-Vlanif20] ip address 192.168.20.254 24 [SW1-Vlanif20] quit [SW1] interface Vlanif 30 [SW1-Vlanif30] ip address 192.168.30.254 24 [SW1-Vlanif30] quit

ip address后面的 24 是掩码的简写,等同于 255.255.255.0。华为支持这种简写,但要注意别写成/24,那个斜杠写法在部分命令里不被识别,会直接报错。

配完验证:

[SW1] display ip interface brief

输出里会列出每个 VLANIF 的 IP 地址、物理状态和协议状态。重点关注协议状态,up才算真正可用。如果某个 VLANIF 显示 down,按前面说的逻辑回去查这个 VLAN 有没有 up 的成员端口。

5.3 直连路由是怎么自动来的

VLANIF 配好 IP 之后,三层交换机会自动生成对应的直连路由,不需要手工添加。这就是为什么同一个三层设备上的不同 VLAN 天然能互通——它们都由本机直连,查路由表就能转发。

[SW1] display ip routing-table

输出里会看到类似192.168.10.0/24 Direct 0 0 Vlanif10的条目。如果这张表里没有你期望的网段,说明 VLANIF 没配成功或者协议状态不对。

这里补充一个设备差异:大部分三层交换机默认开启路由功能,配了 VLANIF 就有路由表。但部分型号的端口默认工作在二层模式,即使配了 IP 也不做三层转发,需要用undo portswitch把端口切换成三层模式。遇到“IP 配了、路由表空”的情况,先确认设备型号和端口工作模式,别怀疑自己命令敲错了。

5.4 跨设备三层互通和静态路由

如果网络里有两台三层设备(比如核心和另一个区域的核心),它们之间需要互联地址,同时需要静态路由指引对方网段怎么走。

假设 SW1 和另一台三层设备通过 VLAN 99 互联,SW1 侧地址 10.0.0.1/30,对端 10.0.0.2/30,对端下挂 172.16.0.0/24 网段:

[SW1] vlan 99 [SW1] interface Vlanif 99 [SW1-Vlanif99] ip address 10.0.0.1 30 [SW1-Vlanif99] quit [SW1] ip route-static 172.16.0.0 255.255.255.0 10.0.0.2

路由配置最容易犯的错是只配单向。SW1 知道怎么去 172.16.0.0/24,但对端不知道 192.168.10.0/24 怎么回来,结果就是单向能通、双向 ping 不通(ping 的时候去包到了,回包没回来,表现还是不通)。所以跨设备三层互通,两端的静态路由必须成对出现,或者各自配一条默认路由指向对方。

配置完成后用display ip routing-table确认路由条目是Static类型,用ping -a 192.168.10.254 172.16.0.1指定源地址测试,可以排除源地址选择带来的干扰。

5.5 单臂路由方案与那个必配命令

用路由器做网关的方案,eNSP 里通常是一台路由器加一台二层交换机。路由器的物理口下面划子接口,每个子接口终结一个 VLAN:

[Router] interface GigabitEthernet 0/0/0.10 [Router-GigabitEthernet0/0/0.10] dot1q termination vid 10 [Router-GigabitEthernet0/0/0.10] ip address 192.168.10.254 24 [Router-GigabitEthernet0/0/0.10] arp broadcast enable [Router-GigabitEthernet0/0/0.10] quit

三行命令各有作用:dot1q termination vid 10让子接口在收到带 VLAN 10 标签的帧时剥掉标签交给三层处理,发出时再打上标签;ip address配网关地址;arp broadcast enable打开子接口的 ARP 广播功能。

第三条命令是最容易被漏掉的。华为路由器的子接口默认不发送 ARP 广播,PC 想访问网关必须先 ARP 解析网关的 MAC,如果网关不回应 ARP,PC 的 ARP 表里就学不到网关地址,表现为“同网段能通、跨网段不通”。这个现象特别迷惑人,因为从交换机角度看一切正常,配置也没错,就是不通。我第一次遇到时查了两个小时,最后发现就差这一行。

对应地,交换机上连接路由器的那个口要配成 Trunk,放行所有需要的 VLAN:

[SW] interface GigabitEthernet 0/0/1 [SW-GigabitEthernet0/0/1] port link-type trunk [SW-GigabitEthernet0/0/1] port trunk allow-pass vlan 10 20 30

单臂路由和 VLANIF 的对比在第 1 章已经列过表,这里补一个实操体会:单臂路由的配置量随 VLAN 数量线性增长,每个 VLAN 一个子接口、一组命令,VLAN 一多就很容易漏配或配错 vid。VLANIF 方案则是每个 VLAN 一个接口,配置结构更清晰。所以实验里可以两种都试,真实项目里能用 VLANIF 就别用单臂路由。

6. 排障实录:不通的时候按什么顺序查

6.1 自下而上的排查顺序

网络排障最忌讳东敲一下西敲一下。我的固定顺序是:物理层 → 二层(VLAN/Trunk)→ 三层(IP/VLANIF)→ 路由 → 策略 → 终端,一层不通就不要往下走。

第一步看物理层,display interface brief里所有涉及的端口是不是 up。这一步能解决掉相当比例的问题,因为 eNSP 里线接错端口、设备没启动、端口被 shutdown 的情况太常见了。如果端口是 down 的,先undo shutdown,再确认线接对。

第二步看二层。同 VLAN 同交换机不通,查 Access 口是不是加对了 VLAN;跨交换机同 VLAN 不通,查两端 Trunk 是不是都配了、都放行了该 VLAN、PVID 是否一致。display port vlan和display vlan对照着看,两端的输出应该是对称的。

第三步看三层。VLANIF 是不是配了 IP、协议状态是不是 up、PC 的网关填的是不是这个地址。这里特别提醒一句 PC 侧:eNSP 里 PC 的网关是必填项,空着的话本网段能通、跨网段一定不通,而且没有任何报错提示,纯靠自觉检查。

第四步看路由。display ip routing-table里有没有目标网段的路由,是 Direct 还是 Static,下一跳对不对。跨设备场景下这一步是关键,很多“配置全对就是不通”最后都是路由缺一条。

第五步看策略。ACL、端口安全、流量抑制这些配置在实验里用得少,但如果你是从别的工程复制过来的配置,很可能带着这些策略,把流量默默丢掉了。display acl all和display current-configuration快速扫一遍。

6.2 高频故障与排查命令速查表

故障现象最可能的原因排查命令解决方式
同交换机同 VLAN 两台 PC 不通端口未加入 VLAN 或链路 downdisplay vlan、display interface brief补配port default vlan,检查连线
跨交换机同 VLAN 不通Trunk 未放行该 VLANdisplay port vlan两端补port trunk allow-pass vlan
某个 VLAN 不通,其他正常两端 Trunk PVID 不一致两端display port vlan对比统一 PVID,一般保持默认 1
所有跨网段都不通VLANIF 未配或协议 downdisplay ip interface brief确认 VLAN 内有 up 端口,补配 IP
能 ping 网关,跨网段不通PC 网关未填或填错双击 PC 查看配置填写正确的网关地址并点应用
跨设备三层不通静态路由缺回程两端display ip routing-table成对配置静态路由
单臂路由跨网段不通子接口未开 ARP 广播display current-configuration interface补arp broadcast enable
VLANIF 配了 IP 仍是 downVLAN 内无 up 成员端口display vlan把 up 的端口加入该 VLAN
一切配置正常但不通STP 阻塞或环路display stp brief检查是否有多余连线,确认端口状态

6.3 几个看起来正常其实有问题的情况

STP 把端口阻塞了。如果拓扑里不小心多接了一根线形成环路,生成树会主动阻塞某个端口,这个端口上的流量全部停止,但端口物理状态还是 up 的,display interface brief看不出来。用display stp brief查看,状态是ALTE或DISCARDING的端口就是被阻塞的。实验里保持单一链路一般不会遇到,但一旦出现,现象非常像“配置丢失”。

掩码不一致导致“同网段”幻觉。192.168.10.1/24 和 192.168.10.200/25,看起来在同一个 C 段里,实际按掩码划分一个在 10.0/24、一个在 10.128/25,属于不同子网。这种问题在 PC 和交换机上掩码配得不一致时会出现,两边都觉得自己是对的,互 ping 就是不通。统一掩码,或者干脆全部用 /24,能避开绝大多数这类问题。

Trunk 放行了 VLAN 但端口类型没改。华为端口默认 hybrid,如果只敲了port trunk allow-pass vlan 10但没敲port link-type trunk,命令可能被拒绝或者不生效。正确的顺序是先改类型再放行,改类型的时候端口会闪断一次,这是正常的。

PC 上装了防火墙或者有多个网络适配器。真实环境里遇到的概率比实验高,这台 PC 可能同时连着别的网络,路由表里有多条默认路由,ping 的时候走了错的那条。实验里都是纯净环境,但这提醒我们:真实排障时终端侧的因素不能排除在外。

6.4 我常用的排查命令清单

display interface brief # 物理层总览,第一眼看这个 display port vlan # 端口 PVID 和允许 VLAN display vlan # VLAN 与端口成员关系 display ip interface brief # VLANIF 地址与协议状态 display ip routing-table # 路由表,看目标网段 display arp # ARP 表,看对端是否解析到 display stp brief # 生成树端口状态 display current-configuration # 完整配置,找遗漏 display current-configuration interface GigabitEthernet 0/0/24 # 单口配置

display arp这条命令值得单独说。如果 PC 能 ping 通网关,ARP 表里会有对应的记录;如果 ARP 表是空的,说明二层就没通,问题不在三层。用 ARP 表可以快速切分“二层问题”和“三层问题”,比一层层查快得多。

7. 从实验到现网:几个容易忽略的经验点

7.1 命名、描述和配置注释

实验阶段只有三台设备,怎么配都记得住。但真实网络里几十上百台设备,没有统一的命名和描述,三个月后回来改配置基本等于重新认识一遍。

我的习惯是:设备名用“位置-角色-编号”三段式,比如核心交换机标注所在区域和编号;VLAN 一定加 description;Trunk 口加 description 写明对端设备和端口;三层接口加描述写明所属网段。这些信息在display current-configuration里能看到,排查时能省下大量翻拓扑图的时间。

[SW1] interface GigabitEthernet 0/0/1 [SW1-GigabitEthernet0/0/1] description to-SW2-GE0/0/24 [SW1-GigabitEthernet0/0/1] quit

7.2 保存、备份与回滚

实验里配完不保存,关掉工程就没了,这是最直接的教训。真实设备上更严重,一次意外断电可能让几个小时的配置白费。

<SW1> save

命令敲完会提示确认文件名,默认是 vrpcfg.zip,直接回车即可。养成阶段完成就保存的习惯,而不是全部配完再存一次——中途出错时至少还能回到上一个可用状态。

备份方面,display current-configuration的输出可以直接复制出来存档,这是最笨但最可靠的方式。真实环境里还会用 TFTP 之类的方式把配置文件传到服务器上,实验环境暂时用不到,但知道有这个思路,以后遇到设备损坏需要重建配置时不会手忙脚乱。

7.3 实验和真实网络的差距

这个实验配通了,不等于就能直接上手真实网络。几个明显差距需要提前有心理准备。

第一是规模。实验里三个 VLAN、五台 PC,真实园区网动辄几十个 VLAN、上百个端口,靠手工一台台配根本不现实,需要脚本化、模板化,或者用网管系统批量下发。

第二是可靠性。实验里核心交换机只有一台,挂了就全断。真实网络核心层至少双机,配上冗余网关协议,一条链路故障能自动切换。这些内容在实验里没覆盖,但实际项目里是硬要求。

第三是安全。真实网络的接入端口不会对所有流量敞开,会有端口安全限制 MAC 数量、会有准入控制、会有 ACL 限制跨网段访问。实验里为了简化全放通了,真实环境里放通的范围要精确到每条规则。

第四是管理流量。实验里管理地址随便配在哪都行,真实环境一般单独划一个管理 VLAN,把设备的远程管理地址放在里面,和业务流量隔离。这个规划要在网络设计阶段就定下来,后期再改代价很大。

我个人的体会是,VLAN 和 Trunk 这套东西,看文档看三遍不如在 eNSP 里故意配错两遍。把 PVID 改错、把 allow-pass 漏掉、把 VLANIF 建在没有成员的 VLAN 上,然后自己对着现象查回去,这几轮下来,帧在链路上怎么变这件事就刻在脑子里了。真遇到现网故障时,脑子里会自动浮现那条路径,知道该在哪个节点停下来看什么,这比记住多少条命令都管用。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询