
1. WLAN基本概念从名词到组网思路上个月帮朋友处理一个宿舍区WLAN项目的问题现象特别典型晚上8点之后用户连上Wi-Fi也上不了网信号满格但手机一直转圈。登录AC一看关联用户数并不多可DHCP服务器已经快到极限——整个宿舍区600多个终端挤在同一个VLAN里广播报文满网跑地址池也就剩几十个地址。这个问题的标准解法是让无线用户自动分散到多个业务VLAN里。可你总不能要求每个用户自己去改终端配置吧于是就需要一个能自动分配VLAN的机制也就是VLAN Pool。这篇文章我不打算只贴命令而是把WLAN的基本概念和VLAN Pool的配置串起来讲清楚。如果你正在用华为AC做WLAN项目或者正在备考HCIE-WLAN想把原理落到命令上这篇文章应该能省你不少事。前半部分是概念铺垫后半部分是配置和排障完全可以当项目笔记用。1.1 WLAN、Wi-Fi、802.11到底是什么关系很多人把WLAN和Wi-Fi当成同一个词实际不一样。WLAN全称是Wireless Local Area Network无线局域网属于通信领域的一个大类概念。Wi-Fi是一个商业联盟的互操作认证品牌底层基于IEEE 802.11系列标准。打个不太严谨的比方WLAN是“装东西的筐”Wi-Fi是筐里最常见的那几件货你可以说Wi-Fi属于WLAN但不能说WLAN一定就是Wi-Fi。IEEE 802.11这个标准定义了无线报文怎么封装、调制方式用哪种、在什么频段上工作。从802.11n到802.11ac再到802.11ax、802.11be分别对应Wi-Fi 4、Wi-Fi 5、Wi-Fi 6、Wi-Fi 7。这些协议演进通常只需要射频硬件和控制器软件升级对上层网络规划的影响并不算颠覆性。真正影响工程配置的仍然是SSID、VLAN、DHCP这些老伙计。我见过不少朋友一上来就研究各种协议细节把大量时间花在“802.11ax的MU-MIMO怎么调度”上结果到了项目现场连AP上线都搞不定。做WLAN工程基础协议当然要懂但绝大多数故障都出在VLAN放通、DHCP分配、路由可达这些有线网络的老问题上。所以心态要放平无线协议是外衣IP网络才是内核。1.2 无线网络里的角色STA、AP、AC、SSID、BSSID搞WLAN组网有几个名词必须焊死在脑子里。STAStation无线终端手机、笔记本、摄像头、扫码枪都算。APAccess Point接入点负责射频信号收发和报文转换是无线和有线网络的桥梁。ACAccess Controller无线控制器负责统一管理AP、下发配置企业组网里几乎离不开它。SSID就是终端上显示的那个网络名称比如你手机里看到的Office-WiFi、Student-WiFi。BSSID通常对应AP某个射频的MAC地址相当于这个无线小区唯一的门牌号。把这几个角色拉通之后你会发现无线组网的本质其实是STA通过AP接入AP把无线帧转换成以太网帧再送进有线网络。所以数据报文一旦出了AP后续的处理逻辑和有线网络完全一致。这一点特别重要因为VLAN Pool的配置本质就是无线接入侧和有线交换侧如何配合的问题。SSID和VLAN的映射关系也要提前想清楚。小型组网经常是一个SSID对应一个VLAN逻辑简单大型场景则是一个SSID对应多个VLAN终端连上同一个SSID却被分配进不同网段。VLAN Pool解决的就是后面这个场景里的分配问题。STA关联SSID只是第一步真正让终端上网的是后续的报文转发而VLAN直接决定了数据报文进入哪个二层广播域、从哪个IP子网获取地址。1.3 频段、信道与射频覆盖设计和VLAN规划是两件事工程上还有一个基础概念集群是逃不开的频段与信道。2.4GHz频段传播损耗小、绕射能力强但干扰源特别多5GHz频段速率高、干扰少覆盖范围相对小。新一点的高端设备还支持6GHz用于Wi-Fi 6E和Wi-Fi 7。同一个射频只能工作在某个信道上相邻AP就要尽量避免同频干扰所以正常项目都要先做信道规划2.4G一般使用1、6、11这类不重叠信道5G信道资源更丰富规划起来灵活很多。但我必须提醒一句射频规划解决的是“能不能连上、连上后速率稳不稳”VLAN Pool解决的是“连上之后分到哪个网段”两者不要混在一起。很多朋友上来就问VLAN Pool怎么配却不考虑信道和覆盖结果配置全对用户体验依然糟糕。正确流程是先做覆盖和漫游设计再做VLAN和地址规划最后才轮到AC配置。这一章说的概念只是后面的地基。2. 组网架构与转发模式配置VLAN Pool之前必须想清楚的事2.1 胖AP、瘦AP与AC的取舍早期无线网络多用胖APFAT AP单台AP独立工作所有配置都存本地适合小规模场景。缺点是数量一多SSID、密码、认证策略都要逐台手工改维护成本极高。所以企业场景几乎无一例外地使用瘦APFIT AP加AC的架构AP只负责射频和数据转发配置与策略统一由AC下发。华为AC产品线很长从盒式的AC6508、AC6605到框式的高端设备选型空间很大。小项目一台盒式AC就能带几十上百个AP中大型园区再考虑更高规格。瘦AP架构最大的优势是集中管理新增AP不需要逐台配置只要把AP的MAC地址和AP组绑定好设备上线后就会自动应用对应策略。这个架构也是VLAN Pool这类集中策略能落地的前提。想象一下如果你维护几十台胖AP想让所有AP上的用户平均分散到多个VLAN基本只能靠手工一条条配做一次大调整就是一场灾难。而在瘦AP架构里AC上改一个VAP模板所有关联的AP会立刻同步效率和一致性完全不在一个量级。2.2 CAPWAP隧道与AP上线的完整流程CAPWAP全称Control And Provisioning of Wireless Access Points是AP与AC之间的标准隧道协议。它有两个核心作用控制隧道负责AP发现AC、协商版本、下载配置数据隧道则是在隧道转发模式下承载用户业务报文把业务流量送回AC再转发到有线网络。一个典型的AP上线流程是这样的AP接入网络后通过DHCP拿到管理IP同时通过DHCP Option 43、广播发现或DNS等方式找到AC地址然后建立CAPWAP控制隧道下载版本和配置如果AC里已经离线导入了AP数据AP上线后状态会从未认证跳成正常。整个过程中AC源接口和AP所在管理VLAN必须三层可达这是最基础的检查项。踩过的坑说一个AP状态一直显示fault查到最后是管理VLAN没放通或AC源接口地址与AP不在同一个三层可达范围。无线控制器的排障思路其实跟有线设备一样先看链路再看协议最后看策略。CAPWAP只是多了一层隧道排查方法没有本质变化。2.3 直接转发还是隧道转发业务流量走向决定配套设计在华为AC上配置VAP模板时第一步就要决定forward-mode这直接影响用户业务流量的走向。直接转发模式下用户数据报文由AP直接送到有线网络AC只负责控制和管理业务流量不经过AC隧道转发模式下用户数据报文会封装进CAPWAP隧道先回到AC再由AC转发出去。两者的取舍用表格对比更直观对比项直接转发隧道转发业务流量路径AP → 上行交换机 → 核心网络AP → CAPWAP隧道 → AC → 核心网络AC负载较低不承载业务流量较高所有用户流量都经过AC业务VLAN终结位置上行交换机或汇聚交换机AC侧典型适用场景园区办公、宿舍区、高密场馆安全管控要求高的集中出口场景这个选择直接影响VLAN Pool的配套设计。直接转发时VLAN Pool里包含的所有业务VLAN必须在上行交换机上做Trunk放通否则用户即使成功分配到某个VLAN后续转发也不通隧道转发时业务VLAN终结在AC侧AC的上行接口要与核心交换机的对应VLAN打通。很多人在配置VLAN Pool后出现“一部分用户能上网、一部分不能上网”的现象排查到最后往往就是漏了这一步。3. VLAN Pool的设计思路与工作原理3.1 为什么需要VLAN Pool一个宿舍网的惨痛教训回到开头那个宿舍网。600个终端挤在同一个业务VLAN里广播报文的数量会随着终端数增长急剧膨胀。每个终端的ARP请求、DHCP请求、邻居发现消息都要广播到整个VLAN再加上个别设备异常发包整片无线网络的时延都会变大DHCP服务器压力成倍增加。有人会说那就手工拆VLAN呗。创建10个VLAN10个网段然后给每台AP手动指定不同的业务VLAN。这样做理论可行但AP一多就极其痛苦楼栋1的AP用VLAN 10楼栋2的AP用VLAN 20将来加一台AP要判断该归到哪个组用户从一栋楼漫游到另一栋楼后网段还会变。每次排查问题都要重新确认AP位置和VLAN对应关系维护成本高到让人崩溃。VLAN Pool就是为这个场景设计的。它把一组VLAN放进一个逻辑池子绑定到SSID或VAP模板上AP会在用户关联时自动选择合适的VLAN。用户始终连接同一个SSID感知不到背后网段的变化网络规划人员也不用再按AP逐个指定VLAN。在华为AC上VLAN Pool可以包含连续或不连续的多个VLAN每个VLAN仍然对应独立的网段和DHCP地址池。3.2 两种负载分担方式基于用户与基于AP华为的VLAN Pool大致分为两种负载分担方式理解它们的区别是配置前的重要功课。基于用户的负载分担是默认也是最常用的方式。AP在用户关联时根据用户MAC地址做一次Hash计算把用户映射到VLAN Pool中的某个VLAN。这样同一个AP下的不同用户很可能被分配进不同VLAN负载分散非常均匀尤其适合高密接入场景比如宿舍、图书馆、大型会议室。基于AP的负载分担方式则是给某个AP上的所有用户固定分配同一个VLAN。优点是能够按AP部署位置规划网段适合安全管控要求更高、希望按区域划分IP网段的业务场景。缺点是同一区域用户多的时候单个VLAN的广播域压力仍然会比较大均衡效果不如基于用户的方式。选择哪种方式主要看业务诉求。目标是让同一区域的大量用户均匀分摊到多个网段选基于用户客户希望“这栋楼就一个网段方便做行为审计或策略下发”选基于AP。我在实际项目中绝大多数场景都会选基于用户除非客户有明确的网段归属要求。3.3 用户接入流程里VLAN Pool到底干了什么理解VLAN Pool的位置最好完整走一遍用户接入流程。第一步STA扫描到SSID完成关联和认证。第二步AP根据配置的负载分担策略决定这个用户进入哪个业务VLAN。基于用户策略时AP先算Hash再选VLAN基于AP策略时直接选择该AP绑定的VLAN。第三步STA发起DHCP Discover请求获取IP地址。这个请求会被打上第二步选出的VLAN Tag送到对应的DHCP服务器或DHCP Relay。第四步DHCP服务器从对应网段的地址池里分配地址STA获得IP开始正常上网。所以VLAN Pool本身并不分配IP地址它只决定用户进入哪个二层域。真正分配地址的是该VLAN对应的DHCP地址池。你可以把VLAN Pool理解成一个分流器它把一堆无线用户按规则引进不同的房间至于每个房间里怎么分配床位是DHCP服务器的事。这个流程想明白之后排障会快很多——用户拿不到IP要么是分流器出了问题要么是房间里根本没有床位可分配。4. 华为AC上配置VLAN Pool的完整实操4.1 配置前的VLAN与地址池规划动手配置AC之前必须先出一张规划表。假设场景是一个中型办公园区规划三个业务VLAN用于无线用户VLAN Pool包含VLAN 100、101、102项目取值说明管理VLANVLAN 10用于AP与AC之间通信业务VLANVLAN 100/101/102无线用户接入VLAN业务网段192.168.100.0/24、192.168.101.0/24、192.168.102.0/24每个VLAN一个网关DHCP地址池分别创建三个网段的地址池网关就是各VLANIF地址SSIDOffice-WiFi终端可见的网络名称认证方式WPA2-PSK小型项目常用大型项目可用802.1X这里我想单独强调一下VLAN Pool里的VLAN数量不是越多越好。每个VLAN都对应一个网段意味着网关、DHCP地址池、路由发布、防火墙策略都要随之增加。如果池子里放了10个VLAN所有相关设备都要多处理10条网段的配置复杂度直线上升。一般建议一个VLAN Pool包含3到10个VLAN具体数量根据终端规模和单网段容量来估算。估算方式可以这么做VLAN Pool包含的VLAN数量约等于峰值终端数除以单个VLAN设计容量。比如某区域峰值终端5000个单个VLAN设计容量500个那么Pool里规划10个VLAN比较合适。单个VLAN设计容量不要贪大除了地址空间限制还有广播域性能、网关转发能力等因素没必要卡得太满。4.2 关键配置步骤与命令参考下面以华为AC的常见配置流程为例基于直接转发模式给出VLAN Pool配置思路。不同产品形态和软件版本命令存在差异实际请以产品文档为准。第一步准备VLAN并配置AC源接口。vlan batch 10 100 to 102 interface Vlanif 10 ip address 192.168.10.1 255.255.255.0 # capwap source interface vlanif 10第二步创建VLAN Pool。vlan-pool pool_office vlan 100 to 102第三步配置安全模板和SSID模板。security-profile name sec_office security wpa2 psk pass-phrase Huawei123 aes # ssid-profile name ssid_office ssid Office-WiFi第四步配置VAP模板绑定VLAN Pool。vap-profile name vap_office forward-mode direct-forward vlan-pool pool_office ssid-profile ssid_office security-profile sec_office这里特别提示一句不同版本的AC里VAP模板绑定VLAN Pool的命令写法可能不同。有些版本用vlan-pool有些版本用service-vlan vlan-pool还有部分早期版本命令路径完全不同。建议配置前先进入对应模板用问号补全功能确认实际支持的关键字不要凭记忆写命令。第五步配置AP组并把VAP模板下发到射频。ap-group name ap-group1 vap-profile vap_office wlan 1 radio 0如果是双射频APradio 1也要绑定对应的VAP模板。VAP模板下发后AC会通过CAPWAP自动同步到AP。这一步如果漏掉终端可能看不到SSID或者看到SSID但关联不上又或者关联上却拿不到地址。配置顺序和vap-profile绑定关系是值得反复检查的地方。4.3 配置生效后的验证方法配置完成不要急着结束先把状态验证一遍。常见检查命令如下display wlan ap all查看AP是否在线状态是否正常display vlan-pool查看VLAN Pool是否存在包含哪些VLANdisplay vap-profile name vap_office确认VAP模板里绑定的VLAN Pool、SSID、安全策略display station all查看当前关联的终端和对应的VLAN在核心交换机或AC上查看DHCP地址池使用情况确认每个池都在按预期分配。我自己的习惯是配置完成后先连一台测试终端连续断开重连几次观察IP网段是否变化。如果把Pool里的VLAN对应三个网段重连时终端可能拿到100网段下一次变成102网段这说明VLAN Pool已经生效。如果测试终端一直固定在一个网段也不一定错Hash算法可能连续选择了同一个VLAN多换几台设备测试就能看到分布。5. 常见问题与排查技巧实录5.1 信号满格却获取不到IP先按这个顺序查这个问题我遇到最多。信号满格只代表射频层关联成功不代表二层数据通路没有问题。排查顺序建议这样先看STA关联状态。执行display station all确认终端是否关联成功以及VLAN分配是多少。如果关联成功但VLAN为空或显示0多半是VLAN Pool没有正确下发到VAP模板。接着确认VLAN Pool和VAP模板的绑定关系执行display vlan-pool和display vap-profile逐项核对。再看DHCP链路。直接转发模式下用户DHCP请求直接从AP送到上行交换机所以上行交换机必须放通VLAN Pool里的所有VLAN。一个特别常见的坑是接入交换机只放通了VLAN 100但Pool里包含100、101、102于是被Hash到100的用户正常被Hash到101和102的用户全部拿不到地址。注意配置了VLAN Pool之后关联该SSID的所有上行链路包括接入交换机、汇聚交换机、核心交换机都要把VLAN Pool内的所有VLAN放通。否则就会出现“一部分用户正常一部分用户掉线”这种特别难排查的现象。5.2 VLAN Pool分配不均别急着怀疑算法基于用户的Hash算法在终端数量比较多的时候会趋于均匀。但如果某天你发现某个VLAN的用户数明显比其他VLAN多不要第一时间怀疑算法出了问题先看两点。第一终端总数是不是太少。十台设备分三个VLAN某个VLAN里一个用户都没有很正常。Hash算法是概率均衡不是精确轮询样本量足够大时才稳定。第二确认VLAN Pool是不是误配成了基于AP的负载方式。如果同一个AP下所有用户都在同一个VLAN基本就是基于AP的方式均衡性差是正常的如果业务要求每用户均匀分布改成基于用户的方式即可。如果以上都没问题但VLAN之间始终差很多可以检查一下是否大量终端一直没有重新关联。有些终端休眠唤醒后不会主动重新发起关联导致VLAN长期不变化。这种情况属于无线终端的正常行为一般不用处理。真要较真可以在AC侧配置空闲关联老化逼终端定期重连。5.3 漫游后IP地址变化与业务中断的处理VLAN Pool在漫游场景下有一个特别值得注意的点。当用户从AP1漫游到AP2时如果两个AP绑定了同一个VLAN Pool且采用基于用户的Hash算法用户理论上会被映射到同一个VLAN因为Hash结果主要由用户MAC决定和目标AP无关IP地址不会变化。但如果采用基于AP的VLAN Pool方式用户漫游到另一个AP后就会被分配到新AP对应的VLAN原来的IP地址就失效了终端只能重新DHCP获取地址这中间会产生一段时间的中断。对于语音视频这类对连续性要求很高的业务体验会非常差。所以凡是需要无缝漫游、业务不能中断的场景建议优先使用基于用户的VLAN Pool。如果必须按AP划分网段就要提前和业务方确认漫游时IP变化的容忍度或者靠终端侧的自动重连机制来缓解。这是我实际踩过坑才意识到的问题规划阶段一定先问清楚客户有没有漫游类业务。5.4 版本差异、操作习惯与问题速查表华为AC的软件版本迭代比较快不同版本里VLAN Pool相关命令的命名和配置路径有过调整。曾经有朋友照着老版本命令在新版本上配置发现没生效其实是关键字变了。排查时先执行display version确认版本再用命令行问号补全确认功能是否存在这是最稳妥的做法。还有一个容易被忽略的习惯问题配置完VLAN Pool后建议把所有关键配置导出备份并记录变更时间、变更人和变更内容。VLAN Pool涉及多个VLAN和地址池的联动一旦上线后出现问题有完整的变更记录能大幅缩短排查时间。最后做一个速查表方便现场参考问题现象可能原因快速排查命令AP显示fault管理VLAN不通、AC源接口不可达display wlan ap all、ping管理地址用户信号满格但拿不到IPVLAN Pool绑定错误、上行未放通VLAN、DHCP池耗尽display station all、display vlan-pool部分用户不通、部分正常交换机只放通了部分Pool内VLANdisplay port vlan、display trunk同一AP下用户全在同一VLAN误配为基于AP的负载方式display vlan-pool漫游后IP变化基于AP的VLAN Pool方式导致确认业务需求后切换基于用户方式我后来复盘那个宿舍网项目时最大的感受是这个项目真正难的不是配置命令而是前期的VLAN和地址池规划。只要把用户规模、广播域容量、DHCP池大小算清楚再理解VLAN Pool的分配机制配置本身半小时就能完成。可如果没想明白原理就上手敲命令出了问题往往要折腾好久甚至连排查方向都找不到。你去看华为的WLAN认证资料VLAN Pool这个知识点占比不重但在真实项目里它经常是决定用户体验的关键一环。