From bb0abab8308256c028c29e3732e53ef211cad613 Mon Sep 17 00:00:00 2001 From: Ahmed Abdelhalim Date: Wed, 8 Jul 2026 03:15:11 +0200 Subject: Implement a working ipv6 on gateway --- roles/gateway/tasks/main.yml | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'roles/gateway/tasks') diff --git a/roles/gateway/tasks/main.yml b/roles/gateway/tasks/main.yml index 661630f7..71484725 100644 --- a/roles/gateway/tasks/main.yml +++ b/roles/gateway/tasks/main.yml @@ -6,6 +6,7 @@ - "iptables" - "iproute2" - "udev" + - "radvd" state: "present" - name: "Configure IP forwarding" @@ -67,3 +68,39 @@ name: "gateway-init.service" enabled: "{{ gateway_enabled }}" daemon_reload: true + +- name: "Configure radvd for IPv6 RA" + become: true + when: gateway_enabled and gateway_local_ipv6_subnet != "" + block: + - name: "Deploy radvd config" + ansible.builtin.template: + src: "radvd.conf.j2" + dest: "/etc/radvd.conf" + owner: "root" + group: "root" + mode: "0644" + notify: "Restart radvd" + + - name: "Enable radvd service" + ansible.builtin.systemd_service: + name: "radvd.service" + enabled: true + state: "started" + daemon_reload: true + +- name: "Disable radvd when no IPv6 subnet configured" + become: true + when: not gateway_enabled or gateway_local_ipv6_subnet == "" + block: + - name: "Stop and disable radvd" + ansible.builtin.systemd_service: + name: "radvd.service" + enabled: false + state: "stopped" + failed_when: false + + - name: "Remove radvd config" + ansible.builtin.file: + path: "/etc/radvd.conf" + state: "absent" -- cgit v1.2.3