! {% if interface is vyos_defined %} {% for iface, iface_config in interface.items() %} ! interface {{ iface }} ipv6 pim {% if iface_config.no_bsm is vyos_defined %} no ipv6 pim bsm {% endif %} {% if iface_config.dr_priority is vyos_defined %} ipv6 pim drpriority {{ iface_config.dr_priority }} {% endif %} {% if iface_config.hello is vyos_defined %} ipv6 pim hello {{ iface_config.hello }} {% endif %} {% if iface_config.no_unicast_bsm is vyos_defined %} no ipv6 pim unicast-bsm {% endif %} {% if iface_config.passive is vyos_defined %} ipv6 pim passive {% endif %} {% if iface_config.mld is vyos_defined and iface_config.mld.disable is not vyos_defined %} ipv6 mld {% if iface_config.mld.version is vyos_defined %} ipv6 mld version {{ iface_config.mld.version }} {% endif %} {% if iface_config.mld.interval is vyos_defined %} ipv6 mld query-interval {{ iface_config.mld.interval }} {% endif %} {% if iface_config.mld.max_response_time is vyos_defined %} ipv6 mld query-max-response-time {{ iface_config.mld.max_response_time // 100 }} {% endif %} {% if iface_config.mld.last_member_query_count is vyos_defined %} ipv6 mld last-member-query-count {{ iface_config.mld.last_member_query_count }} {% endif %} {% if iface_config.mld.last_member_query_interval is vyos_defined %} ipv6 mld last-member-query-interval {{ iface_config.mld.last_member_query_interval // 100 }} {% endif %} {% if iface_config.mld.join is vyos_defined %} {% for group, group_config in iface_config.mld.join.items() %} {% if group_config.source is vyos_defined %} {% for source in group_config.source %} ipv6 mld join {{ group }} {{ source }} {% endfor %} {% else %} ipv6 mld join {{ group }} {% endif %} {% endfor %} {% endif %} {% endif %} exit {% endfor %} {% endif %} ! {% if join_prune_interval is vyos_defined %} ipv6 pim join-prune-interval {{ join_prune_interval }} {% endif %} {% if keep_alive_timer is vyos_defined %} ipv6 pim keep-alive-timer {{ keep_alive_timer }} {% endif %} {% if packets is vyos_defined %} ipv6 pim packets {{ packets }} {% endif %} {% if register_suppress_time is vyos_defined %} ipv6 pim register-suppress-time {{ register_suppress_time }} {% endif %} {% if rp.address is vyos_defined %} {% for address, address_config in rp.address.items() %} {% if address_config.group is vyos_defined %} {% for group in address_config.group %} ipv6 pim rp {{ address }} {{ group }} {% endfor %} {% endif %} {% if address_config.prefix_list6 is vyos_defined %} ipv6 pim rp {{ address }} prefix-list {{ address_config.prefix_list6 }} {% endif %} {% endfor %} {% endif %} {% if rp.keep_alive_timer is vyos_defined %} ipv6 pim rp keep-alive-timer {{ rp.keep_alive_timer }} {% endif %}