尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

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

华为交换机端口模式详解:Access、Trunk与Hybrid配置实战 交换机端口为什么要分 Access、Trunk 和 Hybrid因为一台交换机要让不同电脑分属不同 VLAN又要让多个 VLAN 共用一条线路上行还必须在帧进入和离开接口时决定是否打标签。华为设备把这种能力抽象成三种链路类型。很多新手只看命令不看原理导致配置一模一样却在真实网络里不通。这篇文章会用 eNSP 搭建最小拓扑从原理到命令把三种模式逐一带到重点解释 PVID、tag/untag 和 native VLAN 的作用并给出排查思路。VLAN 是网络工程里几乎绕不开的概念而 Access、Trunk、Hybrid 则是华为交换机端口链路的三种工作模式。无论你是准备考华为认证还是刚接触公司网络设备理解这三种模式都能帮助你看懂配置、少踩网络不通的坑。下面先解决最基础的概念问题再进入 eNSP 实操。1. 先想清楚 VLAN、PVID、标签帧再来学端口模式1.1 VLAN 到底隔离了什么VLAN 的全称是 Virtual Local Area Network中文叫虚拟局域网。它是一组逻辑上的二层广播域。交换机收到广播帧后只向同一 VLAN 内的接口转发而不是像没有 VLAN 时那样向所有接口转发。这样可以把一个大网络拆成多个小广播域也能控制不同业务之间的访问关系。实际项目中经常用 VLAN 10 放办公网、VLAN 20 放监控网、VLAN 30 放服务器区。同一个交换机上PC 属于哪个 VLAN由接口配置决定。而接口配置的核心就是端口链路类型和端口默认 VLAN。1.2 PVID端口在收到无标签帧时打上的“默认编号”当一个不带 VLAN 标签的以太网帧进入交换机时交换机不知道它属于哪个 VLAN因此需要有一个默认 VLAN 标识这个标识就是 PVIDPort-based VLAN ID。华为交换机默认 PVID 为 VLAN 1。PVID 只影响“收进来的无标签帧”不影响发送方向。帧进入接口后会被打上 PVID 对应的 VLAN 标签然后交换机根据这个 VLAN 查 MAC 地址表决定往哪些接口转。发送时是否携带标签由接口链路类型和出方向的 untagged/tagged 配置决定。1.3 标签帧Trunk 链路能承载多个 VLAN 的原因IEEE 802.1Q 标准在以太网帧头中增加了 VLAN Tag通常占用 4 字节其中包含 12 位的 VLAN ID。带标签的帧可以在一条链路上区分不同 VLAN这正是 Trunk 和 Hybrid 能放行多个 VLAN 的原因。Access 端口通常在接入终端时使用终端网卡一般不处理 VLAN Tag所以 Access 端口发往终端的帧必须去掉标签。Trunk 端口在交换机之间互联帧可以带标签传输。Hybrid 端口则更灵活同一个接口可以指定一部分 VLAN 带标签发送另一部分 VLAN 去掉标签发送。注意PVID 是“收无标签帧时打上的 VLAN”不是“这个接口只能属于这个 VLAN”。理解这一点后面看 Access、Trunk、Hybrid 的规则才不会混乱。2. Access、Trunk、Hybrid 三种模式的转发逻辑2.1 Access 端口一个端口只属于一个 VLANAccess 端口用于连接 PC、打印机、摄像头这类不识别 VLAN Tag 的终端设备。配置时通过port default vlan指定一个 VLAN这个 VLAN 就是该接口的 PVID。Access 端口的收发规则可以总结为入方向收到无标签帧打上 PVID 标签进入交换机转发。入方向收到带标签帧如果标签 VLAN 等于 PVID正常接收如果不等于通常丢弃。出方向无论帧属于哪个 VLAN发出前都会去掉标签。所以 Access 口天然是“单 VLAN 接入”。终端不需要感知 VLAN交换机自动给它打标、去标。2.2 Trunk 端口一条链路承载多个 VLANTrunk 端口用于交换机与交换机、交换机与路由器子接口之间的链路。它通过port trunk allow-pass vlan指定允许通过的 VLAN通过port trunk pvid vlan指定 native VLAN。Trunk 端口的收发规则入方向无标签帧打上 PVID若 PVID 在 allow-pass 列表中则接收。入方向带标签帧如果 VLAN 在 allow-pass 列表中接收否则丢弃。出方向VLAN ID 等于 PVID 的帧去掉标签后发送其他 VLAN 的帧保留标签发送。这就是 Trunk 与 Access 的核心差异Access 发送时全部去标签Trunk 只对 native VLAN默认 PVID去标签。2.3 Hybrid 端口允许一个端口同时使用 tagged 和 untaggedHybrid 是华为特有的端口模式。它用port hybrid tagged vlan和port hybrid untagged vlan分别指定哪些 VLAN 在发送时保留标签、哪些 VLAN 在发送时去掉标签。Hybrid 的入方向规则与 Trunk 类似无标签帧打 PVID带标签帧如果被允许则接收。出方向规则更细在 untagged 列表中的 VLAN发送时去掉标签。在 tagged 列表中的 VLAN发送时保留标签。其他 VLAN 不允许发出。也就是说Hybrid 可以模拟 Access也可以模拟 Trunk还能实现“多个 VLAN 去标签输出”的效果。但要注意去标签输出不等于终端能同时属于这些 VLAN因为无标签帧进入接口时仍然按 PVID 分类。2.4 三种模式对比下表从入方向、出方向、适用场景和典型命令做对比项目AccessTrunkHybrid入方向无标签帧打 PVID打 PVID打 PVID入方向带标签帧仅接受等于 PVID 的 VLAN接受 allow-pass 列表中的 VLAN接受 tagged/untagged 列表中的 VLAN出方向全部去标签仅 PVID 去标签其余保留untagged 列表去标签tagged 列表保留设置 PVID 的命令port default vlanport trunk pvid vlanport hybrid pvid vlan接入终端推荐不推荐特定场景可用交换机互联少用推荐灵活场景可用是否支持多个 untagged VLAN不支持不支持native 只能一个支持多个注意Trunk 只能有一个 native VLAN也就是只能有一个 VLAN 在发送时去标签。Hybrid 却可以有多个 VLAN 在 untagged 列表中这是两者最明显的区别。3. eNSP 环境准备与最小实验拓扑3.1 eNSP 适合什么人eNSP 是华为官方推出的网络仿真工具可以在个人电脑上模拟路由器、交换机、无线控制器、PC 等设备适合学习华为 VRP 命令和搭建入门网络实验。它的特点是所见即所得拖出设备、连线、启动设备后就能在命令行窗口里配命令非常接近真实设备操作。要注意 eNSP 是学习工具不能完全等同于真实硬件。它主要验证配置思路部分高级特性和性能表现与真实设备存在差异。3.2 安装前的环境检查清单eNSP 在新安装或重装时最容易出问题安装前建议按下面清单检查检查项建议操作系统使用 Windows 10 或 Windows 11 学习环境Windows Server 不是首选软件包从华为官方网站下载对应版本的 eNSP并确认配套的 VirtualBox、Wireshark 等组件版本CPU 虚拟化在 BIOS 中开启 VT-x/AMD-V否则部分路由器设备可能无法启动杀毒软件安装和运行 eNSP 时暂时关闭实时监控或把 eNSP 安装目录加入白名单本地管理员权限安装和启动建议使用管理员权限减少文件写入和驱动加载失败网络环境首次安装可能需要在线下载或检查许可保持可访问华为官网安装完成后先不要急着做实验先新建工程拖入一台 AR 路由器启动一次。如果设备能正常进入命令行说明基础环境可用。3.3 搭建最小拓扑本文实验使用两台交换机、四台 PC。先在 eNSP 中新建工程然后从设备列表中拖出两台交换机S5700 或 S3700 均可。拖出四台 PC。使用网线连接设备。连接关系如下设备接口对端对端接口PC1Ethernet0/0/1LSW1GE0/0/1PC2Ethernet0/0/1LSW1GE0/0/2PC3Ethernet0/0/1LSW2GE0/0/1PC4Ethernet0/0/1LSW2GE0/0/2LSW1GE0/0/24LSW2GE0/0/24IP 和 VLAN 规划如下VLAN 10PC1 和 PC3网段 192.168.10.0/24。VLAN 20PC2 和 PC4网段 192.168.20.0/24。PC1192.168.10.1PC3192.168.10.2。PC2192.168.20.1PC4192.168.20.2。连线之后把所有设备启动。启动可能需要几十秒等拓扑中的设备图标不再闪烁或显示为绿色后再开始配置。3.4 启动设备失败的常见现象连接完设备并启动时新手最常遇到两类问题。第一类是 AR1 启动失败 40。这个现象在 eNSP 中很常见通常与模拟组件启动异常有关。可以先尝试删除 AR1 重新拖入再启动一次如果仍然失败检查 VirtualBox 是否被安全软件拦截或重置 eNSP 的注册目录。第二类是进程异常退出例如提示类似内存访问冲突的错误。这类问题多与设备模拟组件的驱动、虚拟化支持或本机旧版本残留有关。可以尝试关闭不必要的后台程序以管理员身份运行 eNSP清理旧组件后重新安装。排错时不要只盯着 eNSP 主界面还要打开 Windows 任务管理器观察 VirtualBox 进程是否存在。路由器和交换机设备的启动依赖这些后台进程正常拉起。4. Access 模式实操单交换机下的 VLAN 隔离4.1 配置前先确认端口默认状态华为二层交换机接口在默认情况下通常是自协商的 Hybrid 模式PVID 为 VLAN 1。所以不要以为“接口不配就是 Access”动手之前最好用 display 命令看一次。双击 LSW1进入系统视图system-view display port vlan该命令会显示接口的链路类型、PVID 和允许通过的 VLAN。在未配置时接口链路类型通常是 HybridPVID 是 1。4.2 创建 VLAN 并配置 Access 端口在 LSW1 上创建 VLAN 10 和 VLAN 20然后把 GE0/0/1 划入 VLAN 10GE0/0/2 划入 VLAN 20system-view vlan batch 10 20 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 interface GigabitEthernet0/0/2 port link-type access port default vlan 20 quit display port vlan这里vlan batch 10 20表示一次性创建两个 VLAN。port link-type access把接口改为 Access 模式。port default vlan 10把该接口的 PVID 设置为 10同时该接口只能属于 VLAN 10。配完后display port vlan可以看到 GE0/0/1 的类型为 accessPVID 为 10GE0/0/2 的类型为 accessPVID 为 20。4.3 用 ping 验证同 VLAN 通、跨 VLAN 不通为了验证 Access 模式在 LSW1 上再拖一台临时 PC5接到 GE0/0/3并配置为 Access VLAN 10interface GigabitEthernet0/0/3 port link-type access port default vlan 10PC5 使用 192.168.10.3/24。然后从 PC1 ping PC5ping 192.168.10.3预期结果是通说明同 VLAN 转发正常。如果 PC1 ping PC5 不通先检查两台 PC 的 IP 是否在同一网段再看display vlan 10下是否有 GE0/0/1 和 GE0/0/3。再在 PC1 上 ping PC2 的地址 192.168.20.1。因为两者属于不同 VLAN且没有三层路由预期是不通。这就是交换机隔离广播域的直接体现。4.4 Access 配置中常见的三个错误忘配port link-type access接口还是默认的 Hybrid。此时port default vlan仍然会设置 PVID但接口的收发规则可能不按 Access 预期工作。配置顺序不清晰。建议先改链路类型再设置默认 VLAN顺序颠倒容易让你在排查时产生误解。创建了 VLAN 但没有把接口加入 VLAN。创建 VLAN 只是建立了 VLAN 表项接口必须显式划分后才能转发对应 VLAN 的流量。5. Trunk 模式实操跨交换机打通多个 VLAN5.1 为什么交换机之间会用 Trunk还是看上面拓扑。PC1 在 LSW1 的 VLAN 10PC3 在 LSW2 的 VLAN 10它们要通信LSW1 和 LSW2 之间这条链路必须能把 VLAN 10 的帧送到对端。如果互联口是 Access只能放行一个 VLAN而且发出去的帧不带标签对端无法区分是哪个 VLAN。Trunk 解决的就是“一条物理链路承载多个 VLAN”的问题。它通过 802.1Q 标签区分不同 VLAN所以两台交换机之间只需要一根线就能同时传 VLAN 10 和 VLAN 20。5.2 配置互联端口为 Trunk在 LSW1 和 LSW2 上分别配置互联口LSW1system-view interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20LSW2system-view interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20这里没有显式设置 PVID所以两端 PVID 都是默认的 VLAN 1。port trunk allow-pass vlan 10 20表示允许 VLAN 10 和 VLAN 20 的帧通过这条 Trunk。配置后可以用display port vlan查看。GE0/0/24 的链路类型是 trunkPVID 是 1允许通过的 VLAN 里包含 10 和 20。如果要改变 native VLAN例如想让 VLAN 10 的帧在 Trunk 链路上不带标签发送可以配置port trunk pvid vlan 10设置后PVID 变为 10从该接口发出的 VLAN 10 帧会被去掉标签VLAN 20 的帧仍然带标签。这个配置必须和对端接口保持一致。5.3 验证跨交换机同 VLAN 互通在 PC1 上执行ping 192.168.10.2这是 PC3 的地址预期结果是通。在 PC2 上执行ping 192.168.20.2这是 PC4 的地址预期也通。在 PC1 上执行ping 192.168.20.1这是 PC2 的地址两个 VLAN 之间没有三层路由预期不通。如果通了说明配置有误很多情况下是 Trunk 放行了额外的 VLAN或者 PC 的 IP 被配置成了同一网段。5.4 Trunk 的 native VLAN 不一致会导致什么现象Trunk 链路发送时PVID 对应的 VLAN 帧不带标签。如果两端 PVID 不一致例如 LSW1 的互联口 PVID 是 10LSW2 的互联口 PVID 还是 1会出现两边对“无标签帧属于哪个 VLAN”的判断不一致。现象可能表现为VLAN 10 的流量时通时不通或产生广播环路甚至影响整个交换机通信。原因是一条 Trunk 链路上出现了两个不同的 native VLAN 解释无标签帧在两端被划分到不同 VLAN交换机无法形成一致的二层转发视图。排查方法很简单在两台交换机的互联口分别执行display port vlan对比 PVID 是否一致。如果不一致用port trunk pvid vlan统一。实际项目中除非有特殊需求否则互联 Trunk 的 PVID 建议保持一致并尽量避免使用 VLAN 1 作为业务 VLAN。6. Hybrid 模式实操理解 tagged 和 untagged 的灵活性6.1 Hybrid 的基本命令Hybrid 端口在华为交换机上很常见甚至很多交换机默认就是 Hybrid。它使用两组列表控制发送方向port hybrid tagged vlan指定的 VLAN 在发送时保留 802.1Q 标签。port hybrid untagged vlan指定的 VLAN 在发送时去掉标签。配置示例interface GigabitEthernet0/0/3 port link-type hybrid port hybrid pvid vlan 10 port hybrid tagged vlan 20 port hybrid untagged vlan 10这段配置的含义是接口收到无标签帧时打 VLAN 10 的标签发送 VLAN 10 的帧时去掉标签发送 VLAN 20 的帧时保留标签。从效果上看这个 Hybrid 接口既能像 Access 一样让 VLAN 10 终端无感接入又能像 Trunk 一样把 VLAN 20 的帧带标签送走。6.2 用 display port vlan 验证 Hybrid 生效在 LSW1 上把 GE0/0/3 按下述配置后执行display port vlan输出中可以看到 GE0/0/3 的链路类型是 hybridPVID 是 10VLAN 10 在 untagged 列表中VLAN 20 在 tagged 列表中。如果需要同时让多个 VLAN 都去标签发送可以这样配置interface GigabitEthernet0/0/3 port link-type hybrid port hybrid untagged vlan 10 20此时display port vlan会显示 untagged 列的 VLAN 同时包含 10 和 20。这个配置在 Trunk 上做不到因为 Trunk 的 native VLAN 只有一个。不过要注意多个 untagged VLAN 并不等于一台普通 PC 可以同时稳定访问多个 VLAN。因为无标签帧进入接口时只按 PVID 打一个标签。真正要利用多 untagged 场景通常需要配合路由器、防火墙等设备并且要非常清楚 PVID 和返回流量的标记规则。学习阶段先用 display 命令理解配置结果即可不要在生产网络里随便套用。6.3 Hybrid 的实际使用场景Hybrid 比较常见的价值在于兼容老设备和特殊组网交换机下行口连接只支持无标签帧的老式服务器但又需要接收多个 VLAN 的组播或广播流且服务器网卡本身能区分不同业务此时可用 untagged 列表放多个 VLAN。上行口同时承担“部分 VLAN 去标签给上级设备”“部分 VLAN 带标签给子接口”的混合流量。需要模拟 Trunk但希望多个 native VLAN 的情况Hybrid 是可选方案。如果只是接入普通 PC、打印机推荐直接用 Access如果是交换机之间互联推荐先用 Trunk。Hybrid 适合你已经理解 tag/untag 规则后再使用否则很容易配置出链路问题。6.4 Hybrid、Access、Trunk 的本质关系可以把 Access 和 Trunk 看成 Hybrid 的两个特例如果 Hybrid 端口的 untagged 列表只包含 PVID 一个 VLAN且 tagged 列表为空行为接近 Access。如果 Hybrid 端口的 untagged 列表只包含 PVIDtagged 列表是其他业务 VLAN行为接近 Trunk。但反过来Access 和 Trunk 不能完全表达 Hybrid 的所有组合。比如“多个 untagged VLAN 多个 tagged VLAN”这种组合只有 Hybrid 能表达。这也是华为设备保留 Hybrid 的原因。建议初学阶段把 Access 和 Trunk 作为主配置Hybrid 作为理解题去读配置等明白 PVID 和标签规则之后再进入实战。7. 常见问题排查与项目落地建议7.1 从 ping 结果倒推配置遇到网络不通先不要盲目重配。按下面的链路排查现象优先检查常用命令同交换机同 VLAN 不通PC 网段、IP、Access 端口 VLANdisplay vlan、display interface跨交换机同 VLAN 不通Trunk allow-pass、PVID、接口 updisplay port vlan、display interface跨 VLAN 通不应出现检查是否有三层路由设备display ip routing-table所有 PC 都不通接口状态、网线连接、设备未启动display interface、ping 网关排查顺序建议是物理接口状态 - VLAN 划分 - 链路类型 - PVID - 路由和网关。其中物理接口状态最容易漏看eNSP 里接口没启动也会导致全不通。7.2 eNSP 设备无法启动或启动失败的处理eNSP 里 AR1 启动失败 40 是常见现象。处理路径如下右键 AR1选择关闭然后删除该设备重新拖入一台 AR1 再启动。如果重新启动仍然失败检查宿主机的 CPU 虚拟化是否开启。在任务管理器的“性能”里确认虚拟化已启用。检查 eNSP 的后台组件是否被安全软件拦截。可以暂时关闭杀毒软件实时监控重新注册组件。如果出现异常退出的错误码例如与内存访问冲突相关的错误尝试以管理员身份运行 eNSP清理临时目录后重启。如果问题反复出现可以卸载 eNSP、VirtualBox 等组件后重装。安装时注意备份已有工程并确认版本之间兼容。7.3 学习环境与生产网络的区别eNSP 里配置错误可以随意撤销真实交换机则要谨慎得多。生产环境配置端口时至少还要注意配置前保存当前配置变更时保留回滚手段。不在用户正在使用业务的端口上直接切换接口链路类型最好先做预配置或安排维护窗口。Trunk 上不要把 allow-pass vlan 直接写成 vlan all避免把管理 VLAN、业务 VLAN 全部放通。生产交换机需要开启日志、告警并保存配置到设备存储中。学习环境可以为了测试不断重复执行命令但生产环境的一次错误配置可能影响整片网络。建议每次实验都在 eNSP 里先验证再带着验证过的命令清单去设备执行。7.4 端口模式选型速查场景推荐模式原因接入 PC、打印机Access终端不识别 VLAN 标签交换机自动去标签交换机之间互联Trunk多 VLAN 共用链路标签隔离路由器单臂路由Trunk子接口需要带标签的帧老设备混合接入Hybrid可配置多个 untagged 或 tagged 列表普通业务生产网Access Trunk配置清晰、排障简单选型时优先考虑“最容易被后续同事读懂”的配置。Access 和 Trunk 语义明确能解决问题时不必为了用 Hybrid 而用 Hybrid。7.5 新手练习清单按顺序完成以下练习基本能建立端口模式的完整感觉单交换机创建 VLAN 10、20两个 Access 口分别划入不同 VLAN验证隔离。把第二个 Access 口临时改为 VLAN 10验证同 VLAN 互通。两台交换机加 Trunk放行 VLAN 10、20验证跨交换机同 VLAN 互通。修改 Trunk 的 PVID观察对端 PVID 不一致时的现象。把互联口改为 Hybrid用 tagged/untagged 模拟 Trunk理解两者的命令差异。查看display port vlan、display vlan、display interface三个命令的输出并解释每个字段。每一次实验结束后在工程里导出一份配置备份对比修改前后的差异。这种带着问题做实验的方式比单纯背命令更能理解端口模式的转发逻辑。三种端口模式并不是三个孤立命令而是同一条转发规则在不同场景下的体现入口决定无标签帧属于哪个 VLAN出口决定哪些 VLAN 要保留标签、哪些要去掉标签。学完本文后再看到 Access、Trunk、Hybrid 配置首先要问的是“这个接口接收无标签帧时按哪个 VLAN 处理”和“它发出帧时是否打标签”这两个问题想清楚大部分配置和故障都能解决。下一步可以把实验继续扩大到 VLAN 间路由、DHCP 和链路聚合端口模式的知识会继续复用。
返回列表