blob: 22114b30b9cb37e331e215452685af55b05a48fc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
{ 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;
};
addresses = [{
addressConfig.Address = "10.99.99.1/24";
}
{
addressConfig.Address = "fd12:3456:789a::1/64";
}];
ipv6Prefixes = [{
ipv6PrefixConfig.Prefix = "fd12:3456:789a::/64";
}];
# networkConfig = {
# Address = "10.99.99.1/24";
# IPForward = "ipv4";
# };
# routes = [{
# routeConfig = {
# GatewayOnLink = true;
# };}];
# IPForward = "ipv4";
# DHCPServer = true;
# IPv6SendRA = true;
# 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;
externalInterface = "enp1s0";
internalInterfaces = [ "microvm-bridge" ];
};
}
|