Watch
0
0
Fork
You've already forked hyperhive
0
hyperhive/docs/examples/semi-spread/mesh.nix

41 lines
1.4 KiB
Nix

# 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";
};
}