templatisation de la config dhcpd

non encore testé
This commit is contained in:
Yohaï-Eliel BERREBY 2020-04-05 17:39:27 +02:00
parent 40e915a7e0
commit e6b2f80b49
3 changed files with 85 additions and 10 deletions

View file

@ -0,0 +1,11 @@
---
apartment_block: fleming
subnet_ids:
ap: 141
users_wired: 10
users_wifi: 11
failover:
own-address: 10.128.2.254
peer-address: 10.128.2.154

View file

@ -0,0 +1,7 @@
---
apartment_block: pacaterie
subnet_ids:
ap: 142
users_wired: 20
users_wifi: 21

View file

@ -1,15 +1,16 @@
# dhcpd.conf
# {{ ansible_managed }}
{{ ansible_managed }}
# option definitions common to all supported networks...
#option domain-name "example.org";
#option domain-name-servers ns1.example.org, ns2.example.org;
default-lease-time 86400;
max-lease-time 86400;
# We have tagged network so use last 4 bytes for tag (1500 max)
option interface-mtu 1496;
# Option definitions common to all supported networks.
default-lease-time 600;
max-lease-time 7200;
# The MTU theoretically could go as high as 1496 (4-byte VLAN tag).
option interface-mtu 1400;
# XXX: hardcoded DNS for now
option domain-name-servers 80.67.169.12, 1.1.1.1;
option root-path "/";
# The ddns-updates-style parameter controls whether or not the server will
# attempt to do a DNS update when a lease is confirmed. We default to the
@ -29,5 +30,61 @@ authoritative;
# have to hack syslog.conf to complete the redirection).
#log-facility local7;
# Aurore topology
# TODO
# Bornes WiFi
subnet 10.{{ subnet_ids.ap }}.0.0 netmask 255.255.0.0 {
interface "ens19";
option subnet-mask 255.255.0.0;
option broadcast-address 10.{{ subnet_ids.ap }}.255.255;
option routers 10.{{ subnet_ids.ap }}.0.250;
option domain-name-servers 80.67.169.12, 1.1.1.1;
option domain-name "borne.auro.re";
option domain-search "borne.auro.re";
include "/var/local/re2o-services/dhcp/generated/dhcp.borne.auro.re.list";
deny unknown-clients;
}
# Users filaire
subnet 10.{{ subnet_ids.users_wired }}.0.0 netmask 255.255.0.0 {
interface "ens20";
option subnet-mask 255.255.0.0;
option broadcast-address 10.{{ subnet_ids.users_wired }}.255.255;
option routers 10.{{ subnet_ids.users_wired }}.0.240;
option domain-name "fil.{{ apartment_block }}.auro.re";
option domain-search "auro.re";
include "/var/local/re2o-services/dhcp/generated/dhcp.fil.{{ apartment_block }}.auro.re.list";
deny unknown-clients;
}
# Users WiFi
subnet 10.{{ subnet_ids.users_wired }}.0.0 netmask 255.255.0.0 {
interface "ens21";
option subnet-mask 255.255.0.0;
option broadcast-address 10.{{ subnet_ids.users_wired }}.255.255;
option routers 10.{{ subnet_ids.users_wired }}.0.240;
option domain-name "wifi.{{ apartment_block }}.auro.re";
option domain-search "auro.re";
include "/var/local/re2o-services/dhcp/generated/dhcp.wifi.{{ apartment_block }}.auro.re.list";
pool {
range 10.{{ subnet_ids.users_wired }}.8.0 10.{{ subnet_ids.users_wired }}.10.255;
{% if failover is defined %}
failover peer "dhcp-failover" {
primary;
split 128;
mclt 3600;
address {{ failover.own_address }};
port 647;
peer address {{ failover.peer_address }};
peer port 647;
max-response-delay 30;
max-unacked-updates 10;
load balance max seconds 3;
}
{% endif %}
}
}