Table of Contents

FIXME 本文通过AI翻译,可能不准确

Wi-Fi漫游

在较大的网络部署中(例如大型家庭网络或商业部署),通常会配置多个不同的接入点(AP),它们都广播相同的SSID(Wi-Fi网络名称)并使用相同的认证方法和凭证。

目的是让Wi-Fi客户端选择“最佳”的接入点(或者说“BSSID”)进行连接。如果网络条件发生变化,或者客户端被物理移动到不同的位置,那么“最佳”的BSSID可能会改变。

即使只有一个接入点存在,客户端也可能倾向于从一个无线电频率带断开连接,并在另一个频率带上重新连接(例如从5GHz切换)。也就是说,单个物理接入点可能有两个或三个不同的BSSID,每个它支持的频率带上都有一个,而“漫游”在它们之间看起来就像是在不同接入点之间发生的过渡。

Wi-Fi标准将从多个接入点提供相同SSID的配置称为扩展服务集(ESS)。

随着时间的推移,Wi-Fi标准中添加了一些可选功能,以尝试提高ESS内的漫游性能。这些包括:

802.11r 快速过渡

当加入(“与”)启用了安全功能的无线网络时,无线客户端和BSS(通常是接入点上的一个典型无线电)之间会发生“4次握手”。在“企业”EAP / 802.1X类型认证的情况下(即每个用户都有自己的认证凭证),这个过程可能特别耗时,因为认证步骤可能涉及一个远程认证服务器。

没有802.11r的情况下,漫游(过渡到不同的BSS)会重复相同的认证过程。在此期间,网络流量会被中断。802.11r旨在通过在过渡到新的BSS期间进行更短的数据包交换(例如总共4个数据包对比8个)来加速漫游(注:新的BSS也可能在同一物理接入点上,如果客户端在2.4GHz和5GHz无线电之间切换)。

当使用“企业”EAP / 802.1X类型认证时,802.11r特别有益,因为不需要额外的(可能高延迟的)往返到认证服务器。有关一些现实世界的例子和时间,请参见“附加资源”部分中链接的WLPC演讲视频。

配置

OpenWrt支持的与802.11r相关的全部选项可以在 here in the documentation中找到。

要使用Luci Web界面进行配置,请转到“网络→无线”,并在每个“SSID”上点击“编辑”,滚动到“接口配置”选项卡,选择“WLAN漫游”,勾选“802.11r快速过渡”框,并输入一个4位数的“移动域”,该域与您其他启用802.11r的路由器/AP上的相同SSID匹配。

不支持或有限支持802.11r的Wi-Fi客户端

不支持802.11r的客户端应该能够连接到启用了802.11r的网络,但是一些有缺陷的客户端已知会拒绝连接到启用了802.11r的网络,或者有其他问题行为。解决这个问题的方法是为这些设备创建一个单独的“传统”SSID,该SSID禁用了802.11r,仅供这些设备连接。在某些情况下,升级客户端固件、驱动程序或操作系统可能会解决问题。

验证客户端802.11r支持

要检查802.11r是否正常工作,将log_level设置为1(参见 Common Options) ,并在漫游后在系统日志中查找“FT authentication already completed - do not start 4-way handshake”消息。

还可以通过检查客户端发送的“关联请求”帧来验证客户端是否使用802.11r。验证“认证密钥管理类型”是否包括“FT”(快速过渡)。

在下面的数据包捕获截图中,Wireshark使用了过滤器wlan.fc.type_subtype == 0。可以看到客户端请求使用802.11r - “认证密钥管理类型”设置为“FT using SAE”(即802.11r快速过渡,使用WPA3 SAE预共享密钥)。

当使用802.11r时,这可以在每个关联请求帧中找到,在IEEE 802.11 Wireless ManagementTagged parametersRSN InformationAuth Key Management (AKM) List下。

802.11k 和 802.11v

“hostap”管理软件是OpenWrt的一个关键部分,它负责广告Wi-Fi网络和认证Wi-Fi客户端。hostapd包括对802.11k和802.11v的支持,但依赖外部软件来做出漫游建议并提供替代BSSID列表等。OpenWrt包含可以执行这些功能的软件包,旨在同时管理802.11k和802.11v。一次只能激活一个:

仅实现802.11k的替代软件包包括:

附加资源