summaryrefslogtreecommitdiff
path: root/data/templates/frr/ospfv3.frr.tmpl
blob: c63ef80dc86c5ec587c33810bb0e829900cea5db (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
!
router ospf6
{% if area is defined and area is not none %}
{%   for area_id, area_config in area.items() %}
{%     if area_config.interface is defined and area_config.interface is not none %}
{%       for interface in area_config.interface %}
 interface {{ interface }} area {{ area_id }}
{%       endfor %}
{%     endif %}
{%     if area_config.range is defined and area_config.range is not none %}
{%       for prefix, prefix_config in area_config.range.items() %}
 area {{ area_id }} range {{ prefix }} {{ 'advertise' if prefix_config.advertise is defined }} {{ 'not-advertise' if prefix_config.not_advertise is defined }}
{%       endfor %}
{%     endif %}
{%     if area_config.export_list is defined and area_config.export_list is not none %}
 area {{ area_id }} export-list {{ area_config.export_list }}
{%     endif %}
{%     if area_config.import_list is defined and area_config.import_list is not none %}
 area {{ area_id }} import-list {{ area_config.import_list }}
{%     endif %}
{%   endfor %}
{% endif %}
{% if distance is defined and distance is not none %}
{%   if distance.global is defined and distance.global is not none %}
 distance {{ distance.global }}
{%   endif %}
{%   if distance.ospfv3 is defined and distance.ospfv3 is not none %}
 distance ospf6 {{ 'intra-area ' + distance.ospfv3.intra_area if distance.ospfv3.intra_area is defined }} {{ 'inter-area ' + distance.ospfv3.inter_area if distance.ospfv3.inter_area is defined }} {{ 'external ' + distance.ospfv3.external if distance.ospfv3.external is defined }}
{%   endif %}
{% endif %}
{% if parameters is defined and parameters is not none %}
{%   if parameters.router_id is defined and parameters.router_id is not none %}
 ospf6 router-id {{ parameters.router_id }}
{%   endif %}
{% endif %}
{% if redistribute is defined and redistribute is not none %}
{%   for protocol, options in redistribute.items() %}
 redistribute {{ protocol }} {{ 'route-map ' + options.route_map if options.route_map is defined }}
{%   endfor %}
{% endif %}
!