feat: Nebula mesh network overlay #12
@@ -32,12 +32,6 @@
|
||||
gnome.enable = true;
|
||||
nebula = {
|
||||
enable = true;
|
||||
unsafeRoutes = [
|
||||
{
|
||||
route = "10.42.0.0/16";
|
||||
via = "10.157.0.2"; # genesis
|
||||
}
|
||||
];
|
||||
};
|
||||
|
greg marked this conversation as resolved
|
||||
podman.enable = true;
|
||||
print.enable = true;
|
||||
|
||||
@@ -37,6 +37,9 @@ in
|
||||
gnome.enable = false;
|
||||
nebula = {
|
||||
enable = true;
|
||||
# genesis IS the routing node for the home LAN — it does not route through itself.
|
||||
# Override the module default (which points at genesis) to avoid a routing loop.
|
||||
unsafeRoutes = [ ];
|
||||
|
greg marked this conversation as resolved
Outdated
greg
commented
Override the default value of unsafeRoutes here, because this node is the routing node. Override the default value of unsafeRoutes here, because this node is the routing node.
|
||||
# genesis routes the home LAN (10.42.0.0/16) into the Nebula overlay.
|
||||
# Sign genesis's cert with -subnets '10.42.0.0/16' (see secrets/nebula/README.md).
|
||||
routesSubnet = "10.42.0.0/16";
|
||||
|
||||
@@ -49,15 +49,7 @@ in
|
||||
|
||||
greg = {
|
||||
home = true;
|
||||
nebula = {
|
||||
enable = true;
|
||||
unsafeRoutes = [
|
||||
{
|
||||
route = "10.42.0.0/16";
|
||||
via = "10.157.0.2"; # genesis
|
||||
}
|
||||
];
|
||||
};
|
||||
nebula.enable = true;
|
||||
proxies = {
|
||||
"jellyfin.home".target = "http://localhost:8096/";
|
||||
"jellyfin.thehellings.lan".target = "http://localhost:8096/";
|
||||
|
||||
@@ -42,15 +42,7 @@
|
||||
vip = metadata.hosts.${config.networking.hostName}.ip;
|
||||
priority = 255;
|
||||
};
|
||||
nebula = {
|
||||
enable = true;
|
||||
unsafeRoutes = [
|
||||
{
|
||||
route = "10.42.0.0/16";
|
||||
via = "10.157.0.2"; # genesis
|
||||
}
|
||||
];
|
||||
};
|
||||
nebula.enable = true;
|
||||
podman.enable = true;
|
||||
tailscale = {
|
||||
enable = true;
|
||||
|
||||
@@ -85,15 +85,7 @@ in
|
||||
vip = ip;
|
||||
priority = 254;
|
||||
};
|
||||
nebula = {
|
||||
enable = true;
|
||||
unsafeRoutes = [
|
||||
{
|
||||
route = "10.42.0.0/16";
|
||||
via = "10.157.0.2"; # genesis
|
||||
}
|
||||
];
|
||||
};
|
||||
nebula.enable = true;
|
||||
tailscale = {
|
||||
enable = true;
|
||||
tags = [ "home" ];
|
||||
|
||||
@@ -26,15 +26,7 @@
|
||||
vipInterface = "enp12s0";
|
||||
priority = 253;
|
||||
};
|
||||
nebula = {
|
||||
enable = true;
|
||||
unsafeRoutes = [
|
||||
{
|
||||
route = "10.42.0.0/16";
|
||||
via = "10.157.0.2"; # genesis
|
||||
}
|
||||
];
|
||||
};
|
||||
nebula.enable = true;
|
||||
remote-builder.enable = true;
|
||||
runner = {
|
||||
enable = true;
|
||||
|
||||
@@ -94,8 +94,19 @@ in
|
||||
};
|
||||
}
|
||||
);
|
||||
default = [ ];
|
||||
description = "List of unsafe_routes to configure on this host (for reaching non-Nebula subnets)";
|
||||
# Default: route the home LAN through genesis (the home router node).
|
||||
# Hosts that ARE genesis (or any other routing node) should override this to [].
|
||||
default = [
|
||||
{
|
||||
route = "10.42.0.0/16";
|
||||
via = "10.157.0.2"; # genesis's Nebula IP
|
||||
}
|
||||
];
|
||||
description = ''
|
||||
List of unsafe_routes to configure on this host (for reaching non-Nebula subnets).
|
||||
Defaults to routing the home LAN (10.42.0.0/16) through genesis (10.157.0.2).
|
||||
Override to [] on hosts that are themselves a routing node (e.g. genesis).
|
||||
'';
|
||||
};
|
||||
|
||||
# Whether this host IS the router for an unsafe subnet
|
||||
|
||||
Reference in New Issue
Block a user
Move this to be a default value in the module.