ansible/roles/interfaces/templates/network/interfaces.d/ifalias.j2

37 lines
1.2 KiB
Django/Jinja

{{ ansible_header | comment }}
{% set ifconfig = hostvars[inventory_hostname]['ansible_' + item.ifnames[0]] %}
auto {{ item.ifnames[0] }}
iface {{ item.ifnames[0] }} inet static
address {{ ifconfig.ipv4.address }}
network {{ ifconfig.ipv4.network }}
netmask {{ ifconfig.ipv4.netmask }}
broadcast {{ ifconfig.ipv4.broadcast }}
{% if item.gateway is defined %}
gateway {{ item.gateway }}
{% endif %}
{% if item.metric is defined %}
metric {{ item.metric }}
{% endif %}
mtu 1496
dns-nameservers {{ item.dns }}
dns-search {{ item.dns_search }}
up /sbin/ip link set $IFACE alias {{ item.name }}
{% if ansible_local.interfaces.sup_if_4 is defined %}
{% if item.ifnames[0] in ansible_local.interfaces.sup_if_4 %}
{% for line in ansible_local.interfaces.sup_if_4[item.ifnames[0]] %}
{{ line }}
{% endfor %}
{% endif %}
{% endif %}
iface {{ item.ifnames[0] }} inet6 static
address {{ ifconfig.ipv6[0].address }}/{{ ifconfig.ipv6[0].prefix }}
{% if ansible_local.interfaces.sup_if_6 is defined %}
{% if item.ifnames[0] in ansible_local.interfaces.sup_if_6 %}
{% for line in ansible_local.interfaces.sup_if_6[item.ifnames[0]] %}
{{ line }}
{% endfor %}
{% endif %}
{% endif %}