无线设备的网卡在初始化连接时,周围存在多个相同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配置参数

/interface bridge

add name=bridge1 priority=0x8001 protocol-mode=rstp

/interface bridge port

add bridge=bridge1 interface=ether1

 

/ip address

add address=192.168.11.50/24 interface=bridge1 network=192.168.11.0

 

/ip route

add distance=1 gateway=192.168.11.1

 

/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配置参数

/interface bridge

add name=bridge1 priority=0x8002 protocol-mode=rstp

/interface bridge port

add bridge=bridge1 interface=ether1

 

/ip address

add address=192.168.11.51/24 interface=bridge1 network=192.168.11.0

 

/ip route

add distance=1 gateway=192.168.11.1

 

/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配置参数

/interface bridge

add name=bridge1 priority=0x8010 protocol-mode=rstp

/interface bridge port

add bridge=bridge1 interface=ether1

/ip address

add address=192.168.11.55/24 interface=bridge1 network=192.168.11.0

 

/ip route

add distance=1 gateway=192.168.11.1

 

/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个包