Your design requires that you not do any bridging or hardware switching between the ethernet interfaces.
In your drawing:
ether2 - master-port=none
ether3 - master-port=none
…
For vlan-capable WiFi, put VLAN interfaces on ether2:
/interface vlan
add name=wireless1 interface=ether2 vlan-id=11
add name=wireless2 interface=ether2 vlan-id=12
add name=wireless3 interface=ether2 vlan-id=13
…
Then
/ip address
add address=192.168.2.1/24 interface=ether3
add address=192.168.3.1/24 interface=ether4
…
add address=192.168.1.1/24 interface=wireless1
add address=192.168.5.1/24 interface=wireless5
…
Basically, anywhere you want a separate LAN segment, make sure there’s no bridging or switching and just put an IP address and DHCP server instance on each interface.
If you want no communication between the LANs in general, just use an IP firewall filter forward chain like this:
- fasttrack-connection connection-state=established,related
- accept connection-state=established,related
- accept out-interface=ether1
- drop
If you want ether3 to be able to reach into all other lans, but nothing to be able to reach into ether3, then insert this rule before rule 4:
accept in-interface=ether3
If you want ether3 to be able to reach into ether4 and ether5 but nothing else, instead of the above rule, add these before rule 4:
accept in-interface=ether3 out-interface=ether4
accept in-interface=ether3 out-interface=ether5
I highly recommend using interfaces instead of IP ranges.
Whether you use IP ranges or interface names, though, the general idea is to make a default policy of DROP EVERYTHING, and put exceptions before this default - otherwise, if you explicitly block 1->2, 1->3, 1->4, 1->5, 1->6, 2->1, 3->1, 4->1, 5->1, 6->1, 2->3,2->4,2->5,2->6,3->2,4->2,… this explodes to a huge list of combinations very quickly… note that I didn’t even list all combinations above, just for 6 networks.