summaryrefslogtreecommitdiff
path: root/data/templates/frr/bfdd.frr.tmpl
blob: 439f79d67fa5f8e1e796cce60d908b340f1a1181 (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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
{% if profile is defined or peer is defined %}
bfd
{% if profile is defined and profile is not none %}
{%   for profile_name, profile_config in profile.items() %}
 profile {{ profile_name }}
  detect-multiplier {{ profile_config.interval.multiplier }}
  receive-interval {{ profile_config.interval.receive }}
  transmit-interval {{ profile_config.interval.transmit }}
{%     if profile_config.interval.echo_interval is defined and profile_config.interval.echo_interval is not none %}
  echo transmit-interval {{ profile_config.interval.echo_interval }}
  echo receive-interval {{ profile_config.interval.echo_interval }}
{%     endif %}
{%     if profile_config.echo_mode is defined %}
  echo-mode
{%     endif %}
{%     if profile_config.passive is defined %}
  passive-mode
{%     endif %}
{%     if profile_config.shutdown is defined %}
  shutdown
{%     else %}
  no shutdown
{%     endif %}
 exit
 !
{%   endfor %}
{% endif %}
{% if peer is defined and peer is not none %}
{%   for peer_name, peer_config in peer.items() %}
 peer {{ peer_name }}{{ ' multihop' if peer_config.multihop is defined }}{{ ' local-address ' + peer_config.source.address if peer_config.source is defined and peer_config.source.address is defined }}{{ ' interface ' + peer_config.source.interface if peer_config.source is defined and peer_config.source.interface is defined }} {{ ' vrf ' + peer_config.vrf if peer_config.vrf is defined and peer_config.vrf is not none }}
  detect-multiplier {{ peer_config.interval.multiplier }}
  receive-interval {{ peer_config.interval.receive }}
  transmit-interval {{ peer_config.interval.transmit }}
{%     if peer_config.interval.echo_interval is defined and peer_config.interval.echo_interval is not none %}
  echo transmit-interval {{ peer_config.interval.echo_interval }}
  echo receive-interval {{ peer_config.interval.echo_interval }}
{%     endif %}
{%     if peer_config.echo_mode is defined %}
  echo-mode
{%     endif %}
{%     if peer_config.passive is defined %}
  passive-mode
{%     endif %}
{%     if peer_config.profile is defined and peer_config.profile is not none %}
  profile {{ peer_config.profile }}
{%     endif %}
{%     if peer_config.shutdown is defined %}
  shutdown
{%     else %}
  no shutdown
{%     endif %}
 exit
 !
{%   endfor %}
{% endif %}
exit
!
{% endif %}