This systemd service files can be used to launch multiple kea instances with different configs on the same server eg. for mutliple vlans or network interfaces
This requires that the config files of each instance are located under /etc/kea/<instanceid>/
and the config files themself also match this pattern:
- dhcp4 server:
kea-dhcp6-<instanceid>.conf
- dhcp6 server:
kea-dhcp4-<instanceid>.conf
- ddns server:
kea-ddns-<instanceid>.conf
- ctrl agent:
kea-ctrl-agent-<instanceid>.conf
You can name them differently but then have to adjust the service files accordingly
The service files can used by copying them to the systemd service directory (eg. on debian /lib/systemd/system/ /etc/systemd/system/). Then enable the different kea services by running this commands for each kea instance on that server:
- dhcp4 server:
systemctl enable kea-dhcp4-server@<instanceid>
- dhcp6 server:
systemctl enable kea-dhcp6-server@<instanceid>
- ddns server:
systemctl enable kea-ddns-server@<instanceid>
- ctrl agent:
systemctl enable kea-ctrl-agent@<instanceid>
If you want that the kea services automatically restart if they crash you can add Restart=always
to the [Service]
section of the service files.
See https://gist.github.com/Skywalker-11/29ab856ed3c88f0eadc6e833f32fa78a for a version with a single kea instance on a server