From df3cc89354b758742ea3f2a895aa06e31b2b716b Mon Sep 17 00:00:00 2001 From: Pierre-Olivier Mercier Date: Tue, 14 Nov 2023 10:03:01 +0100 Subject: [PATCH] New variable: wanted_ip6_suffix --- tasks/main.yml | 2 +- templates/networking.j2 | 13 ++++++++++++- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/tasks/main.yml b/tasks/main.yml index dd56878..9092328 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -66,7 +66,7 @@ template: src: networking.j2 dest: /etc/network/interfaces - when: wanted_ip4 is defined or wanted_ip6 is defined + when: wanted_ip4 is defined or wanted_ip6 is defined or wanted_ip6_suffix is defined tags: - networking diff --git a/templates/networking.j2 b/templates/networking.j2 index 8d555b2..dd78c4c 100644 --- a/templates/networking.j2 +++ b/templates/networking.j2 @@ -8,16 +8,24 @@ iface lo inet loopback # The main interface auto {{ networking_main_iface }} {% if bridged_network is defined and bridged_network %} +{% if bridged_network != "true" %} +{% for iface in bridged_network.split(" ") %} +auto {{ iface }} +{% endfor %} +{% endif %} auto br0 iface br0 requires {{ networking_main_iface }}{% if bridged_network != "true" %} {{ bridged_network }}{% endif +%} bridge-ports {{ networking_main_iface }}{% if bridged_network != "true" %} {{ bridged_network }}{% endif +%} bridge-fd 0 bridge-stp off +{% if hw_address is defined %} + pre-up ip link set dev {{ networking_main_iface }} address {{ hw_address }} +{% endif %} {% else %} iface {{ networking_main_iface }} {% endif %} -{% if hw_address is defined %} +{% if bridged_network is not defined and hw_address is defined %} hwaddress ether {{ hw_address }} {% endif %} {% if wanted_ip4 is defined %} @@ -26,6 +34,9 @@ iface {{ networking_main_iface }} {% else %} use dhcp {% endif %} +{% if wanted_ip6_suffix is defined %} + up ip token set {{ wanted_ip6_suffix }}/64 dev {% if bridged_network is defined and bridged_network %}br0{% else %}{{ networking_main_iface }}{% endif %} +{% endif %} {% if wanted_ip6 is defined %} {% if local_network.gateway6 is defined %} address {{ wanted_ip6 }}/64