24 lines
791 B
Django/Jinja
24 lines
791 B
Django/Jinja
auto lo
|
|
iface lo inet loopback
|
|
|
|
{% for iface in interfaces | selectattr('enabled') %}
|
|
auto {{ iface.name }}
|
|
iface {{ iface.name }} inet static
|
|
{% for address in iface.ip_addresses %}
|
|
address {{ address.address }}
|
|
{% if address.family.value == 4 %}
|
|
{% set subnet = address.address | ipaddr('subnet') %}
|
|
{% set prefix = prefixes | selectattr('prefix', '==', subnet) | first %}
|
|
{% set gateway = prefix.custom_fields.gateway.address %}
|
|
{% if gateway is defined and gateway != address.address %}
|
|
gateway {{ gateway | ipaddr('address') }}
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endfor -%}
|
|
|
|
{# disable SLAAC if we have a manually set IPv6 address #}
|
|
{% if iface.ip_addresses | selectattr("family.value", "==", 6) %}
|
|
pre-up echo 0 > /proc/sys/net/ipv6/conf/$IFACE/autoconf
|
|
{% endif %}
|
|
|
|
{% endfor %}
|