
简介针对华为 S5700 三层交换机 VLAN 配置的整理文档面向网络工程师、运维人员及学习网络技术的初学者。文档以实际组网场景为背景涵盖 VLAN 基本概念、管理 IP 配置、Web 登录用户设置、端口接入方式划分、所属 VLAN 指定等核心操作并附有路由器互联的配置说明与网络拓扑示意图资源仅包含 1 个 PDF 文件压缩包大小 1.43MB内容结构清晰适合按步骤对照操作。目前已有 696 人学习浏览。通过这份文档读者可掌握 S5700 从 Console 登录、配置管理地址到逐端口划分 VLAN 的完整流程学会使用 system-view、interface、port link-type access、port default vlan、aaa local-user 等常用命令并了解如何配合路由器设置静态路由与 NAT使各 VLAN 网段正常访问外网文档对端口接入模式、默认 VLAN 归属等细节均有说明适合在配置 vlanif、三层路由等场景中随时查阅。1. 华为S5700交换机VLAN设置先把这台设备的脾气摸清再动手接手一台华为S5700最常见的任务不是开局而是“帮我把VLAN重新划一下”。很多人照着旧的配置手册敲命令结果终端接上去还在VLAN 1里或者两台交换机之间怎么也不通最后只能靠重启设备来解决。华为S5700系列属于企业网的接入/汇聚交换机VRP平台命令行风格和思科完全不同VLAN设置看起来就几条命令但PVID、Tagged、Untagged、Hybrid这几个概念搅在一起配置顺序一错就翻车。这篇整理稿面向网络运维、集成商和做设备测试的工程师把S5700的VLAN设置从原理讲到落地再从落地讲到排查目的是让你拿到任何一台S5700都能按同样的步骤完成任务而不是靠试错。2. 开始配置前VLAN类型、接口链路类型与S5700的默认行为2.1 华为S5700的VLAN基础PVID、Tagged/Untagged 和三种接口模式S5700的VLAN遵循802.1Q标准报文在交换机内部传递时通过VLAN Tag来区分所属广播域。你在命令行里看到的大多数概念其实都是在处理“这个端口收进来不带Tag的帧该归哪个VLAN”和“这个端口发出去要不要带Tag”这两件事。对应到S5700上就三个关键词PVID、Tagged、Untagged。PVID就是这个端口的缺省VLAN。一个端口收到没有携带802.1Q Tag的帧时交换机会把它当成PVID所对应的VLAN来处理如果帧本身已经带了Tag交换机就按Tag里的VLAN ID走。Access口比较特殊它只能属于一个VLANPVID就是它唯一的成员VLAN所有进出的帧都会被剥掉Tag。Trunk口通常用于交换机互联允许多个VLAN通过出方向的帧是否保留Tag由配置决定默认情况下Trunk会放行VLAN 1。Hybrid口则是华为的特色它既能像Access口那样剥Tag也能像Trunk口那样放行多个VLAN还能在同一个端口上区分哪些VLAN带Tag、哪些不带Tag这在实际项目里非常有用。S5700默认情况下所有端口都属于VLAN 1PVID也是1所以在没有做任何配置时所有口都在同一个广播域里。VLAN编号范围是1到4094VLAN 4095保留实际可用的数量取决于设备型号和资源。还有个容易忽略的点S5700的接口默认链路类型既不是Access也不是Trunk而是Hybrid。从思科设备切过来的人最容易在这里踩坑以为默认是Access结果一看display port vlan所有口都是Hybrid且只属于VLAN 1。接口类型典型用途入方向处理出方向处理PVID作用Access接PC、打印机、服务器无Tag帧打上PVID剥掉所有Tag唯一成员VLANTrunk交换机互联、路由器上行无Tag帧打上PVID放行VLAN按Tag转发PVID对应VLAN是否打Tag看配置决定无Tag流量归属Hybrid接AP、语音终端、多业务端口无Tag帧打上PVID可同时存在Untagged和Tagged列表决定无Tag流量归属2.2 选型理由Access、Trunk、Hybrid在S5700上怎么选先明确一个原则接口类型不是随便选的它取决于对端设备是什么。对端是普通的PC、网络摄像头、IP电话这类不支持或不希望看到VLAN Tag的设备用Access口最合适。Access口的逻辑最简单进出的帧都不会带Tag终端侧不需要任何配置插上就能通。对端是另一台交换机、路由器、防火墙或者一台需要识别VLAN Tag的服务器用Trunk口。Trunk口负责维系VLAN跨设备传递同一根物理链路上能跑多个VLAN这也是“vlan划分”在接入侧落地最常用的形态。Hybrid口的优势在于“既要又要”。比如接入层交换机接一个APAP本身的上行无线业务属于VLAN 100但网管希望同一根网线还能跑到AP的带外管理地址管理流量属于VLAN 10。如果用Trunk口终端侧需要配置802.1Q识别如果用两个Access口又浪费端口。Hybrid口可以同时做到对VLAN 10以Untagged方式透传AP管理口不感知Tag对VLAN 100以Tagged方式透传给AP上行。这个用法在华为设备上非常普遍也是S5700作为接入交换机比很多纯二层设备更好用的原因之一。另外还要考虑设备型号后缀。S5700家族里有LI、EI、HI等子型号LI类偏精简通常做二层接入EI和HI支持更强比如VLANIF三层接口、静态路由乃至OSPF。规划VLAN时先看一眼设备型号如果后续要做VLAN间通信而手里拿的是偏精简的型号就得把网关放在上层的核心交换机或路由器上免得配了地址发现功能实际不可用。2.3 动手前的准备确认VRP版本、恢复Console/远程登录与默认VLAN 1拿到一台S5700我一般不会直接开始敲VLAN命令先做三件事确认VRP版本、确认当前登录方式、确认现网VLAN使用情况。第一件事看版本命令是display version。S5700的VLAN命令在V200R003到V200R019这些主流版本里差异不大但有些老版本对Hybrid口的支持细节有差别知道版本才好在查资料时定位。第二件事确认登录方式如果你只能用Console口登录提前检查串口参数常见是9600波特率、8位数据位、1位停止位、无校验也就是9600-8-N-1。第三件事用display current-configuration找到已有的VLAN分配特别留意哪些端口已经加入了非默认VLAN别把现网业务口直接改掉。设备如果没有专门的带外管理地址很多人习惯把管理流量放在VLAN 1里。这个做法能省事但VLAN 1是所有交换机默认就有的VLANTrunk口默认也会放行VLAN 1如果在上面跑了业务和管理面的混合流量排障时很难分清是VLAN配置问题还是链路问题。我的习惯是单独划一个管理VLAN比如VLAN 5把所有交换机的管理地址都放在这个VLAN里Trunk口单独放行这样VLAN 1就只承担它最基础的职责后面即使误操作也不至于把整个管理面搞断。3. 用命令行在S5700上配置VLAN从创建VLAN到接口划分3.1 创建VLAN并批量划分Access接口最小可用配置先用最直接的场景一台S5700放了24个终端要求全部分到VLAN 10配置步骤分两段先建VLAN再改端口。进入系统视图后用vlan命令创建VLAN并建议加一条description这一步很多人跳过但等到三个月后排查故障时一条清晰的注释能省半小时。system-view sysname ACCESS-S5700-01 # 改设备名多台设备时避免敲错设备 vlan 10 description Office-Endpoint # 给VLAN加业务注释后续排障一看就懂 quit interface GigabitEthernet0/0/1 port link-type access # 指定端口为Access类型 port default vlan 10 # 把端口划入VLAN 10 quit这段命令的逻辑很直接先创建VLAN 10再把物理口从默认的VLAN 1改到VLAN 10。port link-type access这一步不能省如果端口还是默认的Hybrid类型port default vlan这条命令会报错或不生效因为Hybrid口不认port default vlan它认的是port hybrid pvid vlan。等你敲习惯了Access的配置再切回Hybrid口时很容易把这个搞混后面避坑章节会专门说。如果要把0/0/1到0/0/24这24个口全部划入VLAN 10一个一个敲interface太慢用端口组批量处理port-group 1 group-member GigabitEthernet0/0/1 to GigabitEthernet0/0/24 port link-type access port default vlan 10 quit端口组的逻辑是把多个物理口收进同一个组然后统一执行相同的端口配置命令避免重复劳动和漏配。group-member里的to关键字表示连续端口范围华为的端口编号规则是槽位/子卡/端口GigabitEthernet0/0/1表示0号槽位0号子卡的第1个电口。批量化之后一定要用display port vlan抽查几个端口确认24个口都划进去了因为有时候中间某个口可能已经被其他配置占用命令会直接跳过。3.2 配置Trunk链路放行VLAN、PVID与端口隔离接入层交换机划分完VLAN后要把VLAN传到汇聚或核心就得靠Trunk链路。S5700的Trunk配置有三条命令必须成组出现第一条把端口类型改成Trunk第二条设置PVID第三条放行VLAN。很多人只记得allow-pass把PVID给忘了结果无Tag流量全部进了VLAN 1。interface GigabitEthernet0/0/24 port link-type trunk # 把上联口改为Trunk类型 port trunk pvid vlan 10 # 设置PVID无Tag流量归入VLAN 10 port trunk allow-pass vlan 10 20 30 # 放行VLAN 10、20、30 quitport trunk pvid vlan 10这条命令设置在Trunk口中的含义是如果这个端口收到了不带Tag的帧就把它当作VLAN 10的流量处理。allow-pass vlan 10 20 30则定义了哪些VLAN允许通过这条Trunk链路。需要注意一点默认情况下Trunk口会放行VLAN 1而且这个默认放行不太容易通过命令直接去掉。如果你不想让VLAN 1的流量跨交换机跑还是要靠端口隔离或者在VLAN 1上不做任何业务来兜底。实际项目里还常用一种写法port trunk allow-pass vlan all这对排障来说不算好习惯。放行all意味着未来新加的VLAN只要在两端都创建就自动透传看起来省事但一旦出现广播风暴或者误配的VLAN排查范围就是整条Trunk链路。我一般只在测试环境用all现网环境严格写清VLAN列表。另外要养成一个习惯没有特殊需求不要在业务Trunk口上执行undo port trunk allow-pass vlan all这条命令会把Trunk上放行的所有VLAN全部撤掉已经跑着的业务瞬间全断这属于典型的“配置一时爽业务全遭殃”。3.3 配置Hybrid接口对接AP和终端时比Trunk更省事的做法前面提到S5700默认端口类型是Hybrid这个默认值不是摆设。在接入场景里Hybrid口做多业务接入比Trunk更灵活。最常见的需求是一根网线接一个APAP的无线用户业务属于VLAN 20AP自身的网管流量属于VLAN 10要求VLAN 10在AP侧不感知TagVLAN 20在AP侧要带Tag。用Trunk口做不到这种混合模式用两个Access口又浪费端口Hybrid口天生就是干这个的。interface GigabitEthernet0/0/18 port link-type hybrid port hybrid pvid vlan 10 # 无Tag帧归入VLAN 10 port hybrid untagged vlan 10 # 出方向VLAN 10剥掉Tag port hybrid tagged vlan 20 # 出方向VLAN 20保留Tag quit这段配置里pvid vlan 10决定了AP侧发来的不带Tag管理帧被识别为VLAN 10untagged vlan 10表示从交换机端口发出去时VLAN 10的帧剥掉Tag再交给APAP的网管系统不需要设置任何VLAN信息tagged vlan 20则让VLAN 20的帧带上Tag送到AP由AP上行口识别后交给无线的业务VLAN。命令顺序上有个细节先配pvid再配untagged和tagged逻辑更清晰也避免系统在中间状态时报错。Hybrid口还有一个容易被忽略的规则同一个VLAN在同一个Hybrid口上要么在untagged列表要么在tagged列表不能同时存在。如果你先配了port hybrid tagged vlan 10再配port hybrid untagged vlan 10系统会提示冲突并拒绝第二条命令。所以规划时要先想清楚这个VLAN在这个口上是要剥Tag给终端还是要带Tag给对端交换机想清楚再动手。3.4 保存配置与查看生效结果display vlan / display port vlan 的正确读法配置敲完之后最重要的不是继续加配置而是确认现状并保存。S5700上有两组查看命令最容易用混。display vlan显示的是VLAN列表和每个VLAN包含的端口display port vlan显示的是每个端口当前所属VLAN、端口类型、PVID以及Tagged和Untagged明细。排查“为什么这个口在VLAN 10里但流量还是不通”时只看display vlan不够必须看display port vlan。display vlan summary display port vlan display current-configuration | section GigabitEthernet0/0/24 save ydisplay current-configuration后面跟section参数可以只看某个接口或某个VLAN段的配置避免整屏刷过去找不到重点。最后执行save系统会提示是否保存到flash输入y确认。S5700的配置生效机制是即时生效但断电后如果没save所有配置都会丢这是很多现场人员血泪教训的来源配完当时测试全通第二天重启设备所有VLAN设置全部消失网络恢复原样然后被质疑前一天到底有没有干活。所以save这个动作必须在设备上电后的每次配置变更结束时执行一次而不是全部改完再统一保存。如果有多台S5700要配不要一台一台地敲保存可以在全部配置完成前先display current-configuration核对一遍再统一save。核对时重点看三处每个VLAN是否创建、每个关键端口的链路类型是否符合规划、Trunk口的放行列表是否和对端一致。4. 让VLAN之间能通信VLANIF三层接口与S5700路由配置4.1 为什么S5700配好VLAN后终端还是ping不通三层接口必须单独建VLAN划分完成只是做了二层广播域的隔离它解决的是“不同部门/业务之间不能互相访问”的问题。如果你的需求是“VLAN 10的人要能访问VLAN 20的服务器”光有VLAN划分还不够必须给VLAN配上三层网关。S5700的三层转发靠的是VLANIF接口你可以把它理解成“VLAN的虚拟三层口”在这个接口上配上IP地址后VLAN里的终端才能通过它做跨VLAN路由。很多人把VLAN配置和路由配置混在一起以为只要创建了VLAN 10和VLAN 20两边就能通。实际的效果是VLAN 10的终端能拿到地址、能上网段内的互访但访问VLAN 20时数据包到了交换机交换机不知道该把目标MAC对应的流量送到哪个三层接口于是直接丢弃。这是新手最容易产生误解的地方VLAN是二层隔离技术VLANIF才是三层通信的入口。这里还要提一个S5700家族的差异。如果你手里的设备型号后缀带LI这类精简版本VLANIF可以配置但设备可能不支持三层转发VLANIF只能当管理地址用。正式做VLAN间路由前用display version确认设备型号层级EI和HI型号做三层网关没问题LI型号就把网关放到上层路由器或者核心三层交换机上。4.2 VLANIF配置步骤与IP地址规划给S5700配置VLANIF命令本身非常简单难点在于地址规划。我的习惯是VLAN编号和IP网段第三位保持对应比如VLAN 10对应192.168.10.0/24VLAN 20对应192.168.20.0/24这样看到IP段就能反推VLAN不用额外查表。system-view interface vlanif 10 ip address 192.168.10.1 255.255.255.0 # VLAN 10的网关地址 quit interface vlanif 20 ip address 192.168.20.1 255.255.255.0 # VLAN 20的网关地址 quit命令逻辑是把三层IP直接绑定到VLANIF接口上VLANIF接口的编号必须和已经存在的VLAN ID对应如果VLAN 20还没有创建这条命令会报错。IP地址的掩码写法必须用点分十进制比如255.255.255.0不能用/24这种简写命令行不识别斜杠格式。配置完成后用display ip interface brief查看所有三层接口的状态确认VLANIF 10和VLANIF 20都处于UP状态。注意一个现象如果某个VLANIF接口显示DOWN通常不是配置错误而是这个VLAN里没有任何物理端口处于UP状态。VLANIF接口的物理状态由该VLAN内的二层端口决定所有端口都DOWN或这个VLAN没有任何端口成员时VLANIF就是DOWN的终端自然ping不通网关。所以排查顺序应该是先确认VLAN里有物理口且状态UP再确认VLANIF的IP配置最后再查路由。4.3 跨交换机VLAN通信Trunk放行、PVID一致性、生成树这三个关联点如果VLAN间通信只发生在一台S5700内部配上VLANIF就结束了。但实际项目里经常是接入层好几台S5700汇聚层一台三层交换机所有VLAN的网关都在汇聚设备上。接入交换机的VLAN要能通过Trunk链路到达汇聚交换机再进VLANIF接口路由。这里牵涉到三个必须同时满足的条件。第一Trunk放行列表要一致。接入交换机的Trunk口放行了VLAN 10和20汇聚交换机的Trunk口也必须放行VLAN 10和20。任何一端漏放行对端收到带Tag的帧后会直接丢弃。第二PVID要一致或有意识地不一致。Trunk链路两端如果PVID不同无Tag流量会被识别成不同的VLAN可能造成VLAN 10的流量最终被归到VLAN 20里排查起来非常隐蔽。第三生成树状态要正常。Trunk链路接口如果被生成树阻塞物理链路是通的但VLAN不转发数据。这时在接入交换机上用display stp brief看端口状态或者在汇聚交换机上检查是否有端口处于discarding状态。跨交换机场景我还建议加一条静态默认路由让接入交换机把非本机管理的网段全部送到汇聚设备。例如汇聚的VLANIF地址是192.168.0.254接入交换机上配置一条默认路由指向它这样接入交换机上的管理VLAN也能通过它访问核心资源。ip route-static 0.0.0.0 0.0.0.0 192.168.0.2545. S5700 VLAN配置避坑5个高频翻车场景与排查命令5.1 现象Access口配了PVID终端还是不通现象端口已经配置为AccessVLAN 10也创建了终端插上去拿不到IP或者能拿到IP但ping不通网关。用display port vlan看端口状态端口确实属于VLAN 10配置看起来没有任何问题。原因最常见的原因不是你配置错了而是对端业务不对。第一种可能是终端网卡上手动设置了VLAN IDWindows网卡高级属性里的VLAN ID如果填了非0值终端发出的帧就会带TagAccess口收到带Tag的帧后不会按PVID处理而是按帧里的Tag走结果流量被识别成别的VLAN。第二种可能是这个端口上同时开了端口安全或者MAC限制策略把终端MAC给阻断了。解决先去终端网卡高级属性里把VLAN ID改成0或者“关闭”确认发出的帧不带Tag。再在交换机上检查端口是否被端口安全锁定用display mac-address和display port-security排查。最后用一台干净的电脑直连这个端口绕过终端系统因素验证交换机侧配置是否真的通了。5.2 现象Trunk口放行列表看着没问题两台交换机VLAN还是不通现象两台S5700做级联Trunk口都执行了port trunk allow-pass vlan 10 20display port vlan看两端也一样但VLAN 20的终端访问不到对端VLAN 20的服务器。原因排查后经常发现问题出在两端Trunk口的PVID不一致或者其中一端在执行allow-pass前端口类型还是Hybrid。尤其最后一种情况非常隐蔽你敲了port link-type trunk但命令因为某种原因没生效端口实际还是Hybrid此时allow-pass命令在Hybrid口上同样能执行但语义完全不同VLAN不会正确透传。解决不要只看display port vlan里显示的Trunk类型执行display current-configuration interface GigabitEthernet0/0/24确认端口确实是Trunk。再对比两端PVID如果不一致就统一。如果配置都对还是不通查两端端口的协商状态S5700的Trunk口建议用自协商强制配置主从不同步也可能导致物理UP但对端不认Tag。5.3 现象Hybrid口的Untagged配置被“吃掉”现象在Hybrid口上配置了port hybrid untagged vlan 10命令执行成功但过一会儿再看display current-configuration发现untagged列表里没有VLAN 10了。终端接上去不通抓包发现交换机发出的帧全带Tag。原因大概率是在配置untagged vlan 10之前这个端口已经通过其他命令加入了VLAN 10的tagged列表。前面提过同一个VLAN在同一个Hybrid口上不能同时出现在untagged和tagged列表里后配置的命令会被系统拒绝。但由于某些批处理脚本或者端口组命令覆盖现场往往看不到明确的报错实际效果就像配置被“吃掉”一样。解决先执行display port vlan确认VLAN 10当前在tagged还是untagged列表然后执行undo port hybrid tagged vlan 10先把冲突的配置撤掉再重新配置untagged vlan 10。关键教训是在Hybrid口上修改VLAN归属前一定要先看当前这个VLAN在这个口的出方向策略直接改容易产生静默失败。5.4 现象配置保存后重启VLAN丢了一半现象设备配置完成后执行了save也看到了提示成功但第二天设备重启后部分VLAN和接口配置都还在另外一部分完全消失业务混乱。原因最常见的是save前执行了reset saved-configuration命令有些人在测试环境习惯用这个命令清配置在业务设备上误敲了把flash里的启动配置清了。另外还有一种情况多台设备通过批处理工具下发配置某台设备执行save时flash空间不足保存没成功命令行仍然提示操作完成造成“已经保存”的假象。解决执行save后立即执行display saved-configuration对比这个文件里是否有你刚才配置的VLAN和端口内容。如果设备不支持display saved-configuration就重新执行save看到提示信息里明确指出配置写入成功。另外养成习惯save后用display version确认设备flash剩余空间空间不足时先清理旧的日志和core文件再保存配置。5.5 现象VLANIF地址配置了终端还是ping不通网关现象VLAN 10和VLAN 20都创建了VLANIF 10和VLANIF 20都配了IP终端也设置了正确的网关地址但终端访问网关时丢包或完全不通。display ip interface brief显示VLANIF接口是DOWN或者协议DOWN。原因VLANIF接口DOWN的原因主要有三个。第一这个VLAN里没有任何物理口处于UP状态VLANIF的物理层依赖二层端口所有成员口都DOWN时VLANIF自然起不来。第二设备型号不支持三层转发VLANIF控制面是通的但数据面不转发。第三VLANIF接口配置了IP但交换机上没有对应路由终端发出的数据包到了交换机不知道往哪送。解决先看display ip interface briefVLANIF显示DOWN时回到display vlan确认该VLAN是否有UP状态的物理端口如果端口正常但VLANIF仍DOWN检查所有端口是否同时被其他VLAN占用且物理状态协商异常。排除物理层因素后用display ip routing-table确认路由表里有VLAN 10和VLAN 20的直连路由没有就重新配置VLANIF的IP地址。核心的排障顺序是二层成员口状态 → VLANIF接口状态 → 路由表 → 终端配置不要跳步。6. 验证与维护端口镜像和离线抓包确认VLAN收尾正确再谈批量交付6.1 验证方法二层连通性、抓包和display命令组合VLAN配置完成后不能只看配置命令回显要做真实流量验证。验证分三层第一层确认VLAN内互通第二层确认VLAN间互通第三层确认VLAN Tag出现在正确的位置。第一层和第二层用ping就能测第三层需要抓包。S5700的端口镜像配置可以在线抓包把镜像口配置在一个空闲端口上再用Wireshark接上观察。observe-port 1 interface GigabitEthernet0/0/24 interface GigabitEthernet0/0/1 port-mirroring to observe-port 1 both quitobserve-port指定的是把流量复制到哪个物理口此口不能承载业务port-mirroring to observe-port 1 both表示把双向流量都镜像出去。抓包机上过滤vlan关键字看数据帧里802.1Q的VID值是否符合规划。比如VLAN 10的终端访问VLAN 20的网关在Trunk上抓到去往核心的帧VID应该是20如果看到VID为10说明终端发出的无Tag帧被PVID错误识别回到2.1的PVID概念重新排查。抓包验证做完配置的可靠性基本就能确认。6.2 批量交付技巧端口组、保存配置和备份导出批量配置多台S5700时端口组可以省大量重复劳动但要注意端口组结束后一定要确认脱离组模式否则后续单独改某个端口时可能被端口组的值覆盖。保存配置前把display current-configuration输出保存成文本按日期命名归档这是最简单的备份方案也是后期回退的后悔药。备份文件务必包括三块内容display version确认设备版本display current-configuration确认现网运行配置display saved-configuration确认启动配置。前两块在排查“配置漂移”时用来对比最后一块在设备重启后用来验证配置是否真的保存住了。VLAN规划调整比较大的改动也可以在模拟器里先用一台S5700把命令整体走一遍再上现网执行。模拟器验证的不是命令本身而是你规划的VLAN编号、接口归属和IP地址之间是否自洽。我自己做过的项目里因为赶进度跳过抓包验证第二天被定位到PVID配置错误的情况不止一次。现在我的习惯是每完成一组VLAN设置就花三分钟做一次带Tag的抓包确认把问题留在配置阶段不给后期排障添麻烦。S5700的VLAN配置本身不复杂复杂的是前后端接口类型匹配、PVID一致性和三层接口分工这三件事把住了项目基本就稳了。希望帮到你。本文还有配套的精品资源点击获取