46 lines
1.1 KiB
Django/Jinja
46 lines
1.1 KiB
Django/Jinja
{% for mesh in meshes %}
|
|
protocol radv radv_{{ mesh.id }} {
|
|
interface "{{ mesh.id }}br" {
|
|
max ra interval {{ mesh.radvd.maxrtradvinterval }};
|
|
|
|
{% for prefix in mesh.ipv6_ula %}
|
|
prefix {{ prefix | ipaddr('net') | ipsubnet(64, 0) | ipaddr('subnet') }} {
|
|
valid lifetime {{ mesh.radvd.advvalidlifetime }};
|
|
preferred lifetime {{ mesh.radvd.advpreferredlifetime }};
|
|
};
|
|
{% endfor %}
|
|
|
|
{% for prefix in mesh.ipv6_public %}
|
|
prefix {{ prefix | ipaddr('net') | ipsubnet(64, 0) | ipaddr('subnet') }} {
|
|
skip yes;
|
|
};
|
|
{% endfor %}
|
|
|
|
{% for prefix in mesh_gw_prefixes[mesh.id].ipv6_public %}
|
|
prefix {{ prefix | ipaddr('net') | ipsubnet(64, 0) | ipaddr('subnet') }} {
|
|
valid lifetime {{ mesh.radvd.advvalidlifetime }};
|
|
preferred lifetime {{ mesh.radvd.advpreferredlifetime }};
|
|
};
|
|
{% endfor %}
|
|
|
|
rdnss {
|
|
{% for prefix in mesh.ipv6_ula %}
|
|
ns {{ prefix | ipaddr('net') | ipsubnet(64, 0) | ipaddr(magic) | ipaddr('address') }};
|
|
{% endfor %}
|
|
};
|
|
|
|
{% if mesh.dnssl is defined %}
|
|
dnssl {
|
|
{% for dnssl in mesh.dnssl %}
|
|
domain "{{ dnssl }}";
|
|
{% endfor %}
|
|
};
|
|
{% endif %}
|
|
|
|
link mtu {{ mesh.iface_mtu }};
|
|
};
|
|
}
|
|
{% if not loop.last %}
|
|
|
|
{% endif %}
|
|
{% endfor %}
|