nixos/home: Anchor static hi clients' DNS on VIPs
Statically-addressed home servers on hi run no DHCP, so they learned a resolver only from the v6 RA RDNSS and lost DNS whenever v6 (and thus the RA) was absent. Factor the fix castle/palace applied inline into a shared lib.my.c.home.vlanDns helper that points resolved at the VLAN's VRRP VIPs (always-present static v4, plus v6 when up) and sets the advertised search domains, then apply it to every statically-addressed hi client: castle, palace, cellar, sfh and the sfh hass/unifi containers. Document it under the router client DNS section. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
let
|
||||
inherit (lib.my) net;
|
||||
inherit (lib.my.c) networkd;
|
||||
inherit (lib.my.c.home) domain searchDomains vlans prefixes vips roceBootModules;
|
||||
inherit (lib.my.c.home) domain vlans prefixes vips vlanDns roceBootModules;
|
||||
in
|
||||
{
|
||||
nixos.systems.castle = {
|
||||
@@ -190,11 +190,7 @@ in
|
||||
"40-lan-hi" = mkMerge [
|
||||
(networkdAssignment "lan-hi" assignments.hi)
|
||||
{
|
||||
networkConfig = {
|
||||
# v6 is RA/SLAAC-derived, so when RA is absent we have no v6 at all;
|
||||
# anchor DNS on the always-present static v4 (the VRRP VIP follows the master)
|
||||
DNS = [ vips.hi.v4 vips.hi.v6 ];
|
||||
Domains = searchDomains;
|
||||
networkConfig = vlanDns "hi" // {
|
||||
# So we don't drop the IP we use to connect to NVMe-oF!
|
||||
KeepConfiguration = "static";
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user