☰
H3C交换机VLAN配置实战:从Access到Trunk跨设备通信
2026/10/18 9:54:41 网站建设 项目流程

开头

搞网络的人都知道,VLAN这件事看起来简单——不就是把端口分一分组嘛,可真到交换机上去配的时候,各种细节问题一个接一个往外冒。尤其是H3C的交换机,命令风格虽然和思科有些神似,但细节上又是自己的一套逻辑,稍不留神就会踩坑。这次这个“H3C交换机VLAN练习-03”,就是围绕VLAN基础配置的一次完整实操,从VLAN的创建、端口类型设置到跨交换机VLAN通信,一套流程走下来,正好把VLAN在二层交换网络里的核心用法给摸透。

这篇文章适合刚入门网络运维的同学,也适合那些已经会用模拟器敲命令、但没在真机上做过系统VLAN配置的同行。我会从设计思路开始,把每一步为什么要这么配、命令背后的逻辑是什么、实际会遇到哪些问题以及怎么排查都讲清楚,尽量做到你在看完之后可以照着这个流程去自己的设备上操作一遍,少走弯路。

1. 整体规划:VLAN练习03到底在练什么

1.1 交换网络里VLAN的核心作用

在正式开始敲命令之前,我还是想先把VLAN的意义说透。很多新手在学VLAN的时候,容易陷入一种“我只要会把命令敲出来就完事”的状态,但如果你没想明白VLAN到底解决了什么问题,后面遇到排障就会特别被动。

VLAN的中文全称是虚拟局域网,它的核心作用就是在二层交换机上把物理上互联的端口划分成多个逻辑上的广播域。在没有VLAN的时代,一台交换机下挂的所有设备都在同一个二层网络里,广播报文会被转发到每一个端口。想象一下,办公室几十台电脑都在同一个广播域里,任何一台设备发起ARP广播,其他所有设备都得收一遍。设备少的时候还好,一旦设备数量多起来,广播风暴就会拖垮整张网络。

VLAN把这个局面彻底改变了。它把一个物理交换机拆成了多个“虚拟交换机”,每个VLAN里面的设备只能直接和同VLAN的设备通信,广播报文也被限制在VLAN内部转发。这个隔离既提升了安全性,又控制了广播域规模。练习03要做的就是把这个理论落实到H3C交换机的实际配置上。

1.2 链路类型的基本概念:Access与Trunk

做VLAN配置绕不开两个概念,一个是Access端口,一个是Trunk端口。这两个词看着简单,真要理解透了还是需要点时间。

Access端口翻译过来就是“接入端口”,它一般用来连接终端设备,比如电脑、打印机、或者IP电话。Access端口的特点是只属于一个VLAN,设备发过去的报文不带VLAN标签,交换机收到后会自动给这个报文打上端口所属的VLAN ID,然后在这个VLAN内部转发。配置Access口最关键的一句话就是“port access vlan X”,指定这个端口放入哪个VLAN。

Trunk端口则完全不同。它通常用在交换机与交换机之间的互联链路上,作用是让多个VLAN的报文同时穿过同一条物理链路。Trunk端口会让报文带着VLAN标签在链路上传输,这样才能区分这个报文属于哪个VLAN。配置Trunk口时要做两件事:一是把端口类型改成trunk,二是用permit命令允许哪些VLAN通过这条链路。

把这两个概念搞清楚,练习03的一半基础就算打牢了。后面所有配置都是在这两种端口类型上做文章。

1.3 练习03的目标拆解

具体到这个练习,我把它拆成了三个递进的目标。

第一步是在一台交换机上创建多个VLAN,并配置Access端口,验证同VLAN设备可以互通、不同VLAN设备无法互通,这是VLAN隔离最基础的效果。

第二步是加入第二台交换机,通过Trunk链路把它们连接起来,让同一VLAN跨越两台交换机之后还能正常通信。这一步是VLAN配置的真正难点所在,因为Trunk链路的配置和排查复杂度比Access端口高了好几个量级。

第三步是在配置完成后,通过查看命令和连通性测试来确认整个网络的转发逻辑是否符合预期,并且要学会在出问题的时候用哪些手段去定位故障点。

这个练习做完,你对VLAN的掌握就算是真正入门了。

2. 实验环境准备与VLAN规划

2.1 设备与拓扑设计

这次练习我使用的是两台H3C交换机,型号选的是常见的中低端框式或者盒式设备都行,比如H3C的S5000系列,配置命令基本上是一致的。实际动手前,我建议你先在纸上把拓扑图画出来,画清楚设备之间的连线方式,这样配置的时候心里才有谱。

拓扑其实很简单,两台交换机,代号分别为SW-A和SW-B。SW-A下面接两台PC,分别规划给VLAN 10和VLAN 20。SW-B下面接两台PC,也同样分别是VLAN 10和VLAN 20的成员。两台交换机之间用一条网线互联,端口选的是千兆口,在这条链路上跑Trunk。

为什么要让两台交换机上都有VLAN 10和VLAN 20?因为这样才需要Trunk。如果VLAN只存在于一台设备上,那根本不需要跨设备通信,练习的目的就达不到了。让两个VLAN同时跨两台交换机传输,才能真正检验你对Trunk的理解深度。

如果手头没有真机,H3C官方有模拟器软件HCL,可以完美模拟这些配置命令,练习环境完全够用。我在这次练习里也用模拟器做了一遍对照验证,配置逻辑和真机是一样的。

2.2 VLAN编号与网段规划

做网络实验最忌讳的事情是拿起设备就乱配,VLAN编号和IP地址都是随手敲的。专业的做法是在动手之前先做好一张规划表,把每一个VLAN、每一个端口、每一个IP段都明确写清楚。

我把本次练习的规划整理成下面这个表格,你可以直接照着抄:

设备端口端口类型VLAN连接对象用途
SW-AGE1/0/1AccessVLAN 10PC-A1接入终端
SW-AGE1/0/2AccessVLAN 20PC-A2接入终端
SW-AGE1/0/24TrunkVLAN 10, 20SW-B GE1/0/24互联链路
SW-BGE1/0/1AccessVLAN 10PC-B1接入终端
SW-BGE1/0/2AccessVLAN 20PC-B2接入终端
SW-BGE1/0/24TrunkVLAN 10, 20SW-A GE1/0/24互联链路

PC的IP地址规划我放在下面:

设备IP地址所在VLAN
PC-A110.0.10.1/24VLAN 10
PC-A210.0.20.1/24VLAN 20
PC-B110.0.10.2/24VLAN 10
PC-B210.0.20.2/24VLAN 20

从这张表能看出来,VLAN 10的终端网段是10.0.10.0/24,VLAN 20的终端网段是10.0.20.0/24。两个VLAN的网段完全隔开,这样即使广播报文意外串了,IP层也跨不出去。这种“VLAN隔离+网段隔离”的双重隔离是生产环境里最常用的设计思路。

2.3 准备工作与登录设备

登录H3C交换机的方式一般有两种,一种是通过Console口连接,另一种是配置好管理地址之后通过Telnet或SSH登录。初次配置的设备上基本只能用Console口,所以建议你准备好一根Console线和终端软件,比如SecureCRT或者Xshell。连接参数一般是波特率9600,数据位8位,无校验,停止位1位。

设备通电后,终端上会看到启动日志和提示符,按回车之后进入用户视图,提示符类似于“ ”。这个尖括号视图就是用户视图,权限很低,只能做一些查看操作。想要真正修改配置,就要执行system-view命令进入系统视图,提示符会变成“[H3C]”。这两个视图的区别一定要分清楚,后面的所有配置命令几乎都是在系统视图下执行的。

3. 核心配置实操:命令逐条讲解

3.1 在交换机上创建VLAN

登录设备后,第一步是在系统视图下创建VLAN。我先把H3C创建VLAN的标准命令放出来:

system-view [H3C] vlan 10 [H3C-vlan10] quit [H3C] vlan 20 [H3C-vlan20] quit

有些同学可能会问,创建VLAN能不能一条命令搞定多个?可以的,直接在命令后面把编号列出来就行:

[H3C] vlan batch 10 20

这是H3C设备上非常实用的一个命令,批量创建不连续VLAN的时候省事很多。除了batch关键字,还可以用“vlan batch 10 to 20”这种写法,一次性创建10到20之间的所有VLAN。

创建完成后,可以用“display vlan”查看当前VLAN的列表,输出结果里会显示VLAN编号、名称、状态和包含的端口信息。这时候VLAN已经建好,但里面还没有任何端口。

顺带提一句,VLAN 1是交换机默认自带的,无法删除,所有端口初始状态下默认属于VLAN 1。这也是很多新手容易忽略的一个点:如果你不显式配置端口所属VLAN,所有端口都是VLAN 1的成员,此时所有设备在二层是互通的。所以,从某种意义上说,配VLAN就是在打破这个“默认全通”的状态。

3.2 配置Access端口

VLAN创建好之后,开始把端口划入相应VLAN。以SW-A的GE1/0/1口为例,我想让这个口属于VLAN 10,配置命令是:

[H3C] interface gigabitethernet 1/0/1 [H3C-GigabitEthernet1/0/1] port link-type access [H3C-GigabitEthernet1/0/1] port access vlan 10

第一句是进入接口视图,进入之后的所有命令都是针对这个端口生效的。第二句把端口类型设置为access,第三句设置端口默认的VLAN为10。

端口类型设置和VLAN指定是两步独立的动作。之前有段时间华为和H3C的命令体系里,配置access vlan时如果端口类型还是默认状态会直接报错,必须先指定类型。现在虽然很多新版本设备允许简化操作,但我还是建议养成“先设类型、再设VLAN”的习惯,这样兼容性最好。

配置完第一个Access口之后,用同样的方式把剩余三个Access口也配好。配置命令如下,注意区分设备:

SW-A上:

[H3C] interface gigabitethernet 1/0/1 [H3C-GigabitEthernet1/0/1] port link-type access [H3C-GigabitEthernet1/0/1] port access vlan 10 [H3C-GigabitEthernet1/0/1] quit [H3C] interface gigabitethernet 1/0/2 [H3C-GigabitEthernet1/0/2] port link-type access [H3C-GigabitEthernet1/0/2] port access vlan 20 [H3C-GigabitEthernet1/0/2] quit

SW-B上:

[H3C] interface gigabitethernet 1/0/1 [H3C-GigabitEthernet1/0/1] port link-type access [H3C-GigabitEthernet1/0/1] port access vlan 10 [H3C-GigabitEthernet1/0/1] quit [H3C] interface gigabitethernet 1/0/2 [H3C-GigabitEthernet1/0/2] port link-type access [H3C-GigabitEthernet1/0/2] port access vlan 20 [H3C-GigabitEthernet1/0/2] quit

这段配置配完之后,你可以在系统视图下执行“display vlan 10”来看看VLAN 10里是否已经包含了GE1/0/1端口。输出结果里会有端口列表,确认无误继续下一步。

3.3 配置Trunk链路

Access口配完之后,重点来了——配置交换机之间的Trunk链路。

我以SW-A的GE1/0/24口为例,完整配置如下:

[H3C] interface gigabitethernet 1/0/24 [H3C-GigabitEthernet1/0/24] port link-type trunk [H3C-GigabitEthernet1/0/24] port trunk permit vlan 10 20

同样的配置也要在SW-B的GE1/0/24口上执行。很多人在配置Trunk时会漏掉一个关键动作,那就是放通VLAN。如果只设置了端口类型为trunk而没有执行permit命令,Trunk链路上默认是不过任何VLAN流量的,只会透传VLAN 1的报文。这种配置遗漏导致的直接结果就是你ping不通对端的任何VLAN终端,但链路的物理状态看起来又是正常的,排查起来特别迷惑。

另外还有一个pvid概念需要搞清楚。H3C的Trunk端口上有一个默认VLAN,也就是pvid,默认值是VLAN 1。从Trunk端口发出的报文,如果属于pvid对应的VLAN,交换机是不打标签的;其他VLAN的报文都会打上VLAN标签传输。在练习里我们不需要改pvid,保持默认就好。

Trunk配置好后,用“display vlan”查看,你会发现两台交换机上的VLAN 10和VLAN 20都分别包含了各自的Access端口和Trunk端口。从交换机的角度看,VLAN 10在SW-A上由GE1/0/1和GE1/0/24组成,在SW-B上由GE1/0/1和GE1/0/24组成。通过Trunk链路,VLAN 10的广播域跨两台交换机连成了一片。

3.4 查看配置与连通性验证

配置完成后,动脑子检验一下配置到底对不对,不要急着下班。我习惯用几条查看命令逐个检查:

display current-configuration

这条命令会把当前设备的完整配置打印出来,适合用来做全局审查,看有没有端口类型或者VLAN放行配错的地方。

display vlan brief

这条命令是精简模式查看VLAN,每行一个VLAN,后面跟着该VLAN包含的端口列表。这是日常排障最常用的一条命令,我几乎每次定位VLAN问题都会先敲一遍它。

display interface brief

这条命令查看所有接口的状态和基本配置,重点看链路状态是否UP。如果物理链路没起来,后面一切配置都是白搭。

然后是连通性测试。PC-A1去ping PC-B1,走的是VLAN 10路径:PC-A1发报文进SW-A的GE1/0/1口,交换机给它打上VLAN 10标签,从GE1/0/24口出去时带标签穿Trunk链路,SW-B的GE1/0/24口收下后根据标签在自己的VLAN 10里面找目标端口,从GE1/0/1口发给PC-B1,转发成功。

PC-A2去ping PC-B2的话就是VLAN 20的类似路径,不赘述。

关键测试在于PC-A1去ping PC-A2,这两个设备在IP规划上都是10.0开头的地址,但VLAN分别归属10和20。由于不同VLAN在二层被彻底隔离,这个ping一定是不通的。不通是正常现象,反而说明VLAN隔离生效了。

我实际操作时遇到过的坑是PC的网关设置问题。练习中给PC配置的是静态IP,没有配置网关,因为VLAN内通信不需要网关。但如果你的实验环境里有三层交换机参与路由,网关就要设为相应VLAN接口的IP地址,很多人在这一步把网关和VLAN的概念混在一起,导致排查方向错了。

4. 常见问题与排查技巧实录

4.1 物理口打错导致VLAN成员混乱

这个问题在真机上做实验时特别常见,模拟器里倒是不容易出现。现象是PC-B1去ping PC-A1不通,但PC-A2能ping通PC-A1,或者整个VLAN里的设备时通时不通。

排查思路很简单,先在SW-A上执行“display vlan 10”,确认端口列表和你预期是否一致。如果发现VLAN 10里面多了一个奇怪的端口,或者少了一个应该加入的端口,八成是接线和配置对不上号。很多新同学在配置时只盯着VLAN的配置命令看,忽略了物理线路的确认,结果配置本身没问题,但线插错了口,VLAN成员自然和你预期不符。

我在真实项目里会习惯在做VLAN配置之前,先给每个端口贴好标签,标注“接PC-A1/VLAN10”这类信息。物理层的规范管理真的能少掉很多蹊跷故障。

4.2 Access口PVID导致的流量“假通”

另一个容易犯的错是在配置Access口的时候,端口类型设置正确了,VLAN也指定对了,但设备里的旧配置残留了一个不同的pvid。

H3C交换机里面每个端口其实都有一个pvid属性,Access口的pvid会被自动设置成你指定的VLAN。但如果你用了一些批量下发配置的工具,或者某个端口的配置是从别的地方复制过来的,可能Access口的VLAN和它的pvid不一致。这个状态下,从终端发进来的不带标签报文会被交换机按pvid打上标签,然后报文就会被划分到pvid对应的VLAN里转发,但你查看Access口配置时看到的是另一个VLAN。两头对不上,排查起来极其痛苦。

遇到这种情况,直接把端口的access vlan重新指定一遍,pvid会自动跟随更新,不要手动去改pvid。

4.3 Trunk放行遗漏导致的应用故障

这个坑我相信搞过网络的人基本都踩过。Trunk链路建好,物理状态up,两端交换机互ping也能通,但终端之间就是访问不了。

打开“display current-configuration”看一眼Trunk口配置,你可能会发现“port trunk permit vlan 10”这条命令只放行了VLAN 10,而VLAN 20压根没有放行。导致VLAN 20的终端之间跨交换机完全不可达。原因通常是在配置的时候敲了permit vlan 10,就以为Trunk口“已经允许所有VLAN了”。

这里要特别提醒一句:不要把Trunk口和“放行所有VLAN”直接划等号。H3C的默认策略是,一旦你执行permit命令,这个端口之前放行的VLAN列表会被覆盖。如果你先执行了“port trunk permit vlan 10”,后面又执行“port trunk permit vlan 20”,那最终结果可能只有VLAN 20被放行。很多设备在第二次执行时不会保留之前的列表。稳妥的做法是搞清楚需要放行的VLAN,一次性全放行,或者使用“port trunk permit vlan all”这种快捷方式(生产环境不推荐,仅限实验)。

4.4 排查工具的使用与故障定位顺序

最后说一下排查故障的整体思路。遇到VLAN相关的通信问题,不要瞎猜,按下面这个顺序来定位:

  • 第一步,看物理层。执行“display interface brief”,确保两台交换机之间的互联端口状态是UP。
  • 第二步,看VLAN成员。执行“display vlan”,核对所有端口的归属是否符合规划。
  • 第三步,看Trunk放行。确认Trunk口放行了所有需要的VLAN,并且两端配置一致。
  • 第四步,查MAC表。在一台交换机上执行“display mac-address”,看能不能看到对端PC的MAC地址。如果能看到对端MAC,说明二层路径是通的;如果看不到,说明报文根本没走到这台设备上。
  • 第五步,做抓包验证。如果条件允许,在Trunk链路上做镜像抓包,看看报文是否带有正确的VLAN标签。

这个排查顺序基本覆盖了90%以上的VLAN二层问题。

5. 练习完成后的固化与心得

5.1 配置保存与文档留存

配置验证完成之后,不要忘了保存配置。H3C设备在用户视图下执行“save”命令即可,系统会询问是否保存到指定文件,默认保存到启动配置文件即可。如果不保存,设备重启后所有配置都会丢失,实验白做了。

另外强烈建议把完整的配置文件导出一份,保存到你自己的笔记或者版本管理工具里。我平时还会把VLAN规划表、端口接法、测试结果一起归档。这样做的好处是,之后复盘或者扩展练习的时候有据可查,不需要重新摸索。

5.2 从练习03延伸出去的思考

练习做到这里,VLAN的二层隔离和跨设备的透传已经摸清了。可持续延展的方向其实是三层的部分:如果想让VLAN 10和VLAN 20之间能够通信,就得上三层交换机,配置VLAN接口,用SVI(Switch Virtual Interface)来做网关,然后在VLAN接口之间启用路由。

练习04或者05就可以往这个方向走,把二层VLAN和三层网关串成一套完整的逻辑。尤其是ICMP重定向、VLAN接口的ARP老化时间这类细节,在生产排障中会频繁遇到,值得作为下一个专题去练。

还有一类知识点是VLAN和VXLAN的对比,VXLAN现在算是数据中心网络的主流技术,但它的基础还是VLAN那套标签思想,把VLAN标签换成VXLAN的网络标识。把今天的VLAN知识吃透,后面学VXLAN会轻松很多。

5.3 我在实操中的最后几点感受

设备配置这件事,一定不要怕敲命令。H3C的命令体系总体上比较清晰,配VLAN其实就那几个命令,关键在于你有没有把每一步的含义真正理解透。我见过不少同事配VLAN的时候手速飞快,十分钟配完,出问题以后整整排查了一下午。问题往往出在最基础的环节——类型没设对、放行没放全、pvid没搞明白。

我个人的经验是每次练习都强迫自己完成“配置、验证、记录”三个动作,缺一不可。验证不只是看结果对不对,还要想想这个结果背后的转发过程是怎么发生的;记录则是把这次练习的所有细节沉淀下来,变成你自己的东西。如果你能把练习03的这套流程做到得心应手,那在企业网络里最常见的接入场景就已经不会再难住你了。接下来再接三层,往路由的方向一点点啃,很快你就能独立处理园区网的核心配置了。

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

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

立即咨询