--- - name: sets up dhcp for a local homelab network between 0-255 hosts hosts: dhcp become: true vars: device: ens18 tasks: - name: install dhcp software on redhat platform ansible.builtin.dnf: name: dhcp-server state: present - name: allow dhcp service on redhat platform ansible.posix.firewalld: service: dhcp permanent: true state: enabled immediate: true - name: set up dhcpd.conf ansible.builtin.template: src: /home/mango/projects/homelab/templates/dhcpd.conf.j2 dest: /etc/dhcp/dhcpd.conf mode: '0644' - name: set the listening device ansible.builtin.lineinfile: path: /usr/lib/systemd/system/dhcpd.service regexp: '^ExecStart=' line: "ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid {{device}}" - name: daemon reload to restart changes ansible.builtin.systemd: daemon_reload: true - name: start the dhcp service ansible.builtin.service: name: dhcpd state: started enabled: true