From 54375b7815771124f6a6a303b05e5d3f358d49db Mon Sep 17 00:00:00 2001 From: Julian Rother Date: Tue, 11 Nov 2025 12:55:40 +0100 Subject: [PATCH] Initial commit --- defaults/main.yml | 43 +++++++++++++++++++++++++++++++++++++++++++ handlers/main.yml | 4 ++++ tasks/main.yml | 13 +++++++++++++ 3 files changed, 60 insertions(+) create mode 100644 defaults/main.yml create mode 100644 handlers/main.yml create mode 100644 tasks/main.yml diff --git a/defaults/main.yml b/defaults/main.yml new file mode 100644 index 0000000..bf30b61 --- /dev/null +++ b/defaults/main.yml @@ -0,0 +1,43 @@ +kea_dhcp4: + # Caution: Empty arrys sometimes cause syntax errors + interfaces-config: + #interfaces: + #- eth0 + dhcp-socket-type: raw + control-socket: + socket-type: unix + socket-name: /run/kea/kea4-ctrl-socket + lease-database: + type: memfile + lfc-interval: 3600 + expired-leases-processing: + reclaim-timer-wait-time: 10 + flush-reclaimed-timer-wait-time: 25 + hold-reclaimed-time: 3600 + max-reclaim-leases: 100 + max-reclaim-time: 250 + unwarned-reclaim-cycles: 5 + valid-lifetime: 3600 + calculate-tee-times: true + hostname-char-set: "[^A-Za-z0-9.-]" + hostname-char-replacement: "x" + store-extended-info: true + echo-client-id: false + #subnet4: + # - subnet: 192.0.2.0/24 + # pools: + # - pool: 192.0.2.2 - 192.0.2.200 + # option-data: + # - name: routers + # data: 192.0.2.1 + # reservations: + # - hostname: special-snowflake + # hw-address: 1a:1b:1c:1d:1e:1f + # ip-address: 192.0.2.201 + loggers: + - name: kea-dhcp4 + output_options: + - output: stdout + pattern: "%-5p %m\n" + severity: INFO + debuglevel: 0 diff --git a/handlers/main.yml b/handlers/main.yml new file mode 100644 index 0000000..94988f7 --- /dev/null +++ b/handlers/main.yml @@ -0,0 +1,4 @@ +- name: restart kea-dhcp4-server + ansible.builtin.service: + name: kea-dhcp4-server + state: restarted diff --git a/tasks/main.yml b/tasks/main.yml new file mode 100644 index 0000000..b3748d6 --- /dev/null +++ b/tasks/main.yml @@ -0,0 +1,13 @@ +- name: install packages + ansible.builtin.apt: + pkg: + - kea + +- name: copy dhcpv4 config + copy: + dest: /etc/kea/kea-dhcp4.conf + content: "{{ {'Dhcp4': kea_dhcp4}|to_nice_json(indent=4) }}\n" + owner: root + group: _kea + mode: "0640" + notify: restart kea-dhcp4-server