45 lines
1.2 KiB
Django/Jinja
45 lines
1.2 KiB
Django/Jinja
{%- import '_common.j2' as common_opts with context -%}
|
|
# Generated by he_ipv6.
|
|
# This may go wonky with multiple assignments on the same iface.
|
|
{% for assignment in assignments %}
|
|
interface {{ assignment.iface }} {
|
|
AdvSendAdvert on;
|
|
AdvLinkMTU {{ common_opts.mtu }};
|
|
MinRtrAdvInterval {{ common_opts.min_inter }};
|
|
MaxRtrAdvInterval {{ common_opts.max_inter }};
|
|
MinDelayBetweenRAs {{ common_opts.min_delay }};
|
|
AdvDefaultLifetime {{ common_opts.lifetime }};
|
|
{%- if assignment.ra_dhcp is true -%}
|
|
AdvManagedFlag on;
|
|
{%- endif %}
|
|
{%- if assignment.ra_other is true -%}
|
|
AdvOtherConfigFlag on;
|
|
{%- endif %}
|
|
|
|
{%- for block in assignment.iface_blocks %}
|
|
prefix {{ block|string }} {
|
|
AdvOnLink on;
|
|
{%- if block.prefixlen <= 64 %}
|
|
AdvAutonomous on;
|
|
{%- endif %}
|
|
AdvValidLifetime {{ common_opts.lease_life }};
|
|
AdvPreferredLifetime {{ common_opts.lease_life }};
|
|
AdvRouterAddr off;
|
|
};
|
|
{%- endfor %}
|
|
|
|
{%- if assign.ra_dns is true %}
|
|
RDNSS {{ assignment.iface_ll }} {
|
|
AdvRDNSSLifetime {{ common_opts.opts_life }};
|
|
};
|
|
{%- endif %}
|
|
|
|
{%- if assign.ra_domains %}
|
|
DNSSL {{ assignment.ra_domains|join(' ') }} {
|
|
AdvDNSSLLifetime {{ common_opts.opts_life }};
|
|
};
|
|
{%- endif %}
|
|
};
|
|
|
|
{%- endfor %}
|