diff --git a/roles/interfaces/templates/network/interfaces.d/00-srv.j2 b/roles/interfaces/templates/network/interfaces.d/00-srv.j2 index 4c7468a1..7fc0390f 100644 --- a/roles/interfaces/templates/network/interfaces.d/00-srv.j2 +++ b/roles/interfaces/templates/network/interfaces.d/00-srv.j2 @@ -11,9 +11,27 @@ iface {{ srv_iface.stdout }} inet static dns-nameservers {{ srv_dns }} dns-search crans.org up /sbin/ip link set $IFACE alias srv +{% if 'interfaces' in ansible_local %} +{% if srv_iface.stdout in ansible_local.interfaces %} +{% if 'sup_if_4' in ansible_local.interfaces[srv_iface.stdout] %} +{% for line in ansible_local.interfaces[srv_iface.stdout].sup_if_4 %} + {{ line }} +{% endfor %} +{% endif %} +{% endif %} +{% endif %} iface {{ srv_iface.stdout }} inet6 static address {{ hostvars[inventory_hostname]['ansible_' + srv_iface.stdout].ipv6[0].address }}/{{ hostvars[inventory_hostname]['ansible_' + srv_iface.stdout].ipv6[0].prefix }} autoconf 1 accept_ra 2 up /sbin/sysctl net/ipv6/conf/$IFACE/accept_ra_defrtr=1 +{% if 'interfaces' in ansible_local %} +{% if srv_iface.stdout in ansible_local.interfaces %} +{% if 'sup_if_6' in ansible_local.interfaces[srv_iface.stdout] %} +{% for line in ansible_local.interfaces[srv_iface.stdout].sup_if_6 %} + {{ line }} +{% endfor %} +{% endif %} +{% endif %} +{% endif %} diff --git a/roles/interfaces/templates/network/interfaces.d/01-ens.j2 b/roles/interfaces/templates/network/interfaces.d/01-ens.j2 index c7a34671..e94243b1 100644 --- a/roles/interfaces/templates/network/interfaces.d/01-ens.j2 +++ b/roles/interfaces/templates/network/interfaces.d/01-ens.j2 @@ -26,3 +26,12 @@ iface {{ ens_iface.stdout }} inet6 static autoconf 1 accept_ra 2 up /sbin/sysctl net/ipv6/conf/$IFACE/accept_ra_defrtr=1 +{% if 'interfaces' in ansible_local %} +{% if ens_iface.stdout in ansible_local.interfaces %} +{% if 'sup_if_6' in ansible_local.interfaces[ens_iface.stdout] %} +{% for line in ansible_local.interfaces[ens_iface.stdout].sup_if_6 %} + {{ line }} +{% endfor %} +{% endif %} +{% endif %} +{% endif %} diff --git a/roles/interfaces/templates/network/interfaces.d/02-adm.j2 b/roles/interfaces/templates/network/interfaces.d/02-adm.j2 index d0b5b833..bd928eae 100644 --- a/roles/interfaces/templates/network/interfaces.d/02-adm.j2 +++ b/roles/interfaces/templates/network/interfaces.d/02-adm.j2 @@ -10,6 +10,24 @@ iface {{ adm_iface.stdout }} inet static dns-nameservers {{ adm_dns }} dns-search adm.crans.org up /sbin/ip link set $IFACE alias adm +{% if 'interfaces' in ansible_local %} +{% if adm_iface.stdout in ansible_local.interfaces %} +{% if 'sup_if_4' in ansible_local.interfaces[adm_iface.stdout] %} +{% for line in ansible_local.interfaces[adm_iface.stdout].sup_if_4 %} + {{ line }} +{% endfor %} +{% endif %} +{% endif %} +{% endif %} iface {{ adm_iface.stdout }} inet6 static address {{ hostvars[inventory_hostname]['ansible_' + adm_iface.stdout].ipv6[0].address }}/{{ hostvars[inventory_hostname]['ansible_' + adm_iface.stdout].ipv6[0].prefix }} +{% if 'interfaces' in ansible_local %} +{% if adm_iface.stdout in ansible_local.interfaces %} +{% if 'sup_if_6' in ansible_local.interfaces[adm_iface.stdout] %} +{% for line in ansible_local.interfaces[adm_iface.stdout].sup_if_6 %} + {{ line }} +{% endfor %} +{% endif %} +{% endif %} +{% endif %}