Wanted to use some cheap dual-band APs running OpenWRT to work as extenders sharing 5GHz uplink to IOT devices on 2.4GHz.
But problem is that OpenWRT client can't do bridged traffic. Only other option is to use WDS, but that also doesn't work.
I have set up test like this:
- Routerboard AP (ap bridge,802.11n,20MHz,802.11,WDS mode: static,open/no security) + I added WDS interface (master is the AP,WDS address is wlan MAC of OpenWRT box)
- Client OpenWRT configured as WDS Client connecting to the AP above, connected is PC that's generating some traffic to be relayed (ARP requests)
- SXT used as wireless sniffer to capture what's going on
Before testing WDS I have verified everything works in normal 802.11 non-WDS mode without problems.
After switching to WDS, I can see WRT connects to the ROS correctly and it appears in the Registration table. In statistics tab I can see increasing numbers for Rx frames corresponding to the ARP packets generated... but that's about all. WDS interface counters all stay at zero and it's not running. The AP interface gets "Running" flag when client it associated, but again all counters are just zero.
Looking at the WLAN channel captures, I can see WDS client successfully associates to the AP and then client tries to sends some packets (the ARP requests) to AP using QOS data frame type with 4 addresses (all correct). Then I can see Routerboard AP to correctly ACK these packets... so ROS is certainly receiving some data. But these frames are then just dropped at some point.
I have tried all available WDS options and types (static,dynamic,mesh,...) and various AP options (forwarding,wmm,adding client to access list,...) without any luck.
Is there some magic proprietary ROS packet that's missing that would activate the WDS interface? Or what it is waiting for?
Also I noticed that Routerboard started sending some malformed packets at some point that just doesn't make any sense:
The packet ends just after LLC, there is no IP packet or any bytes that follows. And after sending a lot of these packets, AP drops the client for "extensive data loss".
Overall I don't see anything wrong on the OpenWRT side, but I see a lot of weirdness on the ROS side...