There's no handling of WDS from AP-to-AP in OpenWRT's wireless config file for madwifi (wds_add). This patch tries to fix this. Example:
# Router1 - Wireless MAC 00:11:11:11:11:01 config 'wifi-iface' option 'device' 'wifi0' option 'network' 'lan' option 'mode' 'ap' option 'wds' '1' option 'ssid' 'guifi.net-test-radio0' option 'wds_add0' '00:11:11:11:11:02' option 'wds_add1' '00:11:11:11:11:03' # Router2 - Wireless MAC 00:11:11:11:11:02 config 'wifi-iface' option 'device' 'wifi0' option 'network' 'lan' option 'mode' 'ap' option 'wds' '1' option 'ssid' 'guifi.net-test-radio0' option 'wds_add0' '00:11:11:11:11:01' # Router2 - Wireless MAC 00:11:11:11:11:03 config 'wifi-iface' option 'device' 'wifi0' option 'network' 'lan' option 'mode' 'ap' option 'wds' '1' option 'ssid' 'guifi.net-test-radio0' option 'wds_add0' '00:11:11:11:11:01' New WDS interfaces will be created for each radio: Router1: ath0 ath0.wds0 # WDS to Router2 ath0.wds1 # WDS to Router3 Router2: ath0 ath0.wds0 # WDS to Router1 Router3: ath0 ath0.wds0 # WDS to Router1 Signed-off-by: Joan Llopart <joan.llopart at guifi dot net>
Index: package/madwifi/files/lib/wifi/madwifi.sh =================================================================== --- package/madwifi/files/lib/wifi/madwifi.sh (revision 13122) +++ package/madwifi/files/lib/wifi/madwifi.sh (working copy) @@ -287,6 +287,19 @@ [ -n "$ssid" ] && iwconfig "$ifname" essid on iwconfig "$ifname" essid "$ssid" set_wifi_up "$vif" "$ifname" + + cont=0 + config_get "wds_add$cont" "$vif" "wds_add$cont" + eval wds_add=\$"wds_add$cont" + while [ $wds_add ] + do + iwpriv "$ifname" wds_add "$wds_add" + ifconfig "$ifname.wds$cont" up + cont=$((cont+1)) + config_get "wds_add$cont" "$vif" "wds_add$cont" + eval wds_add=\$"wds_add$cont" + done + case "$mode" in ap) config_get_bool isolate "$vif" isolate 0
_______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org http://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel