I’ve been setting up VLANs for security and while it’s better than nothing, I’ve been realizing more and more that it’s not really what I want.
Having a big pool of “IoT devices” separate from a big pool of “PoE cameras” from a big pool of “homelab servers” from a big pool of “personal computers” is still, iiuc, a long ways from a “zero trust”–style architecture.
The thing is, there’s usually very little need — at least as a default status quo — for devices within each pool to talk to each other either. So it’s great that my PoE cameras can’t hack directly at the homelab servers, but why can the cameras probe at each other? Likewise with the servers, most of the services running thereon don’t need any larger blast radius than themselves alone. Certainly there would be a few connections between them here and there, but for the most part they should all be isolated from each other too.
I think what I want, rather than an IoT vlan is an IoT firewall zone. Likewise rather than a services network, those services would be grouped in a zone. And I would turn off forwarding within most all of these zones. Really most of the interesting work happens between zones: I don’t shares files between individual laptops, or have much interaction between hosted services, but rather “all the isolated laptop zone devices” should be able to access “all the isolated host zone devices” kinda in funnel fashion!
Where I’m stuck is that with OpenWrt it seems like implementing this would require setting up a separate interface per device and/or service in the UI! And then since these devices/services are physically all over the house plugged into a bunch of different auxiliary managed switches I’d also need a separate VLAN per device/service as well? That’s a lot of set up and a lot of VLANs!
Looking into how many VLANs is “too many VLANs” I found some discussion on more enterprise-grade networking forums they’re talking about not using VLANs for security. Instead they’re using port isolation and using routing/firewall to manage traffic. But iiuc port isolation doesn’t really work in OpenWrt, and especially not with DSA switches?
Is there any reasonable way with OpenWrt to set up a “subnetwork” where all the devices are isolated by default? Just thinking in terms of how switches themselves work it seems fairly infeasible without either this mythical “port isolation” (i.e. packets never go directly between ports 1–7 but only the uplink port 8) or VLANs.
Now the wiki says that OpenWrt supports not just 802.1q but also 802.1ad VLAN standards. The latter being stacked (“QinQ”) VLANs! What I imagine using this for would be giving each device a nested VLAN ID within the overall VLAN class. So I’d still have an IoT VLAN but inside that each device would be on its own. Has anyone else done this? I don’t see much discussion here at all about stacked VLANs much less using them this… ambitiously…
Am I crazy for wanting this? Is it basically an impractical pipe dream with consumer grade hardware? Or am I missing some other angle here, some creative application of IPv6 or Wireguard or distributed routing or …?