feat(esh): move SLZB-MR1U Zigbee coordinator to the IoT VLAN for Home Assistant
The coordinator arrived on esh-userland (VLAN 10) at a DHCP-assigned 10.0.10.58. It now sits on esh-iot (VLAN 90) at 10.0.90.10, reserved on the UDM and named slzb-mr1u.esh.internal. Address on the network side, not the device — the pfi-gx10 ruling: a reservation moves with the hardware, a device-side static goes stale. 10.0.90.10 is below the 10.0.90.40-250 pool so it cannot be handed out. The MAC is locally administered (ea:f6:0a:ca:f5:b4, no OUI), which is exactly the case where a reservation can silently stop matching. The PoE power-cycle that makes the device re-DHCP is also the stability test, so it cost nothing: it rebooted and came back on exactly 10.0.90.10, which only happens if the MAC held. ESH-Media carried 8 port_overrides and that PUT is a whole-array replace, so the array was diffed to prove exactly one field on one port changed before sending, and read back after. Inter-VLAN reachability needed no firewall work and was proven from inside the HA container before the move, against existing IoT devices. Testing from the Docker host would have proven the wrong thing — HA runs on a macvlan address, 10.0.50.46, not the host's 10.0.50.45. Documented but NOT fixed: the HA container cannot resolve any .internal name (its resolver is Docker's 127.0.0.11, upstream excludes the fleet AdGuard). Pre-existing, verified against names that predate this change. HA should be configured with the IP; changing the DNS of a live home-automation stack is ha-dev's call.
This commit is contained in:
@@ -100,6 +100,7 @@ hosts:
|
||||
- {name: plex, site: esh, v4: 10.0.50.56, note: media server}
|
||||
- {name: jellyfin, site: esh, v4: 10.0.50.57, note: media server}
|
||||
- {name: brother, site: esh, v4: 10.0.90.125, note: Brother printer}
|
||||
- {name: slzb-mr1u, site: esh, v4: 10.0.90.10, note: SMLIGHT SLZB-MR1U Zigbee/Thread coordinator (esh-iot VLAN 90, PoE on ESH-Media p4); Home Assistant at 10.0.50.46 connects to tcp/6638}
|
||||
|
||||
# Service aliases — a name that points at whatever host currently runs it, so
|
||||
# consumers reference the SERVICE rather than the box. Changing where something
|
||||
|
||||
Reference in New Issue
Block a user