Hello fellow tech enthusiasts,
I would like to use mwan3 in a load balanced configuration, whilst maintaining the upstream consumer mesh WiFi networks with WiFi 6E / 7, and allowing all devices across the 3 routers to communicate with each other.
Here is my current network topology and configuration:
Notes on network configuration:
1. WiFi radios are disabled on GL-MT6000 router.
2. Running OpenWrt 24.10.1 r28597-0425664679 (mediatek-filogic-glinet_gl-mt6000).
3. Repurposed lan5 port for wanb instead of lan1 port (as only needed 1 Gbps max WAN link for wanb).
4. Repurposed lan1 port for 2.5 Gbps (to enable 2.5 Gbps max link on LAN to 2.5 Gbps switch).
5. lan3/lan4 ports are not used.
6. LAN ports are used on WAN routers for connection into OpenWrt router LAN ports. WAN ports on WAN routers are connected to FTTH modems.
7. wan zone requires masqueraing enabled for mwan3 to work and allow LAN devices on 192.168.1.x to access the internet.
8. Static routing is not available on consumer routers.
Load balancing works as expected and is stable, not maxing out 2 x 1 Gigabit WAN links on a 2.5 Gigabit LAN link, but that is a separate issue to investigate.
The main issue is that devices with IP addresses, 192.168.0.x, 192.168.2.x and 192.168.1.x from different routers (but same subnet 255.255.255.0) cannot talk to each other across wan, wanb, and br-lan.
Things I have tried:
1. Disabling DHCP servers on WAN, and WANB, but then Wi-Fi clients on WAN/WANB mesh routers cannot communicate with the OpenWrt DHCP server, and fail to recieve a DHCP IP address due to consumer router limitations.
2. Ensured firewall has been configured with Accept/Accept/Accept for all zones (as Firewall is implemented and managed at each WAN router) and allowed traffic rules for specific use cases such as Allow-DHCP-Renew ports 67/68 from WAN <-> LAN.
3. DHCP relay configuration of 192.168.0.1 **or** 192.168.2.1 as master, using odhcpd or dhcp-forwarder, neither work due to consumer router limitations which limit broadcast to a different IP subnet to itself.
There is likely to be an easier way to achieve this, but I am not finding the solution as yet.
Any ideas or help would be much appreciated?