资讯动态

华为交换机端口模式Access、Trunk、Hybrid详解与eNSP配置实战

发布时间:2026/9/9 18:25:52 来源:尧图企业网站定制
1. 三种端口模式到底在解决什么问题很多刚接触华为交换机和 eNSP 的初学者最容易卡住的地方不是配 IP也不是配路由而是搞不懂端口模式里的 Access、Trunk、Hybrid 到底有什么区别。网上教程很多但大多数只丢给你一张对比表告诉你“Access 接电脑、Trunk 接交换机、Hybrid 又都能干”看完后你打开 eNSP 还是不知道该选哪个。这篇文章直接用实测思路拆一遍。先解释三种模式处理 VLAN 帧的核心逻辑再给出一套可以在 eNSP 里照着敲的配置流程最后讲清楚验证结果长什么样、常见报错怎么排查。先说结论Access、Trunk、Hybrid 都是交换机端口允许哪些 VLAN 流量通过的不同策略。Access 适合连接终端设备Trunk 适合交换机之间透传多 VLAN 流量Hybrid 是前两者的灵活组合既能接终端也能接交换机还可以控制报文出去时带不带 VLAN 标签。如果你只是做一个小型局域网实验Access Trunk 基本够用。但如果你想让一台交换机同时连接服务器、PC、路由器或者希望在一条线路上混合传输带标签和不带标签的流量Hybrid 会省事很多。文章面向零基础到刚入门的朋友但我建议你至少已经打开过 eNSP并且知道怎么拖一台交换机进拓扑、怎么启动设备。如果完全没打开过也不要紧第 4 节会把环境准备一起说清楚。2. 先理解 VLAN 标签再理解端口模式想彻底分清楚三种模式不能靠死记硬背得先明白交换机在转发数据时到底在报文的什么位置“做了手脚”。2.1 带标签报文与不带标签报文VLAN 的最小单位是报文。一台交换机把一个物理端口划分进某个 VLAN本质上是在这个端口收到的报文上打一个 4 字节的 VLAN Tag里面包含了 VLAN ID。这样报文从交换机上的一个端口进来就知道自己属于哪个广播域。不带 Tag 的报文通常来自 PC、打印机这类终端设备。终端设备不关心 VLAN它只发送普通以太网帧。交换机收到这种报文后会根据端口配置给这个报文打上一个 Tag这个 Tag 的 VLAN ID 就是端口默认的 PVIDPort VLAN ID。带 Tag 的报文通常来自另一台交换机、路由器子接口、或者支持 VLAN 的服务器网卡。这类报文已经在帧头里写好了 VLAN ID交换机可以直接读到它属于哪个 VLAN。2.2 Access 端口只放行一个 VLANAccess 端口的特点是这个端口只能属于一个 VLAN。它收到不带 Tag 的报文会立刻打上 PVID 对应的 VLAN Tag收到带 Tag 的报文时如果 Tag 里的 VLAN ID 等于 PVID就收下来否则丢弃。发送报文时也很有特点Access 端口发出报文前会把 VLAN Tag 去掉以不带标签的普通以太网帧发给对端设备。所以 Access 端口永远对外输出无 Tag 报文对内只允许一个 VLAN 的流量进来。它的典型位置就是连接 PC、打印机、IP 电话这类不感知 VLAN 的终端。2.3 Trunk 端口透明透传多 VLANTrunk 端口的设计目的是在两台交换机之间建立一条链路让多个 VLAN 的流量都能通过。相比 AccessTrunk 端口默认允许所有 VLAN 通过但不在端口上属于某个固定 VLAN。Trunk 端口收到不带 Tag 的报文时会打上 PVID 对应的 Tag收到带 Tag 的报文时直接根据 VLAN ID 转发如果这个 VLAN 在允许列表里就放行不在就丢弃。发送报文时Trunk 端口会先判断报文 VLAN ID 是否等于 PVID。如果等于就剥掉 Tag 再发出去如果不等于就保留 Tag 原样发出去。这样做的好处是交换机之间的链路上能同时承载多个 VLAN 的流量并且 VLAN 信息不会丢失。2.4 Hybrid 端口允许列表 自选是否打标签Hybrid 端口是华为交换机里最灵活的一种模式。它既像 Access 一样可以接终端又像 Trunk 一样可以透传多 VLAN 流量而且比 Trunk 多一个能力你可以指定报文在发送时是带 Tag 出去还是不带 Tag 出去。Hybrid 的核心配置比 Trunk 多一个参数就是每个 VLAN 在出端口时候的 Tag 属性。你可以让 VLAN 10 不带 Tag 发给 PC同时让 VLAN 20 带 Tag 发给另一台交换机。这一条链路上既有终端流量又有交换机间流量互相不干扰。因为配置更灵活所以理解成本也更高。初学者最常犯的错是把 Hybrid 当成 Access 一键配置结果发现 PC 拿不到地址或者两边 VLAN 不通其实只是没有理解 Tag 属性。3. 三种模式的选择标准与常见误区很多人在实际配置时都会纠结到底用 Trunk 还是 Hybrid其实只要抓两条规则答案就清晰了。3.1 按连接对象选模式如果你是新建一个中小型局域网建议这样选连接对象推荐模式原因PC、打印机、无线 AP 的管理口Access终端不感知 VLAN出口自动去 Tag交换机与交换机之间Trunk一条链路透传多个 VLAN配置简单路由器子接口或防火墙Trunk 或 Hybrid子接口需要带 Tag 流量Hybrid 也能实现服务器单网卡多 VLANHybrid可以同时收带 Tag 和不带 Tag 的流量交换机连接另一个部门网络Trunk 或 Hybrid根据对端设备是否支持 Tag 灵活选择需要注意的是这里给的是通用推荐。实际生产环境里很多交换机默认把所有端口都放在 VLAN 1如果你没有规划 VLAN那么接 PC 用 Access 是没问题的但如果你只有一个 VLAN用 Trunk 也能通只是没必要。3.2 常见误区一Access 只能接电脑这个说法不准确。Access 端口也可以连接不支持 VLAN 的网络设备比如傻瓜交换机、家用路由器 LAN 口、网络摄像头。只要对端设备不主动发送带 Tag 的报文Access 都能正常工作。如果对端设备支持 VLAN并且你希望它把流量按 VLAN 分开送上来那 Access 就不合适了这时候要换 Trunk 或 Hybrid。3.3 常见误区二Trunk 端口允许所有 VLAN 就一定对Trunk 默认允许所有 VLAN 通过但实际工作里不允许所有 VLAN 无脑通过。你只希望 VLAN 10 和 VLAN 20 跨交换机互通如果保留默认配置VLAN 1 的广播报文也会透传过去可能造成广播域扩大甚至影响整个二层网络。所以配置 Trunk 时要手动执行port trunk allow-pass vlan来收紧允许列表只放行需要的 VLAN。3.4 常见误区三Hybrid 一定比 Trunk 高级Hybrid 灵活不代表更高级。反而因为灵活性高配置错误率也高。如果你的场景只是两台交换机之间透传多个 VLAN用 Trunk 更直观出问题时也更好排查。Hybrid 更适合那些在一条链路上混合接入终端和交换机、或者需要精细控制 Tag 属性的场景。4. eNSP 环境准备与基础拓扑搭建讲完原理进入实操。下面先准备环境。4.1 需要准备的工具与版本eNSP 是华为官方出的免费网络模拟器可以模拟交换机、路由器、防火墙和终端设备。建议从华为官网下载并安装安装时注意以下两点。第一确认电脑是否支持虚拟化。eNSP 里的路由器设备依赖 VirtualBox如果你的电脑没有开启 CPU 虚拟化AR 路由器会启动失败甚至整个拓扑里的设备都启动不了。可以在 BIOS 里把 Intel VT-x 或 AMD-V 打开。第二安装 eNSP 之前最好先安装好 VirtualBox 和 Wireshark 这两个配套工具。eNSP 的抓包功能依赖 Wireshark部分底层模拟依赖 VirtualBox。不装的话设备能启动但抓包和部分实验做不了。注意不同版本的 eNSP 对 VirtualBox 版本兼容性不一样安装时以 eNSP 提示的版本要求为准。不要只下载一个“最新版”的 VirtualBox否则可能因为版本太高导致 eNSP 无法识别设备。4.2 建议的拓扑结构这次实操推荐用一台三层交换机加两台 PC 来做实验。如果你手里只有两台二层交换机也没关系照样能跑通只是部分命令需要在两台设备上分别执行。本次拓扑建议如下SW1S5700 交换机PC1连接 SW1 的 Ethernet0/0/1 口属于 VLAN 10PC2连接 SW1 的 Ethernet0/0/2 口属于 VLAN 20PC3连接 SW1 的 Ethernet0/0/3 口属于 VLAN 10但通过 Hybrid 实现与 PC1 互通如果你有三台交换机可以把 SW2 加进来用 Trunk 连接 SW1 和 SW2然后 SW2 上接两台 PC验证跨交换机 VLAN 通信。这个扩展实验放在第 6 节。4.3 启动设备与初始化配置在 eNSP 里拖入设备和连接线缆后先别急着配端口。把所有设备都启动起来等接口状态全部变为 UP 再操作。启动过程中如果某台设备一直显示#或启动失败优先检查的是 eNSP 与 VirtualBox 的版本兼容性或者关闭杀毒软件后重启 eNSP。设备就绪后进入系统视图的流程是统一的Huawei system-view [Huawei] sysname SW1 [SW1]先给交换机起一个名字后续命令提示符会变成[SW1]这样在多设备环境里不容易配错设备。5. Access 端口实操让同 VLAN 的 PC 互通先做最简单的部分让同一台交换机上的同 VLAN PC 互通。5.1 规划 VLAN 与端口假设我们把交换机端口划分成这样的规划VLAN 10PC1VLAN 20PC2PC 的 IP 地址规划如下设备所属 VLANIP 地址网关PC110192.168.10.1/24192.168.10.254PC220192.168.20.1/24192.168.20.254只要 PC1 和 PC2 在不同 VLAN它们默认就不能互通除非配置 VLANIF 或三层路由。这个实验的主要目的是先验证 Access 端口下 VLAN 划分是否生效。5.2 在交换机上创建 VLAN 并配置 Access 端口进入交换机系统视图先创建 VLAN[SW1] vlan batch 10 20这条命令会同时创建 VLAN 10 和 VLAN 20。如果只创建一个 VLAN可以直接用vlan 10。接下来进入 G0/0/1 接口配置 Access 类型并加入 VLAN 10[SW1] interface GigabitEthernet0/0/1 [SW1-GigabitEthernet0/0/1] port link-type access [SW1-GigabitEthernet0/0/1] port default vlan 10 [SW1-GigabitEthernet0/0/1] quit同样配置 G0/0/2 加入 VLAN 20[SW1] interface GigabitEthernet0/0/2 [SW1-GigabitEthernet0/0/2] port link-type access [SW1-GigabitEthernet0/0/2] port default vlan 20 [SW1-GigabitEthernet0/0/2] quit这里有一个很关键的点port default vlan在 Access 模式下就是把这个端口的 PVID 改为指定 VLAN。端口收到的无 Tag 报文会被打上这个 VLAN 的 Tag转发时只会在这个 VLAN 内部查表转发。5.3 验证 Access 配置效果配置完成后先看端口和 VLAN 的对应关系[SW1] display vlan这条命令会显示 VLAN 10 和 VLAN 20 下包含哪些端口。确认 G0/0/1 在 VLAN 10 下、G0/0/2 在 VLAN 20 下基本就没问题。再用 ping 验证一下。把 PC1 的 IP 设为 192.168.10.1/24PC2 的 IP 设为 192.168.20.1/24然后用 PC1 ping PC2会失败再用另一台同样属于 VLAN 10 的 PC3 ping PC1在正确配置下能通。如果你没有第三台 PC可以这样理解同一台交换机上Access 端口划分到不同 VLAN 后这些端口之间是二层隔离的广播报文不会跨 VLAN 传播。这是 VLAN 最基本的作用。6. Trunk 端口实操让不同交换机上的同 VLAN 互通Access 单机配置很简单真正让很多新手蒙圈的是两台交换机之间的 Trunk 链路。下面把完整的跨交换机同 VLAN 互通实验做一遍。6.1 扩展现有拓扑在刚才的拓扑里加一台交换机 SW2用一条网线连接 SW1 的 GigabitEthernet0/0/24 和 SW2 的 GigabitEthernet0/0/24。再在 SW2 上接两台 PCPC4 接 SW2 的 G0/0/1规划进 VLAN 10PC5 接 SW2 的 G0/0/2规划进 VLAN 20最终目标让 SW1 的 PC1 能 ping 通 SW2 的 PC4同时让 PC2 能 ping 通 PC5。两层交换机的跨 VLAN 通信不在本次实现范围内。6.2 配置 SW1 侧 TrunkSW1 上的 G0/0/24 作为 Trunk 口与 SW2 对接。先进入接口再改链路类型[SW1] interface GigabitEthernet0/0/24 [SW1-GigabitEthernet0/0/24] port link-type trunk [SW1-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20这里我特意写了allow-pass vlan 10 20不是默认的 all。如果你想保留默认可以先用port trunk allow-pass vlan all跑通实验但这在真实网络里不推荐因为它会把所有 VLAN 的流量都放行到这条链路上。6.3 配置 SW2 侧 TrunkSW2 上同样进入 G0/0/24 配置 Trunk并允许 VLAN 10 和 20 通过[SW2] interface GigabitEthernet0/0/24 [SW2-GigabitEthernet0/0/24] port link-type trunk [SW2-GigabitEthernet0/0/24] port trunk allow-pass vlan 10 20SW2 上的 G0/0/1 配置 Access 属于 VLAN 10G0/0/2 配置 Access 属于 VLAN 20。这部分命令和上面 Access 实验一样。6.4 验证 Trunk 链路是否正常在 SW1 上看 Trunk 的接口状态[SW1] display interface GigabitEthernet0/0/24重点关注链路状态是否 UP以及标识里有没有 Trunk 模式的相关信息。更好的验证方式是[SW1] display port vlan这个命令会显示所有端口的工作模式和通过端口可以转发的 VLAN。检查 G0/0/24 这行应该能看到 Trunk 类型以及允许列表里包含10, 20。再从 PC 侧验证。给 PC1 配 192.168.10.1/24给 PC4 配 192.168.10.2/24两个 VLAN 相同跨交换机 ping 应该通。如果通不了不要急着改链路类型先按第 8 节的排查思路走一遍。6.5 抓包观察 Tag 帧如果安装了 Wireshark可以在 SW1 和 SW2 之间的链路上抓包观察 PC1 ping PC4 时ICMP 报文经过 Trunk 链路是带 VLAN Tag 的。抓包时的现象是这样的PC1 发出的普通报文到达 SW1 的 Access 口被打上 VLAN 10 的 Tag从 G0/0/24 出去时因为 VLAN ID 10 不等于 Trunk 口的 PVID默认是 1所以 Tag 被保留SW2 从 G0/0/24 收到这个带 Tag 的报文后根据 VLAN 10 查表转发到对应 Access 口在出端口去 Tag 后才发给 PC4。能看到这个过程你对 Trunk 的理解会扎实很多。7. Hybrid 端口实操一个端口同时处理带 Tag 和不带 Tag 流量Hybrid 模式是最容易让新手绕晕的部分。下面用一个能说明白的场景来演示。7.1 场景需求假设你有一台服务器它有一个网卡需要同时访问两个 VLANVLAN 10办公网段服务器对外提供服务报文不带 TagVLAN 20管理网段服务器远程管理走这个网段报文带 Tag如果只用 Access一个端口只能属于一个 VLAN没法同时收发两个 VLAN 的流量。如果只用 Trunk报文都是带 Tag 出去的但服务器网卡如果不支持 VLAN Tag就没法处理。解决办法把交换机连接服务器的端口配置成 Hybrid 模式让 VLAN 10 不带 Tag 发送VLAN 20 带 Tag 发送。7.2 配置 Hybrid 端口假设服务器连接 SW1 的 G0/0/3配置如下[SW1] interface GigabitEthernet0/0/3 [SW1-GigabitEthernet0/0/3] port link-type hybrid [SW1-GigabitEthernet0/0/3] port hybrid pvid vlan 10 [SW1-GigabitEthernet0/0/3] port hybrid untagged vlan 10 [SW1-GigabitEthernet0/0/3] port hybrid tagged vlan 20 [SW1-GigabitEthernet0/0/3] quit解释一下每一条命令的含义port link-type hybrid设置端口模式为 Hybrid。port hybrid pvid vlan 10设置端口的 PVID 为 VLAN 10。端口收到不带 Tag 的报文时会打上 VLAN 10 的 Tag。port hybrid untagged vlan 10当 VLAN 10 的报文从这个端口发出时去掉 Tag。port hybrid tagged vlan 20当 VLAN 20 的报文从这个端口发出时保留 Tag。这样服务器的网卡就能接到两个 VLAN 的流量了。发给办公网段的报文不带 Tag发给管理网段的报文带 Tag。7.3 验证 Hybrid 端口效果配置完成后可以查看该端口的详细状态[SW1] display port vlan在输出里找到 G0/0/3你会看到它同时有 tagged 和 untagged 的 VLAN 列表。这说明 Hybrid 端口已经生效。如果你想进一步验证可以把 PC3 接到 G0/0/3并给 PC3 配一个 192.168.10.1/24 的地址。如果 PC1 也是 192.168.10.0/24 网段那么 PC3 应该能 ping 通 PC1。因为 VLAN 10 在 G0/0/3 上是 untagged 出去PC3 收到的报文没有 Tag完全正常。此时你再看 SW1 和 SW2 之间的 Trunk 链路是否允许 VLAN 10 透传如果允许PC3 甚至可以跨交换机 ping 通 SW2 上的 PC4。注意Hybrid 的 PVID 不一定要等于 untagged VLAN。PVID 只决定“接收无 Tag 报文后打哪个 VLAN 的 Tag”而 untagged VLAN 列表决定“哪些 VLAN 的报文在送出端口时去掉 Tag”。这两个概念经常被搞混是配置出错的主要原因。7.4 什么时候优先用 Hybrid如果你在真实项目里需要同时满足以下条件优先考虑 Hybrid一条链路要同时承载多个 VLAN其中有些 VLAN 需要剥掉 Tag 发给终端另一些 VLAN 需要保留 Tag 发给上层设备希望减少端口数量不单独为每个 VLAN 拉线例如一个无线 AP 上联到交换机AP 的管理 VLAN 可以 untagged 接入业务 SSID 对应的 VLAN 需要 tagged 上行到核心交换机这时候 Hybrid 一个口就解决了。8. 配置完成后如何验证与常见问题排查实操最容易出问题的地方往往不是配置命令本身而是验证方式不对或者根本没想清楚该看哪里。8.1 验证链路是否正常的顺序不管你是用 Access 还是 Trunk我都建议按这个顺序查先看物理链路状态接口是否 UP。再查端口模式是不是 sa/trunk/hybrid 里的某一种。再查端口允许 VLAN 列表Access 看 PVIDTrunk 和 Hybrid 看 allow pass 或 tagged/untagged 列表。再看 VLAN 里是否包含对应端口。最后才用 ping 验证端到端连通性。很多新手一上来就 pingping 不通就开始怀疑设备坏了其实后面四步都没查。8.2 使用 display 命令快速定位最常用的三个命令[SW1] display vlan [SW1] display port vlan [SW1] display interface GigabitEthernet0/0/24第一个命令看 VLAN 下有哪些端口第二个命令看端口的工作模式和允许列表第三个命令看接口状态、速率、双工和错误计数。8.3 典型故障现象与排查思路我把几个高频问题和排查思路列成表格方便你对照。现象可能原因排查方向同交换机同 VLAN PC 不通PC IP 不在同一网段或端口 VLAN 配置错误检查 PC IP检查display port vlan跨交换机同 VLAN PC 不通Trunk 链路没有放行该 VLAN或 PVID 不一致检查两台交换机上 Trunk 的 allow-pass vlan接入模式是 Trunk但 PC 能获得 IP对端路由器没有配置子接口或 DHCP 服务器所在 VLAN 没放行检查上层设备是否允许带 Tag 报文进入Hybrid 端口下 PC 无法访问服务器untagged VLAN 列表没包含对应 VLAN检查port hybrid untagged vlan是否包含目标 VLAN接口 UP 但报文转发异常链路两端模式不匹配一边 Trunk 一边 Access确认两端端口模式一致8.4 一个小坑PVID 不一致导致 Trunk 不通两台交换机 Trunk 对接时如果其中一端的 PVID 改成了 VLAN 10而另一端还是默认 VLAN 1那么从对端收到的不带 Tag 报文会在本端被打上 VLAN 1 的 Tag而不是 VLAN 10 的 Tag导致报文进入了错误的 VLAN。实际排查时如果同 VLAN PC 跨交换机 ping 不通先看两边的 Trunk 口 PVID 是否一致。默认情况下两边都是 VLAN 1但如果有人手工改过问题就来了。恢复方法[SW1-GigabitEthernet0/0/24] undo port trunk pvid vlan这个命令会把 Trunk 口的 PVID 恢复成默认值 1。如果真实网络里确实需要 Trunk 走无 Tag 报文进入某个特定 VLAN才建议修改 PVID。9. 三种模式的最终对比与配置模板到这里Access、Trunk、Hybrid 的核心区别和实操都过了一遍。最后放一张对比表和几套可以直接套用的配置模板方便你以后做实验。9.1 三种模式对比表项目AccessTrunkHybrid典型连接对象PC、打印机交换机、路由器服务器、AP、交换机允许 VLAN 数量1 个多个多个收到无 Tag 报文打 PVID 的 Tag打 PVID 的 Tag打 PVID 的 Tag收到带 Tag 报文等于 PVID 才收否则丢弃在允许列表中就收在允许列表中就收发送无 Tag 报文的 VLANPVID 对应 VLAN仅 PVID 对应 VLANuntagged 列表对应 VLAN发送带 Tag 报文的 VLAN不支持除 PVID 外的允许 VLANtagged 列表对应 VLAN配置复杂度低中高推荐程度终端接入首选交换机间链路首选需要混合场景时使用9.2 Access 模式配置模板interface GigabitEthernet0/0/1 port link-type access port default vlan 109.3 Trunk 模式配置模板interface GigabitEthernet0/0/24 port link-type trunk port trunk pvid vlan 1 port trunk allow-pass vlan 10 209.4 Hybrid 模式配置模板interface GigabitEthernet0/0/3 port link-type hybrid port hybrid pvid vlan 10 port hybrid untagged vlan 10 port hybrid tagged vlan 209.5 一个可复用的判断清单后续做实验或排障时可以按这个清单快速跑一遍对端是什么设备是否支持 VLAN Tag这条链路需要允许几个 VLAN 通过报文从本端出去时需要带 Tag 还是不带 Tag两端端口模式是否一致两端 PVID 是否一致允许列表是否真的包含了目标 VLAN验证时是看display port vlan还是直接 ping把这几个问题回答清楚80% 的端口模式问题都能解决。我个人更建议把单台交换机上的 Access 实验先做稳再扩展 Trunk最后再碰 Hybrid。不要一上来就配一个多设备跨交换机复杂拓扑否则报错时你连该看哪台交换机都分不清。真正的项目里很多问题不是你不会配 Trunk而是你根本没确认对端设备是不是也按同样的标准在处理 VLAN Tag。

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

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

免费获取报价