Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 18 additions & 6 deletions dockers/docker-router-advertiser/radvd.conf.j2
Original file line number Diff line number Diff line change
Expand Up @@ -10,28 +10,40 @@

{# If our configuration has VLAN interfaces... #}
{% if VLAN_INTERFACE %}
{% for (name, prefix) in VLAN_INTERFACE|pfx_filter %}
{# If this VLAN has an IPv6 address... #}
{% set vlan_list = dict() %}
{% for (name,prefix) in VLAN_INTERFACE|pfx_filter %}
{% if name is not in vlan_list and prefix | ipv6 %}
{% set prefix_list = [] %}
{% set _ = vlan_list.update({name: prefix_list}) %}
{% endif %}
{% if prefix | ipv6 %}
{# If our configuration has VLAN interfaces... #}
{% set prefix_list = vlan_list.get(name) %}
{% set _ = prefix_list.append(prefix) %}
{% set _ = vlan_list.update({name: prefix_list}) %}
{% endif %}
{% endfor %}
{% endif %}
{% for name, prefixes in vlan_list.items() %}
interface {{ name }}
{
IgnoreIfMissing on;
AdvSendAdvert on;
MinRtrAdvInterval 200;
MaxRtrAdvInterval 600;
MinRtrAdvInterval 60;
MaxRtrAdvInterval 180;
AdvManagedFlag on;
AdvOtherConfigFlag off;
AdvLinkMTU 9100;
AdvHomeAgentFlag off;
{% for prefix in prefixes %}
prefix {{ prefix | network }}/{{ prefix | prefixlen }} {
AdvOnLink on;
AdvAutonomous off;
AdvRouterAddr off;
AdvValidLifetime infinity;
AdvPreferredLifetime infinity;
};
{% endfor %}
};

{% endif %}
{% endfor %}
{% endif %}
Loading