nix-config/hosts/dishwasher/mcvm-network.nix

55 lines
1.2 KiB
Nix
Raw Normal View History

2022-06-26 21:17:20 +02:00
{ config, pkgs, ... }: {
systemd.network = {
netdevs."microvm-bridge".netdevConfig = {
Kind = "bridge";
Name = "microvm-bridge";
};
networks."0-microvm-bridge" = {
matchConfig.Name = "microvm-bridge";
networkConfig = {
DHCPServer = false;
IPv6SendRA = true;
};
2023-05-01 15:17:31 +02:00
addresses = [
{
addressConfig.Address = "10.99.99.1/24";
}
{
addressConfig.Address = "fd12:3456:789a::1/64";
}
];
2022-06-26 21:19:15 +02:00
ipv6Prefixes = [{
2022-06-26 21:17:20 +02:00
ipv6PrefixConfig.Prefix = "fd12:3456:789a::/64";
2022-06-26 21:19:15 +02:00
}];
2022-06-26 21:17:20 +02:00
# networkConfig = {
# Address = "10.99.99.1/24";
# IPForward = "ipv4";
# };
# routes = [{
# routeConfig = {
# GatewayOnLink = true;
# };}];
2022-06-26 21:19:15 +02:00
# IPForward = "ipv4";
# DHCPServer = true;
# IPv6SendRA = true;
2022-06-26 21:17:20 +02:00
# addresses = [{
# addressConfig.Address = "10.99.99.1/24";
# }];
};
networks."1-microvm-bridge" = {
matchConfig.Name = "vm-*";
networkConfig.Bridge = "microvm-bridge";
};
};
networking.nat = {
enable = true;
enableIPv6 = true;
2023-04-03 22:32:14 +02:00
externalInterface = "enp1s0";
2022-06-26 21:17:20 +02:00
internalInterfaces = [ "microvm-bridge" ];
};
}