summaryrefslogtreecommitdiff
path: root/roles/install_radvd
diff options
context:
space:
mode:
Diffstat (limited to 'roles/install_radvd')
-rw-r--r--roles/install_radvd/handlers/main.yml5
-rw-r--r--roles/install_radvd/tasks/main.yml17
-rw-r--r--roles/install_radvd/templates/radvd.conf.j226
3 files changed, 48 insertions, 0 deletions
diff --git a/roles/install_radvd/handlers/main.yml b/roles/install_radvd/handlers/main.yml
new file mode 100644
index 0000000..37634dd
--- /dev/null
+++ b/roles/install_radvd/handlers/main.yml
@@ -0,0 +1,5 @@
+---
+- name: restart radvd
+ systemd:
+ name: radvd.service
+ state: restarted
diff --git a/roles/install_radvd/tasks/main.yml b/roles/install_radvd/tasks/main.yml
new file mode 100644
index 0000000..161e7a1
--- /dev/null
+++ b/roles/install_radvd/tasks/main.yml
@@ -0,0 +1,17 @@
+---
+- name: install radvd
+ pacman:
+ name: radvd
+ state: present
+
+- name: radvd config
+ template:
+ src: radvd.conf.j2
+ dest: /etc/radvd.conf
+ notify: restart radvd
+
+- name: start and enable radvd
+ systemd:
+ name: radvd.service
+ enabled: yes
+ state: started
diff --git a/roles/install_radvd/templates/radvd.conf.j2 b/roles/install_radvd/templates/radvd.conf.j2
new file mode 100644
index 0000000..0774189
--- /dev/null
+++ b/roles/install_radvd/templates/radvd.conf.j2
@@ -0,0 +1,26 @@
+{% for site in sites %}
+interface bat{{ site.name }}
+{
+ AdvSendAdvert on;
+ IgnoreIfMissing on;
+ MinRtrAdvInterval 3;
+ MaxRtrAdvInterval 900;
+
+ AdvDefaultPreference low;
+ AdvHomeAgentFlag off;
+
+ prefix {{ site.net6 }}
+ {
+ AdvOnLink on;
+ AdvAutonomous on;
+ AdvRouterAddr off;
+ };
+
+ RDNSS {{ site.bat_ipv6 }}
+ {
+ AdvRDNSSLifetime 30;
+ };
+
+};
+
+{% endfor %}