Compare commits

...

4 Commits

8 changed files with 173 additions and 94 deletions

View File

@ -24,11 +24,11 @@
"zentralwerk-network-key": { "zentralwerk-network-key": {
"locked": { "locked": {
"dir": "nix/key", "dir": "nix/key",
"lastModified": 1619731618, "lastModified": 1620259526,
"narHash": "sha256-GPrb+GgJ+IOfee1QQK1O6aB56Nfc8ABmBf8Qgku76Bg=", "narHash": "sha256-vbXq8wLoM7pYG4aOGytXBpxRhoxE66fMUjzM3eNdJ54=",
"ref": "master", "ref": "master",
"rev": "67acfb140b23f77662478989b9c35d860b80362f", "rev": "0d25ccf0da7f70e242741ec014e1ccaf832d1b67",
"revCount": 1003, "revCount": 1043,
"type": "git", "type": "git",
"url": "https://gitea.c3d2.de/zentralwerk/network.git?dir=nix%2fkey" "url": "https://gitea.c3d2.de/zentralwerk/network.git?dir=nix%2fkey"
}, },

View File

@ -46,6 +46,17 @@ in
domainName = dhcpData.string-opts.domain-name; domainName = dhcpData.string-opts.domain-name;
}) pillar.dhcp) }) pillar.dhcp)
{ core.ospf.secret = pillar.ospf.secret; } { core.ospf.secret = pillar.ospf.secret; }
# net priv* settings
(
builtins.mapAttrs (netName: _: {
dynamicDomain = true;
}) (
lib.filterAttrs (netName: _:
builtins.match "priv[[:digit:]]+" netName != null
) pillar.hosts-inet
)
)
] ++ ( ] ++ (
map (ctx: map (ctx:
builtins.mapAttrs (_: subnet: { subnets6.${ctx} = subnet; }) pillar.subnets-inet6.${ctx} builtins.mapAttrs (_: subnet: { subnets6.${ctx} = subnet; }) pillar.subnets-inet6.${ctx}
@ -99,6 +110,7 @@ in
c3d2-anon.ospf.allowedUpstreams = [ "anon1" "freifunk" ]; c3d2-anon.ospf.allowedUpstreams = [ "anon1" "freifunk" ];
} }
# host priv*-gw settings
( (
builtins.mapAttrs (hostName: _: { builtins.mapAttrs (hostName: _: {
ospf.allowedUpstreams = [ "upstream2" "upstream1" "freifunk" ]; ospf.allowedUpstreams = [ "upstream2" "upstream1" "freifunk" ];

View File

@ -1,5 +1,5 @@
# ISC DHCP/IPv4 server configuration # ISC DHCP/IPv4 server configuration
{ hostName, config, lib, ... }: { hostName, inputs, config, lib, ... }:
let let
dhcpNets = dhcpNets =
@ -21,17 +21,43 @@ in
builtins.attrValues ( builtins.attrValues (
builtins.mapAttrs (net: { dhcp, subnet4Net, subnet4Len, domainName, ...}: builtins.mapAttrs (net: { dhcp, subnet4Net, subnet4Len, domainName, ...}:
'' ''
ddns-update-style standard;
key dyndns {
algorithm hmac-sha256;
secret ${inputs.zentralwerk-network-key.lib.dyndnsKey};
};
zone ${domainName}. {
primary ${config.site.net.serv.hosts4.dns};
primary6 ${config.site.net.serv.hosts6.dn42.dns};
key dyndns;
}
${lib.concatMapStrings ({ name, dynamic, ... }:
lib.optionalString (
dynamic &&
lib.hasSuffix ".in-addr.arpa" name
) ''
zone ${name}. {
primary ${config.site.net.serv.hosts4.dns};
primary6 ${config.site.net.serv.hosts6.dn42.dns};
key dyndns;
}
''
) config.site.dns.localZones}
group { group {
default-lease-time ${toString dhcp.time}; default-lease-time ${toString dhcp.time};
max-lease-time ${toString dhcp.max-time}; max-lease-time ${toString dhcp.max-time};
option routers ${config.site.net.${net}.hosts4.${builtins.replaceStrings [".${net}"] [""] dhcp.router}}; option routers ${config.site.net.${net}.hosts4.${builtins.replaceStrings [".${net}"] [""] dhcp.router}};
option domain-name "${domainName}"; option domain-name "${domainName}";
option domain-name-servers 172.20.73.8, 9.9.9.9; option domain-name-servers 172.20.73.8, 9.9.9.9;
ddns-domainname "${domainName}";
subnet ${subnet4Net} netmask ${lib.netmasks.${toString subnet4Len}} { subnet ${subnet4Net} netmask ${lib.netmasks.${toString subnet4Len}} {
range ${dhcp.start} ${dhcp.end}; range ${dhcp.start} ${dhcp.end};
} }
update-static-leases on;
${builtins.concatStringsSep "\n" ( ${builtins.concatStringsSep "\n" (
builtins.attrValues ( builtins.attrValues (
builtins.mapAttrs (addr: hwaddr: builtins.mapAttrs (addr: hwaddr:

View File

@ -1,9 +1,45 @@
{ hostName, config, lib, pkgs, self, ... }: { hostName, config, lib, pkgs, self, inputs, ... }:
let let
fqdn = "${hostName}.serv.zentralwerk.org"; fqdn = "${hostName}.serv.zentralwerk.org";
# public servers (slaves) # public servers (slaves)
publicNS = [ "ns.c3d2.de" "ns.spaceboyz.net" ]; publicNS = [ "ns.c3d2.de" "ns.spaceboyz.net" ];
dynamicReverseZones = [
"74.20.172.in-addr.arpa"
"75.20.172.in-addr.arpa"
"76.20.172.in-addr.arpa"
"77.20.172.in-addr.arpa"
"78.20.172.in-addr.arpa"
"79.20.172.in-addr.arpa"
];
serial =
let
timestamp = toString self.lastModified;
datePkg = pkgs.runCommandLocal "date-${timestamp}" {} ''
date -d @${timestamp} +%Y%m%d%H > $out
'';
in
toString (import datePkg);
generateZoneFile = { name, ns, records, dynamic }:
builtins.toFile "${name}.zone" ''
$ORIGIN ${name}.
$TTL 1h
@ IN SOA ${fqdn}. astro.spaceboyz.net. (
${serial} ; serial
1h ; refresh
1m ; retry
2h ; expire
1m ; minimum
)
${lib.concatMapStrings (ns: " IN NS ${ns}.\n") ns}
${lib.concatMapStrings ({ name, type, data }:
"${name} IN ${type} ${data}\n"
) records}
'';
in in
{ {
options = options =
@ -35,6 +71,10 @@ in
options = recordOpts; options = recordOpts;
}); });
}; };
dynamic = mkOption {
type = types.bool;
default = false;
};
}; };
in { in {
@ -69,9 +109,9 @@ in
); );
# generate zones only for nets with hosts # generate zones only for nets with hosts
namedNets = lib.filterAttrs (_: { hosts4, hosts6, dynamicDomain, ... }: namedNets = lib.filterAttrs (name: { hosts4, hosts6, dynamicDomain, ... }:
(hosts4 != [] && hosts6 != []) || (hosts4 != [] && hosts6 != []) ||
dynamicDomain dynamicDomain
) config.site.net; ) config.site.net;
# converts an IPv4 address to its reverse DNS form # converts an IPv4 address to its reverse DNS form
@ -200,15 +240,14 @@ in
} ] ++ builtins.concatLists ( } ] ++ builtins.concatLists (
builtins.attrValues ( builtins.attrValues (
builtins.mapAttrs (net: { dynamicDomain, hosts4, hosts6, ... }: [ builtins.mapAttrs (net: { dynamicDomain, hosts4, hosts6, ... }: [
(if dynamicDomain {
then throw "TODO" name = "${net}.zentralwerk.dn42";
else { ns = [ fqdn ];
name = "${net}.zentralwerk.dn42"; records =
ns = [ fqdn ]; hosts4Records hosts4 ++
records = lib.optionals (hosts6 ? dn42) (hosts6Records hosts6.dn42);
hosts4Records hosts4 ++ dynamic = dynamicDomain;
lib.optionals (hosts6 ? dn42) (hosts6Records hosts6.dn42); }
})
{ {
name = "${net}.zentralwerk.org"; name = "${net}.zentralwerk.org";
ns = publicNS; ns = publicNS;
@ -232,6 +271,7 @@ in
builtins.filter (lib.hasSuffix ".${zone}") builtins.filter (lib.hasSuffix ".${zone}")
(builtins.attrNames reverseHosts4) (builtins.attrNames reverseHosts4)
); );
dynamic = builtins.elem zone dynamicReverseZones;
}) reverseZones4 }) reverseZones4
++ builtins.concatMap (ctx: ++ builtins.concatMap (ctx:
map (zone: { map (zone: {
@ -256,16 +296,7 @@ in
services.bind = lib.mkIf config.site.hosts.${hostName}.services.dns.enable ( services.bind = lib.mkIf config.site.hosts.${hostName}.services.dns.enable (
let let
serial = generateZone = zone@{ name, dynamic, ... }: {
let
timestamp = toString self.lastModified;
datePkg = pkgs.runCommandLocal "date-${timestamp}" {} ''
date -d @${timestamp} +%Y%m%d%H > $out
'';
in
toString (import datePkg);
generateZone = { name, ns, records }: {
inherit name; inherit name;
master = true; master = true;
# allowed for zone-transfer # allowed for zone-transfer
@ -275,29 +306,44 @@ in
# ns.spaceboyz.net # ns.spaceboyz.net
"172.22.24.4" "2a01:4f9:4b:39ec::4" "172.22.24.4" "2a01:4f9:4b:39ec::4"
]; ];
file = builtins.toFile "${name}.zone" '' file =
$ORIGIN ${name}. if dynamic
$TTL 1h then "/var/db/bind/${name}.zone"
else generateZoneFile zone;
@ IN SOA ${fqdn}. astro.spaceboyz.net. ( extraConfig = lib.optionalString dynamic ''
${serial} ; serial allow-update { key "dyndns"; };
1h ; refresh
1m ; retry
2h ; expire
1m ; minimum
)
${lib.concatMapStrings (ns: " IN NS ${ns}.\n") ns}
${lib.concatMapStrings ({ name, type, data }:
"${name} IN ${type} ${data}\n"
) records}
''; '';
}; };
in { in {
enable = true; enable = true;
zones = map generateZone config.site.dns.localZones; zones = map generateZone config.site.dns.localZones;
extraConfig = ''
key "dyndns" {
algorithm hmac-sha256;
secret "${inputs.zentralwerk-network-key.lib.dyndnsKey}";
};
'';
}); });
# TODO: dyn systemd.services.dynamic-zones = {
requiredBy = [ "bind.service" ];
before = [ "bind.service" ];
serviceConfig.Type = "oneshot";
# TODO: initial records
script = ''
mkdir -p /var/db/bind
${lib.concatMapStringsSep "\n" (zone@{ name, ... }: ''
[ -e /var/db/bind/${name}.zone ] || \
cp ${generateZoneFile zone} /var/db/bind/${name}.zone
chown -R named /var/db/bind
chmod -R u+rwX /var/db/bind
'') (
builtins.filter ({ dynamic, ... }: dynamic) config.site.dns.localZones
)}
'';
};
}; };
} }

View File

@ -32,7 +32,7 @@
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
vim screen git wget psmisc vim screen git wget psmisc
tcpdump iputils mtr traceroute bmon iptables conntrack-tools tcpdump iputils mtr traceroute bmon iptables conntrack-tools iftop
bridge-utils dhcpcd ethtool bridge-utils dhcpcd ethtool
]; ];

View File

@ -60,6 +60,7 @@ in
networking.useHostResolvConf = false; networking.useHostResolvConf = false;
services.resolved.enable = false; services.resolved.enable = false;
environment.etc."resolv.conf".text = '' environment.etc."resolv.conf".text = ''
nameserver 172.20.73.8 9.9.9.9 nameserver 172.20.73.8
nameserver 9.9.9.9
''; '';
} }

View File

@ -9,7 +9,7 @@ dhcp:
host-opts: host-opts:
routers: serv-gw.serv routers: serv-gw.serv
string-opts: string-opts:
domain-name: serv.zentralwerk.org domain-name: serv.zentralwerk.dn42
pub: pub:
start: 172.20.78.2 start: 172.20.78.2
@ -22,7 +22,7 @@ dhcp:
host-opts: host-opts:
routers: pub-gw.pub routers: pub-gw.pub
string-opts: string-opts:
domain-name: pub.zentralwerk.org domain-name: pub.zentralwerk.dn42
priv1: priv1:
start: 172.20.74.2 start: 172.20.74.2
@ -34,7 +34,7 @@ dhcp:
host-opts: host-opts:
routers: priv1-gw.priv1 routers: priv1-gw.priv1
string-opts: string-opts:
domain-name: priv1.zentralwerk.org domain-name: priv1.zentralwerk.dn42
priv2: priv2:
start: 172.20.75.2 start: 172.20.75.2
@ -46,7 +46,7 @@ dhcp:
host-opts: host-opts:
routers: priv2-gw.priv2 routers: priv2-gw.priv2
string-opts: string-opts:
domain-name: priv2.zentralwerk.org domain-name: priv2.zentralwerk.dn42
fixed-hosts: fixed-hosts:
172.20.75.7: 60:33:4b:0b:cd:fc 172.20.75.7: 60:33:4b:0b:cd:fc
172.20.75.9: 00:11:32:22:95:79 172.20.75.9: 00:11:32:22:95:79
@ -61,7 +61,7 @@ dhcp:
host-opts: host-opts:
routers: priv3-gw.priv3 routers: priv3-gw.priv3
string-opts: string-opts:
domain-name: priv3.zentralwerk.org domain-name: priv3.zentralwerk.dn42
priv4: priv4:
start: 172.20.75.130 start: 172.20.75.130
@ -73,7 +73,7 @@ dhcp:
host-opts: host-opts:
routers: priv4-gw.priv4 routers: priv4-gw.priv4
string-opts: string-opts:
domain-name: priv4.zentralwerk.org domain-name: priv4.zentralwerk.dn42
priv5: priv5:
start: 172.20.74.66 start: 172.20.74.66
@ -85,7 +85,7 @@ dhcp:
host-opts: host-opts:
routers: priv5-gw.priv5 routers: priv5-gw.priv5
string-opts: string-opts:
domain-name: priv5.zentralwerk.org domain-name: priv5.zentralwerk.dn42
priv6: priv6:
start: 172.20.74.194 start: 172.20.74.194
@ -97,7 +97,7 @@ dhcp:
host-opts: host-opts:
routers: priv6-gw.priv6 routers: priv6-gw.priv6
string-opts: string-opts:
domain-name: priv6.zentralwerk.org domain-name: priv6.zentralwerk.dn42
priv7: priv7:
start: 172.20.75.66 start: 172.20.75.66
@ -109,7 +109,7 @@ dhcp:
host-opts: host-opts:
routers: priv7-gw.priv7 routers: priv7-gw.priv7
string-opts: string-opts:
domain-name: priv7.zentralwerk.org domain-name: priv7.zentralwerk.dn42
priv8: priv8:
start: 172.20.75.194 start: 172.20.75.194
@ -121,7 +121,7 @@ dhcp:
host-opts: host-opts:
routers: priv8-gw.priv8 routers: priv8-gw.priv8
string-opts: string-opts:
domain-name: priv8.zentralwerk.org domain-name: priv8.zentralwerk.dn42
priv9: priv9:
start: 172.20.74.34 start: 172.20.74.34
@ -133,7 +133,7 @@ dhcp:
host-opts: host-opts:
routers: priv9-gw.priv9 routers: priv9-gw.priv9
string-opts: string-opts:
domain-name: priv9.zentralwerk.org domain-name: priv9.zentralwerk.dn42
priv10: priv10:
start: 172.20.74.98 start: 172.20.74.98
@ -145,7 +145,7 @@ dhcp:
host-opts: host-opts:
routers: priv10-gw.priv10 routers: priv10-gw.priv10
string-opts: string-opts:
domain-name: priv10.zentralwerk.org domain-name: priv10.zentralwerk.dn42
priv11: priv11:
start: 172.20.74.162 start: 172.20.74.162
@ -157,7 +157,7 @@ dhcp:
host-opts: host-opts:
routers: priv11-gw.priv11 routers: priv11-gw.priv11
string-opts: string-opts:
domain-name: priv11.zentralwerk.org domain-name: priv11.zentralwerk.dn42
priv12: priv12:
start: 172.20.74.226 start: 172.20.74.226
@ -169,7 +169,7 @@ dhcp:
host-opts: host-opts:
routers: priv12-gw.priv12 routers: priv12-gw.priv12
string-opts: string-opts:
domain-name: priv12.zentralwerk.org domain-name: priv12.zentralwerk.dn42
priv13: priv13:
start: 172.20.75.34 start: 172.20.75.34
@ -181,7 +181,7 @@ dhcp:
host-opts: host-opts:
routers: priv13-gw.priv13 routers: priv13-gw.priv13
string-opts: string-opts:
domain-name: priv13.zentralwerk.org domain-name: priv13.zentralwerk.dn42
priv14: priv14:
start: 172.20.75.98 start: 172.20.75.98
@ -193,7 +193,7 @@ dhcp:
host-opts: host-opts:
routers: priv14-gw.priv14 routers: priv14-gw.priv14
string-opts: string-opts:
domain-name: priv14.zentralwerk.org domain-name: priv14.zentralwerk.dn42
priv15: priv15:
start: 172.20.75.162 start: 172.20.75.162
@ -205,7 +205,7 @@ dhcp:
host-opts: host-opts:
routers: priv15-gw.priv15 routers: priv15-gw.priv15
string-opts: string-opts:
domain-name: priv15.zentralwerk.org domain-name: priv15.zentralwerk.dn42
priv16: priv16:
start: 172.20.75.226 start: 172.20.75.226
@ -217,7 +217,7 @@ dhcp:
host-opts: host-opts:
routers: priv16-gw.priv16 routers: priv16-gw.priv16
string-opts: string-opts:
domain-name: priv16.zentralwerk.org domain-name: priv16.zentralwerk.dn42
priv17: priv17:
start: 172.20.73.130 start: 172.20.73.130
@ -229,7 +229,7 @@ dhcp:
host-opts: host-opts:
routers: priv17-gw.priv17 routers: priv17-gw.priv17
string-opts: string-opts:
domain-name: priv17.zentralwerk.org domain-name: priv17.zentralwerk.dn42
priv18: priv18:
start: 172.20.74.50 start: 172.20.74.50
@ -241,7 +241,7 @@ dhcp:
host-opts: host-opts:
routers: priv18-gw.priv18 routers: priv18-gw.priv18
string-opts: string-opts:
domain-name: priv18.zentralwerk.org domain-name: priv18.zentralwerk.dn42
priv19: priv19:
start: 172.20.73.194 start: 172.20.73.194
@ -254,7 +254,7 @@ dhcp:
host-opts: host-opts:
routers: priv19-gw.priv19 routers: priv19-gw.priv19
string-opts: string-opts:
domain-name: priv19.zentralwerk.org domain-name: priv19.zentralwerk.dn42
priv20: priv20:
start: 172.20.74.114 start: 172.20.74.114
@ -266,7 +266,7 @@ dhcp:
host-opts: host-opts:
routers: priv20-gw.priv20 routers: priv20-gw.priv20
string-opts: string-opts:
domain-name: priv20.zentralwerk.org domain-name: priv20.zentralwerk.dn42
priv21: priv21:
start: 172.20.74.146 start: 172.20.74.146
@ -278,7 +278,7 @@ dhcp:
host-opts: host-opts:
routers: priv21-gw.priv21 routers: priv21-gw.priv21
string-opts: string-opts:
domain-name: priv21.zentralwerk.org domain-name: priv21.zentralwerk.dn42
priv22: priv22:
start: 172.20.74.178 start: 172.20.74.178
@ -290,7 +290,7 @@ dhcp:
host-opts: host-opts:
routers: priv22-gw.priv22 routers: priv22-gw.priv22
string-opts: string-opts:
domain-name: priv22.zentralwerk.org domain-name: priv22.zentralwerk.dn42
priv23: priv23:
start: 172.20.73.165 start: 172.20.73.165
@ -302,7 +302,7 @@ dhcp:
host-opts: host-opts:
routers: priv23-gw.priv23 routers: priv23-gw.priv23
string-opts: string-opts:
domain-name: priv23.zentralwerk.org domain-name: priv23.zentralwerk.dn42
fixed-hosts: fixed-hosts:
172.20.73.162: da:2c:3a:2c:87:22 172.20.73.162: da:2c:3a:2c:87:22
172.20.73.163: ca:9f:27:b2:bf:6d 172.20.73.163: ca:9f:27:b2:bf:6d
@ -318,7 +318,7 @@ dhcp:
host-opts: host-opts:
routers: priv24-gw.priv24 routers: priv24-gw.priv24
string-opts: string-opts:
domain-name: priv24.zentralwerk.org domain-name: priv24.zentralwerk.dn42
priv25: priv25:
start: 172.20.74.82 start: 172.20.74.82
@ -330,7 +330,7 @@ dhcp:
host-opts: host-opts:
routers: priv25-gw.priv25 routers: priv25-gw.priv25
string-opts: string-opts:
domain-name: priv25.zentralwerk.org domain-name: priv25.zentralwerk.dn42
priv26: priv26:
start: 172.20.75.50 start: 172.20.75.50
@ -342,7 +342,7 @@ dhcp:
host-opts: host-opts:
routers: priv26-gw.priv26 routers: priv26-gw.priv26
string-opts: string-opts:
domain-name: priv26.zentralwerk.org domain-name: priv26.zentralwerk.dn42
priv27: priv27:
start: 172.20.75.82 start: 172.20.75.82
@ -354,7 +354,7 @@ dhcp:
host-opts: host-opts:
routers: priv27-gw.priv27 routers: priv27-gw.priv27
string-opts: string-opts:
domain-name: priv27.zentralwerk.org domain-name: priv27.zentralwerk.dn42
priv28: priv28:
start: 172.20.75.114 start: 172.20.75.114
@ -366,7 +366,7 @@ dhcp:
host-opts: host-opts:
routers: priv28-gw.priv28 routers: priv28-gw.priv28
string-opts: string-opts:
domain-name: priv28.zentralwerk.org domain-name: priv28.zentralwerk.dn42
priv29: priv29:
start: 172.20.75.146 start: 172.20.75.146
@ -378,7 +378,7 @@ dhcp:
host-opts: host-opts:
routers: priv29-gw.priv29 routers: priv29-gw.priv29
string-opts: string-opts:
domain-name: priv29.zentralwerk.org domain-name: priv29.zentralwerk.dn42
priv30: priv30:
start: 172.20.75.178 start: 172.20.75.178
@ -390,7 +390,7 @@ dhcp:
host-opts: host-opts:
routers: priv30-gw.priv30 routers: priv30-gw.priv30
string-opts: string-opts:
domain-name: priv30.zentralwerk.org domain-name: priv30.zentralwerk.dn42
priv31: priv31:
start: 172.20.75.210 start: 172.20.75.210
@ -402,7 +402,7 @@ dhcp:
host-opts: host-opts:
routers: priv31-gw.priv31 routers: priv31-gw.priv31
string-opts: string-opts:
domain-name: priv31.zentralwerk.org domain-name: priv31.zentralwerk.dn42
priv32: priv32:
start: 172.20.75.242 start: 172.20.75.242
@ -414,7 +414,7 @@ dhcp:
host-opts: host-opts:
routers: priv32-gw.priv32 routers: priv32-gw.priv32
string-opts: string-opts:
domain-name: priv32.zentralwerk.org domain-name: priv32.zentralwerk.dn42
priv33: priv33:
start: 172.20.74.18 start: 172.20.74.18
@ -426,7 +426,7 @@ dhcp:
host-opts: host-opts:
routers: priv33-gw.priv33 routers: priv33-gw.priv33
string-opts: string-opts:
domain-name: priv33.zentralwerk.org domain-name: priv33.zentralwerk.dn42
priv34: priv34:
start: 172.20.74.210 start: 172.20.74.210
@ -438,7 +438,7 @@ dhcp:
host-opts: host-opts:
routers: priv34-gw.priv34 routers: priv34-gw.priv34
string-opts: string-opts:
domain-name: priv34.zentralwerk.org domain-name: priv34.zentralwerk.dn42
priv35: priv35:
start: 172.20.76.2 start: 172.20.76.2
@ -450,7 +450,7 @@ dhcp:
host-opts: host-opts:
routers: priv35-gw.priv35 routers: priv35-gw.priv35
string-opts: string-opts:
domain-name: priv35.zentralwerk.org domain-name: priv35.zentralwerk.dn42
priv36: priv36:
start: 172.20.76.66 start: 172.20.76.66
@ -462,7 +462,7 @@ dhcp:
host-opts: host-opts:
routers: priv36-gw.priv36 routers: priv36-gw.priv36
string-opts: string-opts:
domain-name: priv36.zentralwerk.org domain-name: priv36.zentralwerk.dn42
priv37: priv37:
start: 172.20.76.130 start: 172.20.76.130
@ -474,7 +474,7 @@ dhcp:
host-opts: host-opts:
routers: priv37-gw.priv37 routers: priv37-gw.priv37
string-opts: string-opts:
domain-name: priv37.zentralwerk.org domain-name: priv37.zentralwerk.dn42
priv38: priv38:
start: 172.20.76.194 start: 172.20.76.194
@ -486,7 +486,7 @@ dhcp:
host-opts: host-opts:
routers: priv38-gw.priv38 routers: priv38-gw.priv38
string-opts: string-opts:
domain-name: priv38.zentralwerk.org domain-name: priv38.zentralwerk.dn42
priv39: priv39:
start: 172.20.77.130 start: 172.20.77.130
@ -498,7 +498,7 @@ dhcp:
host-opts: host-opts:
routers: priv39-gw.priv39 routers: priv39-gw.priv39
string-opts: string-opts:
domain-name: priv39.zentralwerk.org domain-name: priv39.zentralwerk.dn42
priv40: priv40:
start: 172.20.77.66 start: 172.20.77.66
@ -510,4 +510,4 @@ dhcp:
host-opts: host-opts:
routers: priv40-gw.priv40 routers: priv40-gw.priv40
string-opts: string-opts:
domain-name: priv40.zentralwerk.org domain-name: priv40.zentralwerk.dn42

View File

@ -159,12 +159,6 @@ hosts-inet:
pub: pub:
pub-gw: 172.20.78.1 pub-gw: 172.20.78.1
{%- for i in range(2, 256) %}
guest{{ i }}: 172.20.78.{{ i }}
{%- endfor %}
{%- for i in range(0, 255) %}
guest{{ 256 + i }}: 172.20.79.{{ i }}
{%- endfor %}
serv: serv:
serv-gw: 172.20.73.1 serv-gw: 172.20.73.1
dns: 172.20.73.2 dns: 172.20.73.2