资讯动态

华为ENSP不同VLAN间通信:VLANIF与单臂路由排错实战

发布时间:2026/10/26 12:35:39 来源:尧图企业网站定制
1. VLAN 隔离做完了才发现通不了问题到底出在哪刚接触 VLAN 的朋友大多经历过这样一幕在 ENSP 里辛辛苦苦把交换机端口划进 VLAN 10 和 VLAN 20display vlan一看端口归属清清楚楚心里挺得意。结果用 PC1 去 ping PC2超时。再切回同 VLAN 内的另一台 PC通了。于是开始怀疑是不是模拟器有 bug、是不是镜像有问题、是不是网线没插好——其实都不是。VLAN 的本质就是在二层把一个物理交换机切成多个互相看不见的广播域这是它的价值也正是它带来的麻烦。你按下回车划完 VLAN 的那一刻VLAN 10 的广播帧不会再泛洪到 VLAN 20这是特性不是缺陷。但业务上要求它们能互相访问这就必须把流量抬到第三层去绕一圈。所以华为 ENSP 交换机实现不同 VLAN 间的通信这件事说到底不是怎么配而是你要在哪一层、用哪种设备作为网关来承担跨网段转发。这篇内容我会沿着一条完整的实操链路走先讲清楚三种主流方案单臂路由、三层交换机 VLANIF、路由口直连背后各自的取舍逻辑再落到 ENSP 里从零搭一套可复现的拓扑把二层打通、把三层网关建起来最后把我在实际配置里踩过的坑一个个摊开讲——尤其是那些文档里一笔带过、但真正会让你卡住半小时的细节比如子接口为什么要开arp broadcast enable、Trunk 的 PVID 不匹配为什么会导致配对了也不通、三层交换机为什么不建议用路由器那套思路做网关。适合谁看刚学完 VLAN 划分、正在做跨网段实验的入门同学也适合有点基础、但排错总是靠删了重配的从业者——后面的排查思路那部分我从物理层、二层、三层一路列到了策略层碰到就是不通的时候可以直接照着走。命令基于设备的通用命令体系在 ENSP 里可以直接敲逻辑同样适用于真机。2. 方案选型单臂路由、VLANIF、路由口到底怎么挑2.1 先用一句话说透跨网段转发的本质PC1 在 192.168.10.0/24PC2 在 192.168.20.0/24PC1 发 ping 的时候会先做一件事拿自己的掩码和目标地址做与运算发现目标不在同一网段于是不会发 ARP 去问 PC2 的 MAC而是发 ARP 去问网关的 MAC。拿到网关 MAC 后它把 IP 包封进一个目的 MAC 是网关、源 MAC 是自己的二层帧里送出去。网关收到拆掉二层头发现目的 IP 是 192.168.20.x查路由表知道这个网段挂在另一个接口上于是重新封装一个目的 MAC 为 PC2、源 MAC 为网关另一侧接口的二层帧发出去。记住这条链路二层封装的源和目的在每一跳都会变IP 地址从头到尾不变。理解这一点后面所有不通的现象你都能对应到具体是哪个环节断了——要么 ARP 没问到网关要么网关没路由要么回程包找不到路。很多新手习惯性认为配了 VLAN 就能通其实是漏掉了网关这个角色而三种方案的差别就在于这个网关由谁来做、放在哪台设备上。2.2 三种方案的取舍逻辑与代价对比单臂路由的思路最朴素找一台路由器用一根网线连到交换机的 Trunk 口然后在路由器这一个物理接口上划出若干子接口每个子接口终结一个 VLAN 的标签配一个该网段的地址当网关。优点是路由器本来就干路由的活儿ACL、NAT、策略路由这些功能现成缺点也很硬——所有 VLAN 间的流量都要挤这一根物理链路一个千兆口就是天花板而且路由器一般是软件转发包一多 CPU 就上去了。三层交换机 VLANIF是现在的主流做法交换机内部给每个 VLAN 创建一个虚拟三层接口VLANIF别的厂商叫 SVI配上这个网段的地址当网关。数据进了交换机ASIC 芯片直接查表转发不经过 CPU线速没问题也不存在一根线被挤爆的问题因为跨 VLAN 转发在交换背板内部就完成了。代价是这台交换机必须具备三层能力而且它离路由器还有一些功能差距。路由口直连把三层交换机或路由器的一个物理口用undo portswitch变成三层口直接接一个 VLAN 或一个网段适用于点对点互联、出口对接这类场景用在多个 VLAN 都需要网关的场合就很别扭端口利用率低。对比维度单臂路由子接口三层交换机 VLANIF路由口直连网关位置路由器物理口上的子接口交换机内部虚拟接口物理接口转发性能受单链路与软件转发限制芯片转发近似线速取决于设备是否需要 Trunk需要且要带标签不需要网关就在本机不需要端口消耗1 个物理口承载全部 VLAN0虚拟接口每网段 1 口典型场景小型网络、临时实验、需要 NAT园区网核心/汇聚设备互联、出口配置量中子接口逐个建低VLAN 建好顺手配低选型我的建议很直接只要交换机支持三层就优先上 VLANIF别为了看起来更像路由去刻意绕单臂路由除非你需要在这台设备上做 NAT 或者你有现成的路由器闲着。单臂路由更适合当学习手段——它能让你非常直观地看到 802.1Q 标签是怎么被终结的这个理解对后面做 Trunk 排错很有帮助。2.3 一个容易被忽略的前提三层交换机得允许路由这点吃过亏。有些型号的三层交换机出厂时全局路由功能是关着的VLANIF 配了地址、状态也是 UP但display ip routing-table里只有直连网段跨网段死活不通。排查半天以为是网关配错其实是根本没开转发。配置前先在系统视图敲display current-configuration | include routing看一眼没有ip routing就补上。另外VLANIF 能否 UP取决于这个 VLAN 里是否有处于 UP 状态的物理端口——VLAN 建了但一个端口都没加入、或者加入的端口全 downVLANIF 就是 down 的网关地址配了也不生效。这个现象在 ENSP 里特别常见因为很多同学先建 VLAN、配 VLANIF最后才去接 PC中间那段时间display ip interface brief一看全是 down就开始怀疑人生。3. 在 ENSP 里把实验环境搭起来3.1 拓扑规划与地址分配表我用的是一套最小可验证的三层架构一台三层交换机作为核心承担所有 VLAN 的网关一台二层交换机作为接入只做 VLAN 划分和 Trunk 上联四台 PC 分属两个 VLAN每组两台方便验证同 VLAN 通、跨 VLAN 也要通。拓扑连接关系如下核心交换机的 GE0/0/1 接接入交换机的 GE0/0/24链路配成 Trunk接入交换机的 GE0/0/1、GE0/0/2 划进 VLAN 10 接 PC1、PC2GE0/0/3、GE0/0/4 划进 VLAN 20 接 PC3、PC4。设备接口类型 / VLANIP 地址网关核心交换机VLANIF10三层网关192.168.10.254/24-核心交换机VLANIF20三层网关192.168.20.254/24-核心交换机GE0/0/1Trunk放行 10、20--接入交换机GE0/0/24Trunk放行 10、20--接入交换机GE0/0/1、0/0/2AccessVLAN 10--接入交换机GE0/0/3、0/0/4AccessVLAN 20--PC1-VLAN 10192.168.10.1/24192.168.10.254PC2-VLAN 10192.168.10.2/24192.168.10.254PC3-VLAN 20192.168.20.1/24192.168.20.254PC4-VLAN 20192.168.20.2/24192.168.20.254地址规划这里有个细节值得说网关地址我用的是.254而不是.1。这不是硬性规定纯粹是运维习惯——把.1留给服务器或者将来可能加的 VRRP 虚拟地址网关统一往高位放看配置文件的时候一眼能区分这是设备地址还是终端地址。你在自己项目里定好一套规则并坚持下去比规则本身是什么重要得多。3.2 ENSP 本身的几个坑先避开能省一小时ENSP 是依赖虚拟机跑设备镜像的很多配置没错但就是不通的诡异问题其实出在模拟器层。第一设备启动是有顺序的先把所有设备拖到工作区再统一启动等全部变绿再开始配置。我见过太多次先启动交换机、后启动 PC结果 PC 的虚拟网卡没挂上ping网关永远超时重启 PC 立刻就好。第二PC 配置改完要点应用只填数字不点应用等于没改这个低级错误我至今偶尔还会犯。第三设备多了之后内存吃紧交换机会随机假死表现为命令行能敲但转发不生效这时候把设备关掉重开比继续排查更高效。第四如果先前装过其他虚拟化软件虚拟网卡可能冲突导致 ENSP 里设备起不来或 Cloud 连不通这种情况先把虚拟网卡清理干净再装。提示配置前先给每台设备改个名字sysname Core-SW之类。ENSP 打开多个命令行窗口时标题栏只显示设备型号不看名字极容易在两个窗口之间敲错命令把核心的配置敲到接入上——这个错误排查起来特别费劲因为两边单看都没毛病。3.3 终端侧配置别小看网关这一栏ENSP 里的 PC 是个简化终端双击打开后在基础配置里填 IP、掩码、网关。这一步最大的坑是只填了 IP 和掩码忘了填网关。现象非常好辨认同 VLAN 内互 ping 通跨 VLAN 一律超时而且在交换机上display arp看不到这台 PC 的 ARP 记录——因为它压根没发过问网关的 ARP 请求。还有一个细节PC 的 MAC 地址在 ENSP 里是可以手动改的做 MAC 绑定、端口安全的实验时用得上。默认情况下它是随机生成的所以重启设备后 MAC 会变别拿上次抓包里的 MAC 去对照这次的转发结果会白折腾。4. 二层先打通Access 与 Trunk 的完整配置4.1 接入层VLAN 创建与端口划分接入交换机的活儿很纯粹建 VLAN把端口塞进去。这里推荐用批量创建命令而不是一条条敲省事还不容易漏。Access-SW system-view [Access-SW] sysname Access-SW [Access-SW] vlan batch 10 20 [Access-SW] interface GigabitEthernet 0/0/1 [Access-SW-GigabitEthernet0/0/1] port link-type access [Access-SW-GigabitEthernet0/0/1] port default vlan 10 [Access-SW-GigabitEthernet0/0/1] quitGE0/0/2 同样处理。VLAN 20 的两个口把port default vlan改成 20。这里有个操作顺序问题port link-type access必须在port default vlan之前敲因为默认端口类型是 HybridHybrid 下用的是port hybrid pvid vlan超过默认 VLAN 1 的 PVID 在某些版本上要先切类型才能设。反过来敲会报错报错信息还挺含糊新手容易卡在这儿。port default vlan这个命令同时干了两件事把端口加入该 VLAN 的 untagged 列表以及把端口的 PVID 设成该 VLAN。这就是为什么接 PC 的口必须是 Access——PC 发出来的帧不带标签交换机收到后按 PVID 打上 VLAN 10 的标签PC 自己完全不知道有标签这回事。4.2 Trunk 上联放行列表与 PVID 的双重校验两台交换机之间的互联口必须配 Trunk而且两端都要放行 VLAN 10 和 20。默认情况下 Trunk 只放行 VLAN 1你不写allow-pass跨交换机的同 VLAN 通信都不通更别说跨 VLAN 了。[Access-SW] interface GigabitEthernet 0/0/24 [Access-SW-GigabitEthernet0/0/24] port link-type trunk [Access-SW-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20 [Core-SW] interface GigabitEthernet 0/0/1 [Core-SW-GigabitEthernet0/0/1] port link-type trunk [Core-SW-GigabitEthernet0/0/1] port trunk allow-pass vlan 10 20这里要重点讲PVID也就是 native VLAN这是 Trunk 排错里最容易翻车的地方。Trunk 口对每个帧的处理逻辑是如果帧带的标签等于本口的 PVID出方向就剥掉标签发出去如果带了别的 VLAN 标签就原样带着发。反方向收到无标签帧就打上 PVID 的标签。两端 PVID 不一致会怎样假设 A 端 PVID 是 1B 端 PVID 是 10A 发一个 VLAN 10 的帧时因为 PVID 是 1 所以带着标签发出去B 收到带标签的 VLAN 10 帧正常但如果是 B 往 A 发B 认为 VLAN 10 是 native剥了标签发出去A 收到无标签帧按 PVID 1 打标签直接进了 VLAN 1——于是 VLAN 10 的流量在 A 端全跑错地方了。所以我的习惯是互联 Trunk 的 PVID 保持默认的 1两端一致永远不要为了省标签去改它。真要做 PVID 修改比如对接某些只发无标签帧的设备两端必须同步改改完立刻用display port vlan核对。这条命令会列出每个端口的 PVID 和允许通过的 VLAN 列表是二层排错的第一现场。4.3 二层打通了没有三个验证命令配置完先别急着配三层把二层验证到位否则后面出问题你分不清是二层还是三层。[Access-SW] display vlan [Access-SW] display port vlan [Access-SW] display mac-addressdisplay vlan看每个 VLAN 里有哪些端口重点确认 Trunk 口在 VLAN 10、20 的列表里都出现了且类型标着 tagged。display port vlan看 PVID 和 Trunk 的允许列表。display mac-address是最有说服力的一条让 PC1 ping 一下 PC2同 VLAN 跨交换机如果 MAC 表里能同时学到两台 PC 的 MAC 且都绑在正确的 VLAN 上说明二层转发链路完全正常。学不到就只有两种可能——PC 没发帧网卡没配置好或者帧被丢在了半路Trunk 没放行。注意ENSP 里的 MAC 表有老化时间默认 300 秒。你去查的时候可能刚好老化掉了看起来像没学到。可以先 ping 一次再去查或者干脆在 PC 上持续 ping 着查。5. 三层网关落地VLANIF 配置与转发验证5.1 核心交换机上的 VLAN 与 VLANIF核心交换机要做的第一件事是建 VLAN——注意即使核心上没有任何物理端口属于 VLAN 10你也必须建这个 VLAN因为 VLANIF 接口是依附于 VLAN 存在的VLAN 不存在接口就建不出来。这是很多新手转不过弯的地方以为我这儿没接这个 VLAN 的口干嘛要建结果是逻辑接口而非物理连接的思维没建立起来。Core-SW system-view [Core-SW] sysname Core-SW [Core-SW] vlan batch 10 20 [Core-SW] interface Vlanif 10 [Core-SW-Vlanif10] ip address 192.168.10.254 24 [Core-SW-Vlanif10] quit [Core-SW] interface Vlanif 20 [Core-SW-Vlanif20] ip address 192.168.20.254 24 [Core-SW-Vlanif20] quit配完立刻验证接口状态[Core-SW] display ip interface brief [Core-SW] display ip routing-tabledisplay ip interface brief里 VLANIF10 和 VLANIF20 的状态应该是 UP前提是前面 Trunk 已配好VLAN 里有活动端口。如果显示 DOWN回到第 2.3 节说的两点VLAN 里有没有 UP 的物理口全局路由功能开没开。路由表里应该能看到 192.168.10.0/24 和 192.168.20.0/24 两条 Direct 路由这是网关能转发的前提。5.2 转发过程验证从 ARP 到 ping 的完整链路所有 PC 的网关都指向对应网段的.254然后从 PC1 ping PC3。这一次的转发路径是PC1 发现目标跨网段ARP 请求 192.168.10.254 的 MAC核心交换机 VLANIF10 回复自己的 MACPC1 把包发给核心核心查路由发现 192.168.20.0/24 在 VLANIF20重新封装从 VLANIF20 发出去同时 ARP 请求 192.168.20.1 的 MACPC3 回复回程包对称地走一遍。验证的时候我一般分三步看这样出问题能立刻定位[Core-SW] display arp [Core-SW] display mac-address vlan 10 [Core-SW] ping -a 192.168.10.254 192.168.20.1display arp是判断网关有没有被问到的关键。正常情况下你能看到 VLANIF10 下有 PC1、PC2 的 ARP 条目VLANIF20 下有 PC3、PC4 的而且类型是动态。如果只有一边有说明另一边的终端没在发 ARP八成是网关没配或者配错段了。ping -a带源地址 ping 是设备上最常用的自测手段从 192.168.10.254 去 ping 192.168.20.1能通就说明三层转发和两边的 ARP 都正常问题一定在终端侧。这里插一句容易忽略的VLANIF 的地址不要和终端地址冲突也不要重复规划。ENSP 里复制粘贴配置的时候很容易把 20 段的地址粘到 10 段的 VLANIF 上display ip interface brief会提示地址冲突但如果你没看现象就是跨网段 ping 有时通有时不通——因为 ARP 表里同一个 IP 对应了两个 MAC 在打架。这种时通时不通的问题最难查所以配完一定过一遍地址表。5.3 一个进阶但很实用的配置让终端自动拿地址真实网络里不可能每台 PC 手动配 IP。三层交换机上开 DHCP可以按 VLANIF 分配不同网段的地址接上就能用。用接口地址池的方式最省事[Core-SW] dhcp enable [Core-SW] interface Vlanif 10 [Core-SW-Vlanif10] dhcp select interface [Core-SW-Vlanif10] dhcp server dns-list 114.114.114.114 [Core-SW-Vlanif10] dhcp server excluded-ip-address 192.168.10.250 192.168.10.253 [Core-SW-Vlanif10] quitdhcp select interface的意思是用这个接口的网段和掩码作为地址池网关自动就是接口地址不用额外指定。excluded-ip-address把高位区间排除掉留给交换机自己的管理地址、AP 或者以后要加的 VRRP 虚拟地址这个习惯很值得养成——不留预留段将来想在网段里加设备只能改规划。VLAN 20 照做一遍即可。如果 DHCP 服务器在别的地方不在这个三层交换机上就需要在 VLANIF 上配中继先全局dhcp enable接口下dhcp select relay再dhcp-server-ip 服务器地址。中继的原理是把 PC 的广播 DHCP 请求转成单播发给服务器服务器根据giaddr字段判断该从哪个池子分配——所以服务器上的地址池必须能匹配到网关所在网段这一步配错现象是 PC 一直显示正在获取 IP但拿不到。6. 对照组单臂路由方案怎么配以及那些绕不开的细节6.1 子接口配置与 dot1q 终结想直观感受 802.1Q 标签被终结的过程单臂路由是最好的教材。把核心交换机换成一个路由器路由器 GE0/0/0 接接入交换机的 Trunk 口然后在这个物理口上起两个子接口[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 [Router] interface GigabitEthernet 0/0/0.20 [Router-GigabitEthernet0/0/0.20] dot1q termination vid 20 [Router-GigabitEthernet0/0/0.20] ip address 192.168.20.254 24 [Router-GigabitEthernet0/0/0.20] arp broadcast enabledot1q termination vid 10告诉这个子接口收到带 VLAN 10 标签的帧把标签剥掉交给我发出去的时候自动打上 VLAN 10 的标签。子接口本身没有物理形态所以它的状态跟随父接口父接口 up 它就 up。6.2 那个必须敲的命令arp broadcast enablearp broadcast enable这条命令是我见过最多人漏掉的。子接口默认不处理广播报文而 ARP 请求恰恰是广播目的 MAC 全 F。你不开这个开关路由器收到 PC 的 ARP 请求直接丢了网关永远不回 ARPPC 那边就一直显示解析失败报错通常是请求超时或者无法访问目标主机。这个现象和网关地址配错的表现几乎一样但区分方法很简单在路由器子接口上display arp看不到任何终端条目同时在交换机上抓包能看到 ARP 请求确实发到了 Trunk 口。确认到这一步基本就是这条命令没敲。原理性的解释是子接口作为逻辑接口默认只关心单播广播被当作无关流量处理掉必须显式开启才放行。6.3 两种方案的实测差异与选用建议同样的拓扑、同样的终端配置只换网关设备我做过对比几十个包的时候两者差别看不出来但如果做压力测试ENSP 里可以用终端持续大包 ping 或者在真机上打流单臂路由的 CPU 占用会明显上升延迟抖动也更大瓶颈就在那根上联链路和软件转发上VLANIF 方案基本是平的因为转发在芯片里完成。场景特征推荐方案理由园区网、VLAN 数量多三层交换机 VLANIF芯片转发容量不受单链路限制需要 NAT / 出口上网单臂路由或专用出口设备三层交换机的 NAT 能力有限教学演示、想看清标签处理单臂路由802.1Q 终结过程直观可见临时实验、设备有限单臂路由一台路由器就能撑起多个网段对可靠性有要求VLANIF VRRP网关可以双机冗余说句实在话单臂路由在真实项目里的出场率已经很低了更多是作为过渡方案或者学习手段。但它的配置经验并不会浪费——你理解了子接口怎么终结标签、ARP 为什么需要显式放行回头看 VLANIF 的行为就一目了然VLANIF 天然知道自己属于哪个 VLAN不需要终结这个动作也不需要额外开广播因为它是 VLAN 原生的三层接口。这种对比式的理解比死记命令牢固得多。7. 排查实录从完全不通到通但很慢7.1 分层排查的固定套路配置出问题的时候最忌乱改。我的习惯是按 OSI 从下往上每层用固定命令确认绝不跳步层级检查动作判断标准常见问题物理/接口display interface brief端口 UP、双工速率正常线没接、端口被 shutdown二层 VLANdisplay vlan/display port vlan端口归入正确 VLAN、Trunk 放行Access 误配、Trunk 未放行二层 MACdisplay mac-address终端 MAC 学在正确 VLANPVID 不一致导致跑错 VLAN三层接口display ip interface briefVLANIF UP 且有地址VLAN 内无活动端口、路由未开三层 ARPdisplay arp有终端的动态条目终端没配网关、子接口未开广播三层路由display ip routing-table直连网段存在地址规划重叠、掩码错策略层检查 ACL / 端口隔离无拦截规则ACL 误命中、端口隔离按这个表走一遍95% 的问题能在五分钟内锁定。真正难的是那些每层都正常但就是不通的情况往下看。7.2 高频问题速查表现象最可能的原因快速验证与处理同 VLAN 通跨 VLAN 全超时终端未配网关看 PC 配置页网关栏是否填了跨 VLAN 超时交换机display arp无条目终端根本没发 ARP检查网关地址是否与终端同网段VLANIF 显示 DOWNVLAN 内无 UP 端口 / 未开路由display vlan核对补ip routing单臂路由下发 ARP 一直解析失败子接口未开arp broadcast enable补命令立即生效跨交换机同 VLAN 不通Trunk 未放行该 VLANport trunk allow-pass vlan xx部分 VLAN 通、部分不通Trunk PVID 两端不一致display port vlan对比两端ping 前几个通后全丢MAC 表或 ARP 老化 / 地址冲突display arp看有无重复 IP能 ping 通但传文件很慢单臂路由瓶颈、MTU 不一致换 VLANIF 方案核对 MTU换个终端就不通ACL、端口安全、端口隔离查接口下的策略配置ENSP 里配置全对但完全不转发设备假死 / PC 网卡未挂载关设备重开重新点应用7.3 几个文档里不会写的独家经验关于通但慢遇到跨 VLAN 能 ping 通、但业务卡顿的先看是不是走了单臂路由再看链路是不是协商成了半双工。ENSP 里有时候手工指定的速率双工和实际不符display interface里写着 Half 就会发现。真机上更常见的是网线质量或者光模块问题表现为大量 CRC 错误display interface的 error 计数会涨。关于 ACL 误伤三层交换机上如果配了 ACL 挂在 VLANIF 的入方向很容易把网关自己的 ARP 或者终端之间的流量拦掉。现象是配 ACL 之前好的配完就不通了。排查方法是在 VLANIF 下先undo traffic-filter inbound试一下能通就是 ACL 的问题再逐条加回去定位是哪条规则太宽或者顺序不对。ACL 是从上往下匹配第一条匹配就执行很多人把 permit 写在 deny 后面等于没写。关于掩码的坑ip address 192.168.10.254 24和ip address 192.168.10.254 255.255.255.0在设备上等价但如果你手滑写成192.168.10.254 255.255.0.0这个 VLANIF 就会认为 192.168.0.0/16 都是直连跨网段的包全被当成同网段做 ARP 去了现象极其诡异。配完一定用display ip interface brief扫一眼掩码长度。关于验证顺序我的固定流程是先用ping -a在设备上测排除终端问题再用 PC 测验证端到端。设备上通了 PC 不通问题一定在终端或接入链路设备上就不通问题在网关或路由。这个二分法能把排查范围瞬间砍一半。8. 往上再走一步多 VLAN、跨设备与冗余网关8.1 从两个 VLAN 扩到几十个 VLAN 时的组织方式两个 VLAN 手配还行几十个就得上点方法了。第一VLAN 编号和网段做映射规则比如 VLAN 10 对应 192.168.10.0/24VLAN 20 对应 192.168.20.0/24第三段和 VLAN ID 保持一致看地址就知道属于哪个 VLAN排错时省大量时间。第二Trunk 上用port trunk allow-pass vlan all还是逐个列出实验环境无所谓生产环境我更倾向明确列出因为 all 会把所有 VLAN 的广播都带过去VLAN 多了以后不必要的泛洪很可观。第三接入交换机上的端口配置可以用端口组批量下发省得一个个敲[Access-SW] port-group group-member GigabitEthernet 0/0/1 to GigabitEthernet 0/0/4 [Access-SW-port-group] port link-type access [Access-SW-port-group] port default vlan 10批量操作的风险是一错全错所以下发前先display current-configuration interface确认这些口原来是干净的别把上联口误加进去——上联口被改成 Access 然后塞进 VLAN 10整网就断了这种事故我亲眼见过。8.2 双上行与链路聚合避免单点核心和接入之间如果只连一根线这根线或者对应端口出问题整个接入层就失联了。真机项目里通常做双上行加链路聚合Eth-Trunk把两根物理线捆成一条逻辑链路既有带宽叠加也有冗余。ENSP 里的配置大概是[Core-SW] interface Eth-Trunk 1 [Core-SW-Eth-Trunk1] port link-type trunk [Core-SW-Eth-Trunk1] port trunk allow-pass vlan 10 20 [Core-SW-Eth-Trunk1] mode lacp-static [Core-SW-Eth-Trunk1] quit [Core-SW] interface GigabitEthernet 0/0/1 [Core-SW-GigabitEthernet0/0/1] eth-trunk 1两端都要建 Eth-Trunk、加入成员口模式保持一致静态 LACP 或手工负载分担。这里的关键是成员口的速率、双工、VLAN 配置必须一致不一致的端口不会被选进聚合组display eth-trunk 1能看到每个成员口的状态是 Selected 还是 Unselect。如果只 Selected 了一个先去查两端的速率双工是不是一样。8.3 网关冗余VRRP 让跨 VLAN 通信不怕单机故障单台三层交换机做网关它挂了所有 VLAN 都出不去。VRRP 的思路是两台交换机都配同一网段的地址作为真实地址再共同维护一个虚拟 IP 和虚拟 MAC终端把网关指向虚拟 IP。主设备正常时由它响应 ARP 并转发主设备故障时备设备在几秒内接管。[Core-SW-A] interface Vlanif 10 [Core-SW-A-Vlanif10] vrrp vrid 10 virtual-ip 192.168.10.1 [Core-SW-A-Vlanif10] vrrp vrid 10 priority 120 [Core-SW-A-Vlanif10] vrrp vrid 10 preempt-mode timer delay 20 [Core-SW-B] interface Vlanif 10 [Core-SW-B-Vlanif10] vrrp vrid 10 virtual-ip 192.168.10.1 [Core-SW-B-Vlanif10] vrrp vrid 10 priority 100优先级默认 100大的当主。preempt-mode timer delay 20是延迟抢占防止设备反复重启导致主备来回切换——这个延时在链路不稳定的场景里非常必要。验证用display vrrp能看到 Master/Backup 角色和状态切换记录。设计时把两组 VLAN 的主备角色交叉开VLAN 10 以 A 为主、VLAN 20 以 B 为主这样两台设备都在干活不是一台闲着——这就是常说的负载分担式冗余。把这一套都想明白之后回头看不同 VLAN 间通信这件事它其实是一条从二层隔离到三层转发、从单机配置到冗余设计的完整链条。我自己的体会是配置命令从来不是难点真正的门槛在于你脑子里有没有那张包从 PC1 出发到 PC3 收到中间经历了什么的图。这张图建起来看到任何不通的现象你都能推演出它断在哪一环。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑