OpenWrt上搭建Wi-Fi Mesh网络:从拓扑结构到配置详解
OpenWrt上的Wi-Fi Mesh网络利用802.11s协议构建自组织结构。每个节点充当中继器,通过最优路径路由流量。这与传统中继器不同:在Mesh网络中,数据仅沿必要路径传输,从而最小化负载。
物理拓扑决定设备放置,而逻辑拓扑定义数据包路由。主要类型包括:
- 总线型:顺序连接,节省线缆,但中断会分段网络。
- 环型:闭合的总线型,对单点故障具有弹性。
- 星型:每个节点连接到中心枢纽,隔离故障但需要更多线缆。
- Mesh型:多重连接,通过备用路径实现自愈。
在无线Mesh中,L2层的Mesh与客户端的星型拓扑结合。回程是路由器之间的无线骨干网。
设计节点布局
几何布局比发射功率更重要。如果所有节点都能相互看到,会发生干扰:节点通过CSMA/CA竞争空中时间,将吞吐量降至最低(“Mesh死亡”效应)。
最优布局规则:
- 每个路由器恰好看到两个邻居——最大化空中时间,形成总线拓扑。
- 闭合为环型以提高容错性和负载均衡。
- 在关键点添加第三个邻居以实现冗余。
示例:
- 2个节点:任意放置。
- 3个节点:WAN路由器位于中心。
- 4个节点:在狭长空间中——线性排列,WAN位于第2或第3位;否则,第一个看到第2和第3个,它们看到第4个。
安装前绘制示意图,考虑墙壁和干扰。
802.11s理论与多AP的区别
Mesh(802.11s)不仅仅是多个接入点上的SSID。节点交换管理帧以进行发现、路由(HWMP)和度量。支持多跳流量。
与基于控制器的系统(如CAPWAP)的区别:
- 无需中心节点的自组织。
- 故障时自动重新配置。
- 本地流量路由。
在OpenWrt中,Mesh通过/etc/config/wireless中的wifi-device和wifi-iface部分配置,使用mesh_id选项。
OpenWrt中的基本Mesh设置
在主节点(网关)上:
config wifi-device 'radio0'
option type 'mac80211'
option channel '36'
option hwmode '11a'
option path 'pci0000:00/0000:00:00.0'
option htmode 'HT80'
option country 'RU'
config wifi-iface 'mesh_backhaul'
option device 'radio0'
option network 'lan'
option mode 'mesh'
option mesh_id 'my_mesh_net'
option encryption 'sae'
option key 'mesh_password'
option mesh_fwding '1'
在叶子节点上类似,但没有WAN。所有节点共享相同的mesh_id。
对于客户端:
config wifi-iface 'ap_client'
option device 'radio1'
option mode 'ap'
option ssid 'ClientSSID'
option encryption 'psk2'
option key 'clientpass'
option network 'lan'
分离无线电:一个用于回程(5 GHz),另一个用于客户端(2.4 GHz)。
漫游与参数优化
无缝漫游需要802.11r/k/v。在OpenWrt中:
option ft_psk_generate_local 1用于FT。option ieee80211r '1'。- 所有AP上设置
option mobility_domain 'abcd'。
关键参数:
option max_neightbours 32——邻居限制。option mesh_rssi_threshold 0——发现阈值。option metric_mode 'default'——路径选择(空中时间)。
测试RSSI:回程目标为-20至-60 dBm。
扩展与监控
网络超过10个节点需要VLAN用于回程、QoS(cake/sqm)。监控:使用batman-adv over mesh或LuCI统计。
问题与解决方案:
- 速度低——减少邻居,优化信道。
- 故障——检查环型拓扑。
- 过热——双无线电,通风。
关键要点:
- 按“2个邻居”规则放置节点以提高空中时间效率。
- 使用环型拓扑实现容错。
- 分离无线电:5 GHz回程,2.4 GHz客户端。
- 启用802.11r实现无缝漫游。
- 监控RSSI和空中时间以进行优化。
— Editorial Team
暂无评论。