blob: ce1f8fdda742da06e5dbffd9239527ce86d9a3b7 (
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
|
!
{% for iface in old_ifaces %}
interface {{ iface }}
{% for group in old_ifaces[iface].gr_join %}
{% if old_ifaces[iface].gr_join[group] %}
{% for source in old_ifaces[iface].gr_join[group] %}
no ip igmp join {{ group }} {{ source }}
{% endfor %}
{% else %}
no ip igmp join {{ group }}
{% endif %}
{% endfor %}
no ip igmp
!
{% endfor %}
{% for interface, interface_config in ifaces.items() %}
interface {{ interface }}
{% if interface_config.version %}
ip igmp version {{ interface_config.version }}
{% else %}
{# IGMP default version 3 #}
ip igmp
{% endif %}
{% if interface_config.query_interval %}
ip igmp query-interval {{ interface_config.query_interval }}
{% endif %}
{% if interface_config.query_max_resp_time %}
ip igmp query-max-response-time {{ interface_config.query_max_resp_time }}
{% endif %}
{% for group in interface_config.gr_join %}
{% if ifaces[iface].gr_join[group] %}
{% for source in ifaces[iface].gr_join[group] %}
ip igmp join {{ group }} {{ source }}
{% endfor %}
{% else %}
ip igmp join {{ group }}
{% endif %}
{% endfor %}
!
{% endfor %}
!
|