IoT VLAN setup: isolating smart home devices
UDP port 5353 is enough to break an otherwise sound smart home VLAN. Block it indiscriminately and Chromecast, AirPlay, and several hub discovery workflows disappear across subnets.

Allow it indiscriminately and multicast traffic crosses the boundary meant to contain untrusted hardware. This is the actual problem with smart home network segmentation: isolation must be strict, but the control plane still needs carefully limited exceptions.
A smart plug, camera, air-quality sensor, or budget Wi-Fi relay does not deserve the same network reachability as a workstation containing browser sessions, password vaults, backups, and NAS shares. Many IoT devices receive infrequent firmware maintenance, expose undocumented services, or maintain permanent outbound cloud sessions. Their security posture should be assumed to be weaker than that of the trusted LAN.
The reliable answer is VLAN segmentation. Not guest Wi-Fi. Not “client isolation.” Not hiding an SSID. A real smart home VLAN setup separates Layer 2 broadcast domains, assigns distinct IP subnets, and applies firewall policy at Layer 3. The distinction is material.
A VLAN without a firewall policy is labeling, not isolation.
The hardware reality: consumer mesh systems fail the first test
The phrase “how to isolate IoT devices on a router” implies that the router has the required controls. Most consumer mesh systems do not.
A proper IoT VLAN configuration requires three functions:
- A router or firewall capable of creating VLAN interfaces, routing between subnets, and enforcing inter-VLAN firewall rules.
- A managed switch supporting IEEE 802.1Q tags.
- Wireless access points capable of mapping individual SSIDs to VLAN IDs.
IEEE 802.1Q is the relevant standard. It inserts a VLAN tag into Ethernet frames so one physical uplink can carry traffic from multiple logically separate networks. A single cable from a switch to an access point can therefore transport a trusted LAN, an IoT network, and a guest network. The separation is preserved only if the router, switch, and access point agree on the tag assignments.
Standard consumer mesh kits, including Eero and Google Nest WiFi, generally do not expose 802.1Q VLAN tagging or custom inter-VLAN firewall policy. They can provide a guest network, but guest networking is not equivalent to a configurable smart home VLAN. It usually offers a fixed policy designed for temporary internet access, not an architecture where a Home Assistant server on one subnet can selectively control a Zigbee gateway, MQTT broker, Chromecast, and Wi-Fi relay on another.
That limitation is not cosmetic. If the platform cannot create tagged SSIDs and deny IoT-to-LAN sessions, it cannot implement the segmentation described here.
| Capability | Consumer mesh system | VLAN-capable router, switch, and AP stack |
|---|---|---|
| Separate SSID for smart devices | Usually available | Available |
| Separate IP subnet | Often limited or opaque | Fully configurable |
| IEEE 802.1Q VLAN tagging | Usually unavailable | Required and supported |
| Custom IoT-to-LAN firewall policy | Usually unavailable | Required and supported |
| Tagged uplinks between switch and AP | Usually unavailable | Supported |
| Controlled mDNS forwarding | Rarely exposed | Available through reflector or proxy services |
| Local-control architecture | Constrained by vendor design | Explicitly configurable |
A guest network can still reduce exposure for disposable devices. It is not a substitute for a network design that supports local polling, hub-to-device control, and selective access to trusted services.
The minimum credible hardware stack is therefore straightforward: a VLAN-aware firewall, a managed switch, and VLAN-aware access points. The brands can vary. The protocol requirements do not.
Architect the subnets before configuring ports
The cleanest smart home network segmentation starts with a small, fixed addressing plan. Do not improvise VLAN IDs while clicking through a controller interface. Decide which traffic belongs where, then configure the physical and wireless paths to match.
A typical deployment uses three networks:
| Network | Example VLAN ID | Example subnet | Intended clients |
|---|---|---|---|
| Trusted LAN | 10 | 192.168.10.0/24 | Computers, phones, NAS, administration devices |
| IoT | 20 | 192.168.20.0/24 | Cameras, plugs, appliances, Wi-Fi sensors, hubs |
| Guest | 30 | 192.168.30.0/24 | Visitor devices and untrusted temporary clients |
A /24 subnet, represented by the mask 255.255.255.0, provides up to 254 usable addresses. That is usually sufficient for a home deployment. The point is not the address count. The point is that 192.168.20.0/24 has a distinct routing boundary from 192.168.10.0/24.
VLAN IDs can range from 1 through 4094. The example IDs above are conventional, not mandatory. Avoid using VLAN 1 for trusted client traffic where possible. It is commonly the default network on switches and access points, and default handling creates unnecessary ambiguity during troubleshooting.
The physical port model has two modes:
1. Trunk ports carry multiple VLANs. The link between the router and managed switch is normally tagged. The switch-to-access-point uplink is also tagged if that access point broadcasts more than one SSID.
2. Access ports carry one VLAN. A wired camera, smart TV, bridge, or appliance receives an untagged port assigned to the IoT VLAN. The device sees ordinary Ethernet. The switch applies the VLAN membership.
The trunk/access distinction is where many otherwise competent installations fail. An access point can broadcast an IoT SSID, but if its uplink port does not carry VLAN 20 as tagged traffic, the SSID either fails outright or silently lands on the default LAN. Both outcomes are common.
For a Wi-Fi deployment, map SSIDs deliberately:
Home-Trusted→ VLAN 10Home-IoT→ VLAN 20Home-Guest→ VLAN 30
The SSID name does not enforce anything. The VLAN mapping does. Verify the result by connecting a test device to each SSID and confirming that it receives an address from the intended subnet.
This is also where “separating smart devices on a home network” becomes more nuanced than placing every unusual device into VLAN 20. A local controller can belong in the trusted LAN or in a separate services VLAN, depending on the deployment. A Home Assistant appliance, for example, is more privileged than a commodity plug because it holds integrations, access tokens, and often credentials for cloud services. Treating it as just another IoT endpoint is a poor default.
The firewall is the security boundary
Creating VLAN interfaces creates routes. Most routers will then allow traffic between those routes unless explicitly told not to. This is the central failure mode in amateur VLAN deployments: devices are assigned different IP ranges, the dashboard looks organized, and every subnet can still initiate sessions with every other subnet.
The baseline policy must block new connections initiated from the IoT VLAN toward the trusted LAN. Established and related return traffic should remain permitted. Otherwise, a phone on the trusted LAN cannot initiate a valid connection to a local IoT device and receive its response.
A defensible rule order looks like this:
1. Allow established and related traffic on all internal interfaces. Return packets must not be mistaken for unsolicited access.
2. Allow trusted LAN to initiate connections to IoT where local administration or control requires it.
3. Drop new IoT-to-trusted-LAN connections. This blocks a compromised bulb, camera, or bridge from scanning workstations or opening shares.
4. Allow IoT to reach required infrastructure services. Usually DHCP, DNS, NTP, and the internet gateway are necessary.
5. Restrict IoT access to internal services by explicit exception. An MQTT broker on TCP 8883, for example, can be permitted if the deployment requires MQTT over TLS.
6. Apply an explicit final deny rule for traffic not covered by the intended policy.
The direction matters. “Trusted LAN can reach IoT” is not the same as “IoT can reach trusted LAN.” Stateful firewalls distinguish a connection initiated by a trusted phone from a new TCP session initiated by a compromised camera.
A compact policy matrix makes the intended behavior visible before rules are entered:
| Source | Destination | Default action | Controlled exceptions |
|---|---|---|---|
| Trusted LAN | IoT VLAN | Allow | Limit management ports if practical |
| IoT VLAN | Trusted LAN | Deny new sessions | Specific controller, broker, or media-service rules |
| IoT VLAN | Internet | Allow selectively | DNS, NTP, vendor cloud endpoints where required |
| Guest VLAN | Trusted LAN | Deny | None |
| Guest VLAN | IoT VLAN | Deny | None |
| Guest VLAN | Internet | Allow | Standard outbound access only |
This is not a recommendation to open all outbound internet traffic forever. It is a practical starting point. Some devices become unstable when outbound access is removed because cloud authentication, time synchronization, or firmware checks are hard dependencies. The right method is to observe required traffic, then reduce it. Blocking everything on day one produces false conclusions because a device that cannot resolve DNS may present itself as a VLAN problem.
DNS deserves special attention. If the IoT VLAN uses the router as its DNS resolver, permit IoT-to-router DNS only. Do not permit broad IoT-to-LAN access simply because a DNS server happens to live on the trusted subnet. Move shared infrastructure to the router, a services VLAN, or create a rule narrowly targeted to the resolver’s address and port.
The IoT network should reach services, not a general-purpose LAN.
Do not confuse Wi-Fi client isolation with VLAN isolation. Client isolation prevents wireless clients on the same SSID from directly communicating with each other. It does not create separate routed subnets, does not establish a firewall boundary against wired devices, and does not provide the same auditability. It can be useful inside a guest network. It does not replace an IoT VLAN.
mDNS is the controlled leak most smart homes need
Once VLAN rules work, device discovery often fails. This is expected.
mDNS, also called Bonjour or Multicast DNS, uses multicast traffic on UDP port 5353. It is used by Chromecast, AirPlay, printers, smart home hubs, and many discovery-dependent apps. Multicast traffic is normally confined to its local broadcast domain. VLAN boundaries stop it by design.
The symptom pattern is predictable: a phone on the trusted LAN can reach a smart display by direct IP address, but the device does not appear in casting menus. Or a hub can control an already paired device but cannot discover a new one. The firewall may be correct. Discovery is simply not crossing the subnet boundary.
The appropriate tool is an mDNS reflector, repeater, or proxy service, commonly implemented with software such as Avahi. It listens for eligible mDNS announcements on selected VLANs and repeats them across the defined boundary.
This should be constrained. Reflecting multicast between every VLAN recreates part of the flat-network behavior segmentation was intended to eliminate. Enable reflection only between the networks that need discovery, typically Trusted LAN and IoT. Keep Guest separate.
The sequence is operationally important:
1. Build VLANs and verify IP addressing.
2. Confirm firewall isolation with direct connectivity tests.
3. Enable mDNS reflection between the precise VLAN pair that needs it.
4. Test discovery for each affected ecosystem.
5. Add narrow unicast firewall exceptions only after identifying the required service.
A Chromecast deployment may require more than discovery. Google Cast control uses TCP port 8009. If a phone or controller on the trusted LAN must control a Chromecast in the IoT VLAN, the relevant trusted-to-IoT traffic must be allowed. For a local Plex server, TCP port 32400 may be relevant depending on the playback path. These are not blanket rules to copy into every network. They are examples of why discovery and control must be evaluated separately.
mDNS reflection has a security cost: selected service advertisements become visible beyond their original subnet. That cost is usually acceptable between a trusted control network and an IoT VLAN. It is not acceptable as a reason to permit full IoT-to-LAN access.
A local smart home hub can reduce this complexity, but only if its placement and firewall privileges are deliberate. A hub that resides in the IoT VLAN may need outbound access to cloud APIs and inbound control from trusted phones. A hub in the trusted LAN may need controlled access into the IoT VLAN. Neither arrangement is universally correct. The network policy must identify which component initiates each connection.
Build the IoT SSID for old radios, not modern phones
The most frustrating part of an IoT VLAN setup is often not switching or firewalling. It is onboarding a device built around an inexpensive 2.4 GHz radio and a firmware stack that has not been revised in years.
For the dedicated IoT SSID, use 2.4 GHz with a 20 MHz channel width. This is not about peak throughput. A smart plug has no use for wide channels. A camera may consume more bandwidth, but the radio compatibility penalty from aggressive band steering or combined SSIDs is usually worse than the theoretical gain.
WPA2-PSK remains the compatibility baseline for legacy smart-home equipment. WPA3-only configurations and some mixed-mode arrangements can exclude older devices. Hidden SSIDs also cause unnecessary onboarding failures. The device must be able to see and join the network consistently; security is provided by the VLAN and firewall architecture, not by concealing the network name.
Use a distinct IoT SSID. Do not reuse the trusted LAN SSID and password merely to simplify setup. A separate SSID performs two functions at once:
- It maps the device into the IoT VLAN.
- It prevents accidental enrollment of smart hardware onto the trusted LAN.
The radio design should remain boring:
- 2.4 GHz enabled.
- 20 MHz channel width.
- WPA2-PSK for maximum legacy compatibility.
- Visible SSID.
- A stable password that is not shared with the trusted network.
- No dependence on band steering during device onboarding.
If the access point supports it, separate 2.4 GHz and 5 GHz SSIDs during the initial migration. This removes ambiguity when an onboarding app running on a phone attempts to hand credentials to a 2.4 GHz-only device. Once devices are stable, the 5 GHz trusted SSID can remain independent. There is no technical requirement to force every endpoint into a unified SSID design.
Cameras deserve a separate bandwidth assessment. VLAN segmentation does not create capacity. Several high-bitrate cameras can saturate a weak 2.4 GHz environment or overload an entry-level access point, regardless of how clean the firewall rules are. Wired cameras, or cameras on a dedicated access point and VLAN, remain the more predictable option where continuous recording is involved.
Validate the boundary with tests, not dashboard colors
A controller UI can report that VLAN 20 exists while a misconfigured trunk sends every wireless client to VLAN 1. Validation has to occur at the endpoint level.
Start with a device connected to the IoT SSID. Confirm its address belongs to the IoT subnet, such as 192.168.20.0/24. Then test the expected outcomes:
- The device obtains DHCP and resolves DNS.
- It reaches the internet only to the extent the policy permits.
- It cannot initiate a new connection to a workstation on the trusted LAN.
- A trusted device can reach an IoT device only where a rule permits it.
- Discovery-dependent services appear only after the mDNS reflector is enabled.
- A guest device reaches neither the IoT VLAN nor the trusted LAN.
The critical test is not whether the IoT device works. It is whether it fails to do what it should not be able to do. Attempt a connection from the IoT side toward a trusted LAN host. Inspect firewall logs. The denial should be visible and attributable to the correct rule.
Then check for accidental escape paths. A wired bridge may still be attached to an untagged default port. A secondary router may be operating in router mode and creating an unmanaged subnet. A smart speaker may have joined the old trusted SSID because its onboarding application cached credentials. Network segmentation fails at edges, not in architecture diagrams.
Local control should also be tested with the internet temporarily unavailable. Devices that remain controllable through a local hub, local polling, or an internal MQTT broker have a different failure mode from devices that require vendor cloud round trips. The VLAN does not fix cloud dependency. It makes the dependency visible.
Buy or skip
Buy into VLAN segmentation if the network can provide 802.1Q tagging, managed switching, VLAN-aware wireless access points, explicit stateful firewall rules, and a controlled mDNS reflector. That combination creates a real boundary: smart devices receive their own subnet, their unsolicited access to trusted hardware is denied, and only required discovery or control traffic crosses the line.
Skip the pretense if the network is built entirely around a consumer mesh system without VLAN and firewall controls. Guest Wi-Fi and client isolation are useful mitigations, but they are not a smart home VLAN. They do not provide the same containment, visibility, or local-control design.
The binary rule is simple: if IoT-to-LAN traffic is not explicitly denied and tested, the smart home is still on the trusted network.