基于Connect-list的Station无线漫游
无线设备的网卡在初始化连接时,周围存在多个相同SSID的AP基站,始终会选择信号强度最好的AP基站,这里我考虑使用connect-list去完成这个操作,通过connect-list完成对AP基站的匹配(事先要输入AP基站的MAC地址)信号强度,当连接AP基站的信号强度低于一定设定值后,会断开无线连接,这样station会尝试连接到connect-list中其他AP基站,且信号范围在给定的值内。
- 测试的设备:RouterBOARD设备RB951Ui-2HnD
- RouterOS版本:v6.38.1
- 基本配置情况:2台做ap-bridge,1台做station-wds,所有设备建立rstp的WDS漫游网络,2台设备ap-bridge无线参数配置相同,启用wds-dynamic,添加到bridge1
- 测试环境:室内
网络拓扑如下:
根据以上的配置,下面通过配置脚本的形式给出
AP1配置参数
创建bridge,开启rstp
/interface bridge add name=bridge1 priority=0x6000 protocol-mode=rstp /interface bridge port add bridge=bridge1 interface=ether1
设置bridge1的IP地址
/ip address add address=192.168.11.50/24 interface=bridge1
添加路由
/ip route add distance=1 gateway=192.168.11.1
配置wlan1无线网卡为ap-bridge模式,并设置桥接网卡为bridge1
/interface wireless set [ find default-name=wlan1 ] area=mik band=2ghz-b/g/n channel-width=20/40mh disabled=no mode=ap-bridge radio-name=AP1 ssid=mik1 wds-default-bridg bridge1 wds-mode=dynamic-mesh wireless-protocol=802.11
AP2配置参数
创建bridge,开启rstp
/interface bridge add name=bridge1 priority=0x7000 protocol-mode=rstp /interface bridge port add bridge=bridge1 interface=ether1
设置bridge1的IP地址
/ip address add address=192.168.11.51/24 interface=bridge1
添加路由
/ip route add distance=1 gateway=192.168.11.1
配置wlan1无线网卡为ap-bridge模式,并设置桥接网卡为bridge1
/interface wireless set [ find default-name=wlan1 ] area=mik band=2ghz-b/g/n channel-width=20/40mh disabled=no mode=ap-bridge radio-name=AP2 ssid=mik1 wds-default-bridg bridge1 wds-mode=dynamic-mesh wireless-protocol=802.11
station配置参数
创建bridge,开启rstp
/interface bridge add name=bridge1 priority=0x8000 protocol-mode=rstp /interface bridge port add bridge=bridge1 interface=ether1
设置bridge1的ip /ip address add address=192.168.11.55/24 interface=bridge1
添加路由
/ip route add distance=1 gateway=192.168.11.1
配置wlan1无线网卡为station-wds模式,并设置桥接网卡为bridge1
/interface wireless set [ find default-name=wlan1 ] area=mik band=2ghz-b/g/n disabled=no \ mode=station-wds radio-name=Client ssid=mik1 wds-default-bridge=bridge1 \ wds-mode=dynamic-mesh wireless-protocol=802.11
/interface wireless connect-list add interface=wlan1 mac-address=E4:8D:8C:60:B6:CD security-profile=default \ signal-range=-50..1 add interface=wlan1 mac-address=E4:8D:8C:BD:14:D1 security-profile=default \ signal-range=-50..1
测试结果:
在不使用脚本判断网卡信号强度低于多少的情况下,通过connect-list判断信号来切换AP是可行的,切换时会丢2-3个包。注意由于是室内环境测试,signal-rang设置为-50到1dBm较高范围,因此如果是实际的应用场景,需要更加实地信号勘察后作出signal-rang的配置。
以上测试是基于802.11协议,当改为nv2协议后,connect-list切换会失效,修改connect-list参数时,wireless应用导致CPU 100%(问题已经回馈给mikrotik,并得到回复在后续版本会修正),如果禁用启用网卡方式切换,会丢38个包
文章很值,打赏犒劳作者一下