# The VPN's facts: one entry per machine, read by every host (wireguard.nix, # gateway.nix, dns.nix) and nothing else. Keyed by `networking.hostName`. # # `address` and `address6` are the machine's addresses inside the VPN (IPv4 # 10.77.0.0/24 and the unique-local IPv6 prefix fd77:77a1:5e::/64); # `endpoint` is where the other machines dial it; `publicKey` is the output of # `wg pubkey` on that machine. The keys below are placeholders: replace each # with the real one. Generate your own IPv6 prefix (RFC 4193) rather than # keeping this one. { swarm-central = { address = "10.77.0.1"; address6 = "fd77:77a1:5e::1"; endpoint = "203.0.113.10:51820"; publicKey = "REPLACE-with-swarm-central-wg-pubkey"; }; swarm-services = { address = "10.77.0.2"; address6 = "fd77:77a1:5e::2"; endpoint = "203.0.113.11:51820"; publicKey = "REPLACE-with-swarm-services-wg-pubkey"; }; swarm-heavyduty = { address = "10.77.0.3"; address6 = "fd77:77a1:5e::3"; endpoint = "203.0.113.12:51820"; publicKey = "REPLACE-with-swarm-heavyduty-wg-pubkey"; }; hive-one = { address = "10.77.0.11"; address6 = "fd77:77a1:5e::11"; endpoint = "198.51.100.11:51820"; publicKey = "REPLACE-with-hive-one-wg-pubkey"; }; hive-two = { address = "10.77.0.12"; address6 = "fd77:77a1:5e::12"; endpoint = "198.51.100.12:51820"; publicKey = "REPLACE-with-hive-two-wg-pubkey"; }; }