802.11s is a Layer 2 mesh: nodes can see one another as if they were connected to one switch, while DHCP, routing, or Batman/OLSR sits above it. I check the driver and wpad first; a mesh interface alone does not mean every radio supports mesh point mode.1
Prerequisites and limits
The source records reliable operation with OpenWrt 19.07 and later when the hardware/driver supports it and wpad-mesh-openssl (or an equivalent) is installed. It also records an ARP relay issue in 19.07.4 that made Mesh Points reliable only within range of a Mesh Portal. I therefore verify the release and topology before production use.
All nodes need the same channel, mesh ID, and password. If another routing protocol such as OLSR will run above the mesh, set option mesh_fwding '0'; clients reach the network by bridging the ap and mesh interfaces according to the local design.
Remove and install wpad
Depending on whether the image has wpad-mini or wpad-basic, remove the installed package and install the mesh variant:
| |
| |
Configure wireless
The source interface uses radio0, network mesh, mesh mode, a mesh ID, and a PSK. your-secret-password is a placeholder; I replace it with a private value at deployment time and never commit a real secret:1
| |
Inspect mesh parameters with:
| |
After editing /etc/config/wireless, reinitialize Wi-Fi and watch the log and station dump:
| |
Check hardware support
iw list must show mesh point under Supported interface modes. The source gives two valid interface-combination examples; both matter because different radios permit AP + mesh point with different channel/BI limits:
| |
| |
| |
If mesh point is absent, stop and choose a supported driver/radio rather than forcing the configuration.
Use the command line
The source CLI branch creates mesh0 on phy0, confirms it, brings it up, and assigns example address 10.0.0.1:1
| |
| |
| |
| |
For a real deployment, replace the address with the Layer 3 design; assigning the same address to multiple nodes creates a conflict.
Verify peers and mesh paths
Inspect stations and mesh paths with:
| |
The example includes signal, TX bitrate, counters, mesh plink: ESTAB, and llid/plid. I use these fields to confirm a peer link, then measure throughput and latency at the actual locations; ESTAB alone does not guarantee a fast backhaul.
| |
Block one peer
When a MAC must be isolated, the source notes that iw-full may be needed, then uses:
| |
| |
Verify with the station dump above. To reopen the peer:
| |
The source notes that plink_action is not persisted across every reconnect. This is runtime state, not a durable ACL.
Final checks and recovery
I test every node with wired and wireless clients, inspect the bridge, DHCP, channel, encryption, logs, and the path to the Mesh Portal. If the configuration removes management access, restore /etc/config/wireless from console or failsafe; do not copy radio/port mappings from another model.
Sources
https://openwrt.org/docs/guide-user/network/wifi/mesh/80211s — OpenWrt Wiki – 802.11s based wireless mesh network. Independently adapted from the 2021-05-17 snapshot; version and driver limits must be checked against the current release. ↩︎ ↩︎ ↩︎


Góp Ý / Bình Luận / Đánh giá