14f6f70ca3
* [BGP]Adding configuration knob to allow advertise Loopback ipv6 /128 prefix By default when IPv6 address is configured with /128 as subnet mask in Loopback0 interface, it will be advertised as prefix with /64 subnet. To control this behavior a new field 'bgp_adv_lo_prefix_as_128' is introduced in DEVICE_METADATA table which when set to true will advertise prefix with /128 subnet as it is.
17 lines
899 B
Django/Jinja
17 lines
899 B
Django/Jinja
!
|
|
{% from "common/functions.conf.j2" import get_ipv4_loopback_address, get_ipv6_loopback_address, get_vnet_interfaces %}
|
|
!
|
|
{% block loopback_route %}
|
|
{% if get_ipv6_loopback_address(LOOPBACK_INTERFACE, "Loopback0") != 'None' %}
|
|
{% if ( ('localhost' in DEVICE_METADATA) and ('bgp_adv_lo_prefix_as_128' in DEVICE_METADATA['localhost']) and
|
|
(DEVICE_METADATA['localhost']['bgp_adv_lo_prefix_as_128'] == 'true') ) %}
|
|
! add static ipv6 /128 loopback route to allow bgpd to advertise the loopback route prefix
|
|
ipv6 route {{ get_ipv6_loopback_address(LOOPBACK_INTERFACE, "Loopback0") | ip_network }}/128 Loopback0
|
|
{% else %}
|
|
! add static ipv6 /64 loopback route to allow bgpd to advertise the loopback route prefix
|
|
ipv6 route {{ get_ipv6_loopback_address(LOOPBACK_INTERFACE, "Loopback0") | replace('/128', '/64') | ip_network }}/64 Loopback0
|
|
{% endif %}
|
|
{% endif %}
|
|
{% endblock loopback_route %}
|
|
!
|