# /etc/netplan/50-van-wan.yaml — replaces cloud-init's 50-cloud-init.yaml. # The WANs handed to NetworkManager so van-failover can steer them (mirrors # wayback where NM owns all WANs): wlan0 = wifi uplink (Wapana at home / # campsite wifi), enxd8ec5eeb3512 = Starlink. The AP radios and the wired LAN # ports (USB dongle + onboard eth0, since 2026-07-12 an internal LAN port) are # deliberately absent: systemd-networkd/hostapd own them, and # van-ap-unmanaged.conf hides them from NM. # Apply once by hand: netplan generate && netplan apply (flaps the uplinks). network: version: 2 ethernets: # Starlink dish uplink (RTL8153 USB NIC, MAC-named — travels with the # adapter). The /32 link route keeps the dish's management address reachable # no matter which WAN holds the default route: the dish answers on # 192.168.100.1 (gRPC :9200) even while the uplink sits behind CGNAT. enxd8ec5eeb3512: renderer: NetworkManager optional: true dhcp4: true routes: - to: 192.168.100.1/32 scope: link wifis: wlan0: renderer: NetworkManager optional: true dhcp4: true # IPv6 is deliberate as of 2026-07-12: NM does SLAAC/DHCPv6 itself. # Before this it only worked by accident — dracut's runtime catch-all # /run/systemd/network/zzzz-dracut-default.network had networkd # co-managing wlan0 (second DHCPv4 client + surprise IPv6); deploy.sh # now masks that file. Privacy (temporary) addresses stay off so hbd # and DNS see one stable source address per uplink. dhcp6: true ipv6-privacy: false access-points: "Wapana": auth: key-management: "psk" password: "6e1335fd97165a7d2618bec19824be363a2766d7765f91aa14773d871eaa59dc"