news 2026/9/30 1:24:55

华为VLAN配置实战:端口类型、PVID与Trunk排障全指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
华为VLAN配置实战:端口类型、PVID与Trunk排障全指南

简介:华为路由器交换机VLAN配置实例是一份面向网络工程师与华为设备运维人员的操作参考文档。文档从实际组网场景出发,使用4台PC、一台华为R2621路由器及S3026e交换机搭建实验环境,系统演示VLAN划分、端口归组、路由器接口IP设定以及基于ACL的访问控制与防火墙策略配置。内容包含完整的命令行清单,例如交换机vlan2/vlan3端口绑定、路由器ethernet0/ethernet1地址设置,以及通过acl 101规则控制指定主机间通信的逻辑,便于读者对照实验环境直接部署或验证。文档为单个PDF文件,大小141KB,已有1568人学习下载。对于希望掌握华为设备VLAN与安全策略配置思路的读者而言,这份实例可提供从拓扑规划到命令落地的全流程参考。

1. 华为路由器交换机VLAN配置实例:照抄前先摸清端口的三张牌

有一类速查材料最容易被低估:像《华为路由器交换机VLAN配置实例.pdf》这种文档,命令一排接一排,新手拿它当背诵模板,老手拿它当字典。可真到设备上照着敲,很多人会发现,VLAN划分好了业务还是不通,跨交换机的同一个VLAN反而时通时断。问题不在命令抄错,而在华为设备的端口模型和教程默认的思路不一样。华为交换机的业务口出厂是Hybrid,PVID是1,Access、Trunk都是后改出来的状态。PVID、tagged、untagged这三张牌没摸透,照PDF敲出来的配置就是沙上建塔。这篇把端口类型、Trunk转发和VLAN间通信一次讲透,照着配能通,也知道为什么通。

2. VLAN在华为设备上怎么立住:端口类型、Tag与PVID是全部赌注

VLAN在交换机上的存在形式不是“名字”,而是插入以太网帧的一个12比特标签。IEEE 802.1Q规定,这个标签插在源MAC地址和协议类型字段之间,同一台交换机上就能让多个VLAN的帧共用一条物理链路互不干扰。华为设备里,你说“一个端口属于VLAN 10”,说的其实是这个端口如何处理带标签(tagged)和不带标签(untagged)的帧。理解这句话,后面所有配置都是顺水推舟。

2.1 华为端口三种类型:Access、Trunk、Hybrid,选型先于敲命令

华为交换机端口可以工作在三种链路类型下,选错类型是VLAN不通的第一大来源。

Access端口只属于一个VLAN。收到不带标签的帧,打上该端口的PVID标签后进入交换机内部处理;发出去时,如果帧的VLAN等于这个PVID,就把标签剥掉再发。Access口接PC、打印机、摄像头这类终端最合适,终端不关心VLAN,看到的链路仍是普通以太网。

Trunk端口给多个VLAN转发。发出去的帧保留标签,这样对端交换机才能知道这个帧属于哪个VLAN。交换机互联、路由器互联、以及下联支持802.1Q的设备,都该用Trunk。

Hybrid是华为的默认形态,也是最灵活的:既能带标签发,又能不带标签发。常见做法是给服务器口做“一个PVID、多个untagged VLAN”,让一台服务器同时接多个VLAN但终端侧不感知。很多从Cisco转过来的人会直接找port link-type trunk,其实在华为生态里,接服务器和终端的场景用Hybrid往往更顺手。

三种类型的选型差异可以压成一张表:

链路类型入口行为(收到无标签帧)出口行为典型用途
Access按PVID打标,进入对应VLAN剥掉标签发出接PC、打印机、摄像头
Trunk按PVID打标;带标签帧按原VID走保留标签发出交换机互联、接路由器
Hybrid按PVID打标每个VLAN可单独指定是否打标接服务器、特殊业务终端

2.2 最小实例:一台华为交换机上把两个办公室分开

给一个最小可用的划分实例。两台PC,分别接在GE0/0/1和GE0/0/2口上,一个属于VLAN 10,一个属于VLAN 20,两个VLAN互不相通。

system-view sysname SW1 vlan batch 10 20 interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit interface GigabitEthernet0/0/2 port link-type access port default vlan 20 quit display vlan

先解释逻辑。system-view进入系统视图,sysname只是改个设备名便于区分;vlan batch 10 20是批量创建VLAN,比一条条vlan 10、vlan 20省事。interface进入物理接口,port link-type access把端口改为Access类型,port default vlan 10把它的PVID设成10。对Access口来说,default vlan就是PVID,也是它唯一的VLAN归属。

最后一条display vlan是验证。看输出的VID列,如果VLAN 10和20都已存在,并且GE0/0/1在VLAN 10下、GE0/0/2在VLAN 20下,这个最小实例就配通了。有个容易忽略的细节:如果只改link-type不改default vlan,端口会落在默认的VLAN 1里,PC能通,但VLAN划分没生效。

2.3 PVID、tagged与untagged:这三个词为什么是华为VLAN的地基

PVID解决的是“一个无标签的帧进来,算哪个VLAN”。华为所有端口的PVID默认是1,这就是为什么新设备上插PC直接能通——大家都在VLAN 1里。你给Access口配port default vlan 10,本质就是把PVID改成10。

tagged和untagged解决的是“帧从这个口出去,要不要打标签”。Access口出口强制untagged,Trunk口出口默认tagged,Hybrid口每个VLAN都能单独指定。几乎所有的跨设备VLAN故障,最后都能还原成一句话:某个口该untagged的打了tag,该tagged的被剥了tag,或者两侧PVID对不上。

这一层想清楚了,后面跨交换机配Trunk,就只是在问“哪些VLAN需要在这条链路上带标签穿过去”而已。

3. 跨交换机VLAN:Trunk链路里的allow-pass和PVID才是魂

场景升级:两台华为交换机,SW1下挂VLAN 10的PC,SW2下挂VLAN 20的PC,要让两边的VLAN 10互访,VLAN 20也互访。两台交换机之间的链路需要同时承载两个VLAN,并且帧过线时标签要保留。这就是Trunk的活。

3.1 两台华为交换机,两个VLAN互通的完整三件套

SW1和SW2的配置几乎一样,以SW1为例:

system-view vlan batch 10 20 interface GigabitEthernet0/0/24 port link-type trunk port trunk allow-pass vlan 10 20 quit interface GigabitEthernet0/0/1 port link-type access port default vlan 10 quit

对端SW2也要在GigabitEthernet0/0/24上做同样的Trunk配置,同时把下联PC的Access口划到对应VLAN。别只做一端,这是最常见的半途而废。

三件套是什么?第一,链路两端都必须是Trunk;第二,allow-pass要覆盖需要的VLAN;第三,PVID在两端保持一致,一般维持默认的1。前两条出事是配置漏了,第三条出事是画蛇添足。

port link-type trunk把口切成Trunk;port trunk allow-pass vlan 10 20是放行列表,列表里的VLAN都能带标签穿过。华为Trunk口有一个默认行为:即使你不写allow-pass,VLAN 1也是放行的。很多场景下VLAN 1跨交换机天然互通,而VLAN 10不通,原因就是allow-pass漏写了。

验证用display port vlan,它会列出每个接口的类型和放行的VLAN列表。再用display interface GigabitEthernet0/0/24确认物理口状态,如果UP、放行列表正确,链路就是通的。

3.2 误解集中营:Trunk口的PVID到底该不该动

我见过不止一个人为了让PC跨交换机“不用打标签”,把两端Trunk口的PVID改成业务VLAN,比如port trunk pvid vlan 10。结果出现两个问题:一是VLAN 10变成跨交换机共享的二层域,本该隔离的部门互相能通;二是VLAN 20的帧在Trunk链路上出现双标签,因为入口已经打了一个10的标签,出口又按VLAN 20打了一个,对端交换机直接懵。

为什么会出现这种改动?因为PVID在很多速查PDF里被翻译成“缺省VLAN”,让人误以为改它不会出事。实际上PVID只管“进入端口时,无标签帧算哪个VLAN”,Trunk口要收的是带标签帧,PVID对它来说是保留给管理和未标记流量的。我一般建议:Trunk口的PVID永远保持默认1,除非你在做基于端口的Voice VLAN这类特殊业务。想让PC进VLAN 10,去改Access口的default vlan,不要动Trunk。

一句话版本:access口的pvid是归属,trunk口的pvid是例外。真正决定Trunk放行哪些VLAN的是allow-pass。

3.3 抓包确认:wireshark怎么设置抓带VLAN的报文

跨两层交换机排查时,光靠display命令有时不够,得看线上真实报文。做法是把交换机的观测口镜像到抓包口。华为交换机上常见做法是:

observe-port 1 interface GigabitEthernet0/0/2 interface GigabitEthernet0/0/1 mirror to observe-port 1 both quit

这段命令的意思是:GE0/0/2被定义为本机1号观测口;GE0/0/1上收发双向的报文都复制一份到观测口。镜像口接PC,PC上打开wireshark。wireshark里如果网卡支持VLAN字段,直接过滤vlan.id == 10就能只看VLAN 10的帧;如果网卡把VLAN解析关掉了,先到wireshark的协议设置里打开VLAN解析,否则只能看到一堆不带标签的ARP广播,误以为VLAN没打上。

抓包观察什么?看Trunk链路上ICMP请求是否带802.1Q标签,标签里的VID是不是10或20。如果PC发出的帧本身就没进对VLAN,那是Access口配错;如果帧带标签但VID不对,那是PVID或allow-pass的问题。这个黑匣子一打开,故障归属立刻清楚。

4. VLAN间通信:路由器子接口与三层交换机的两条路线

VLAN把二层隔开了,业务上却经常需要VLAN 10的办公网访问VLAN 20的服务器网。这就轮到三层的活。华为生态里有两条主流路线:路由器子接口做单臂路由,或者直接用三层交换机的Vlanif接口。前者适合流量不大、边界路由器在手的场景;后者适合内部核心交换,也是华为三层交换机最常见的用法。

4.1 单臂路由:华为路由器子接口必须开arp broadcast enable

常见拓扑是一台AR系列路由器,一个物理口接交换机Trunk口,路由器上把它拆成多个子接口,每个子接口对应一个VLAN的网关。配置示例:

system-view interface GigabitEthernet0/0/0.10 dot1q termination vid 10 ip address 192.168.10.1 255.255.255.0 arp broadcast enable quit interface GigabitEthernet0/0/0.20 dot1q termination vid 20 ip address 192.168.20.1 255.255.255.0 arp broadcast enable quit

dot1q termination vid 10是声明这个子接口处理带VLAN 10标签的帧,也就是收得进、也打得回。ip address是本VLAN的网关地址。真正容易翻车的是最后一句arp broadcast enable:华为很多型号的子接口默认不回应广播ARP,你不开这个,PC ping网关时,ARP请求没人回,网关永远是黑色的。这条命令在Cisco设备上不需要,在华为设备上是标配,丢了它,单臂路由九成不通。

注意:新版本华为路由器子接口的ARP广播回应默认可能已打开,但配置时保留arp broadcast enable不会出错,反而能让配置在老型号上直接复用。

交换机侧要注意:连路由器的那个口得是Trunk,且allow-pass里同时有10和20,否则标签到不了路由器。单臂路由跑通后,不同VLAN的PC各自ping网关,能通则说明三层转发路径正常。

4.2 华为三层交换机Vlanif:比路由器更常用的方案

如果核心设备本身就是三层交换机,比如S5700或S12700系列,不用外挂路由器,直接在交换机上给每个VLAN建一个Vlanif三层接口,当网关用。配置比子接口更简洁:

system-view vlan batch 10 20 interface Vlanif10 ip address 192.168.10.1 255.255.255.0 quit interface Vlanif20 ip address 192.168.20.1 255.255.255.0 quit

Vlanif10就是一个逻辑三层口,IP就是VLAN 10的网关。VLAN 10的PC把默认网关指到192.168.10.1,发往VLAN 20的流量先到Vlanif10,交换芯片查路由表后从Vlanif20转发出去。注意,Vlanif要能UP,前提是这个VLAN已经存在,并且VLAN里至少有一个物理口处于UP状态。很多人配完发现display ip interface brief里Vlanif一直是down,先查物理口,再查VLAN有没有建。

华为三层交换机的VLAN间转发默认是硬件转发的,普通PC互访几乎不消耗CPU。而路由器子接口可能受限于接口带宽。内部VLAN间流量大时,优先上三层交换机;边界出口需要NAT或防火墙策略时,再把流量引到路由器。如果手里只有AR路由器,或者核心交换机是二层款型,那就老老实实走单臂路由。

4.3 配完怎么判断通没通:ping、display arp和MAC表三连

配完别急着下线,按顺序做三件事。第一,PC上ping网关地址,通说明三层接口和VLAN都正常;不通,回到display ip interface brief看Vlanif是否UP。第二,在交换机上执行display arp,看网关IP有没有学到对应的MAC,如果ARP表空,说明VLAN里没有终端上线。第三,执行display mac-address,确认终端MAC确实从正确的端口学进来。这三个命令按“网关通不通→ARP表有没有→MAC表从哪个口进”的顺序排查,几乎能锁定九成以上的VLAN间通信问题。

5. 华为VLAN配置避坑:五条翻车记录,每条都是设备上亲测

我不信有什么“照抄就能通”的VLAN配置。下面的坑都是我或同事在真机上踩过的,每一条都能用display命令让问题现形,写下来给你当后悔药。

5.1 重启后VLAN配置全没了

现象:昨天配好的VLAN,设备一重启,display vlan里干干净净。

原因:华为设备有当前配置和保存配置之分。改完配置只进了运行状态,没写进flash。断电或重启后,运行配置清空,回到出厂默认。

解决:配置完成后执行save,系统问是否确认,输入y回车。养成习惯:任何一次变更结束,先display current-configuration看一眼,再save。别省这一下。

5.2 同一VLAN跨交换机ping丢包,VLAN 1却正常

现象:VLAN 10的PC在SW1和SW2两侧互ping,丢包严重甚至不通;但VLAN 1的管理地址能通。

原因:Trunk链路只放行了VLAN 1,allow-pass漏了VLAN 10。华为Trunk口默认放行VLAN 1,所以VLAN 1“看起来正常”,给了假象。

解决:在两端Trunk口上补port trunk allow-pass vlan 10 20,再display port vlan确认放行列表。

5.3 单臂路由只能通一个VLAN,另一个VLAN的PC ping不通网关

现象:配了三个子接口,VLAN 10的PC能ping通网关,VLAN 20的PC不行;配置看着一模一样。

原因:VLAN 20子接口漏了arp broadcast enable,或者交换机侧Trunk口allow-pass没放行VLAN 20。前者是子接口不回ARP,后者是标签根本到不了路由器。

解决:用display ip interface brief确认子接口都是UP;再检查Trunk的allow-pass。两条都在,就在PC上抓包看有没有ARP应答。

5.4 端口改成Access后,PC还是拿到VLAN 1的地址

现象:端口改成access并配了default vlan 10,PC还是从VLAN 1的DHCP池拿地址。

原因:改端口的link-type,但没执行port default vlan 10,或者改了接口但实际插的是旁边那个口。华为Access口对default vlan没有自动迁移,必须显式指定。

解决:用display vlan,看端口到底落在哪个VLAN下面。确认后重配port default vlan 10,让PC重新获取地址。

5.5 镜像口抓包抓不到想要的VLAN

现象:按3.3节配了observe-port,wireshark里却只能看到不带标签的帧。

原因:网卡没开VLAN解析,操作系统把带标签的帧先剥了再交给wireshark,或者抓包口本身接在Access口,标签在入口处已经被剥掉。

解决:确认镜像口接的是Trunk链路对应的观察口,wireshark里打开VLAN解析。想看到带VLAN的报文,就抓Trunk链路,别抓PC直连的Access链路。

6. 把配置沉淀成你自己的“VLAN配置实例”:验证、描述与端口记录技巧

网上下载的《华为路由器交换机VLAN配置实例.pdf》再全,也是别人的网络拓扑。把配置落到自己设备上,我会在动手前做两件事:先在ensp里把相同拓扑搭一遍,通了再去真机上敲。ensp是华为官方的模拟器,支持S5700和AR系列,跨VLAN通信、Trunk、子接口都能模拟。模拟器上跑通,相当于给真机操作上了一道保险,省去在机房里反复改线的尴尬。

真机配置还有一个容易被忽略的环节:给端口写description。华为端口上的备注是排障时的救命线索。比如:

interface GigabitEthernet0/0/24 description To-SW2-Trunk-Allow-VLAN10-20 quit

端口描述里写下对端设备、链路角色、放行VLAN,三个月后回来排查,看一眼display interface description就知道这条线是干嘛的。没有描述的黑匣子,只能靠拔线确认,那是机房最不想干的事。

我自己的习惯是,每次配完VLAN都按“拓扑图、端口表、VLAN表、命令块”四段整理一份笔记:VLAN表记VID、名称、网段、网关;端口表记接口、类型、PVID、放行列表、描述;命令块按Access、Trunk、Vlanif、子接口分类存好;最后附上本次变更的验证命令输出。这样一份笔记,比任何现成的配置实例PDF都更适合自己下一次照抄。

还有一个容易忽略的细节是console线连接参数。华为路由器交换机的console口默认波特率9600,8数据位、1停止位、无校验。用CRT这类终端软件连接时,连接参数写错,屏幕上只会是一堆乱码,跟配置本身无关,却能把人带偏。

这篇笔记写到这里,最想说的其实是一件事:VLAN配置没有玄学,端口类型、PVID、allow-pass、Vlanif这四样东西,每一样都有明确的检查命令,按display vlan、display port vlan、display ip interface brief的顺序走一遍,故障都能落地。希望这些踩坑记录和验证习惯能帮到你,少走几趟机房夜路。

本文还有配套的精品资源,点击获取

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/30 1:24:28

嵌入式驱动开发:从能跑到量产级稳定的工程化实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/30 1:24:19

Linux内核配置系统解析:Kconfig与Makefile的协作机制

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/30 1:24:18

2026最新测试:百度网盘免PanDownload直链提取脚本跑满百兆

在平时使用网盘存储或传输各种资料的时候,很多朋友都会遇到文件传输进度缓慢的情况。面对屏幕上缓慢移动的进度条。大家往往会感到焦虑和无奈,急切地希望能找到其中的症结所在。 其实造成这种现象的因素非常多,在多数情况下,我们…

作者头像 李华
网站建设 2026/9/30 1:23:57

QTableWidget表头排序实战:从原理到踩坑全解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华