diff --git a/update-default-route.yml b/update-default-route.yml index 96d9a00..f23207e 100644 --- a/update-default-route.yml +++ b/update-default-route.yml @@ -2,10 +2,25 @@ - name: Update default gateway hosts: hosts become: true + vars: + new_gateway: "{{ gateway_ip }}" tasks: + - name: Validate gateway format + assert: + that: + - new_gateway is match("^(?:[0-9]{1,3}\.){3}[0-9]{1,3}$") + fail_msg: "Invalid IPv4 address provided." + + - name: Replace gateway line in interfaces file + lineinfile: + path: /etc/network/interfaces + regexp: '^(\s*)gateway\s+' + line: " gateway {{ new_gateway }}" + backrefs: yes + - name: Apply new default route immediately - command: ip route replace default via 192.168.1.254 + command: ip route replace default via {{ new_gateway }} - name: Restart networking systemd: