4ba2f608c1
* Adding new BGP peer groups PEER_V4_INT and PEER_V6_INT. The internal BGP sessions will be added to this peer group while the external BGP sessions will be added to the exising PEER_V4 and PEER_V6 peer group. * Check for "ASIC" keyword in the hostname to identify the internal neighbors.
60 lines
2.3 KiB
Django/Jinja
60 lines
2.3 KiB
Django/Jinja
!
|
|
! template: bgpd/templates/general/instance.conf.j2
|
|
!
|
|
neighbor {{ neighbor_addr }} remote-as {{ bgp_session['asn'] }}
|
|
neighbor {{ neighbor_addr }} description {{ bgp_session['name'] }}
|
|
{# set the bgp neighbor timers if they have not default values #}
|
|
{% if (bgp_session['keepalive'] is defined and bgp_session['keepalive'] | int != 60)
|
|
or (bgp_session['holdtime'] is defined and bgp_session['holdtime'] | int != 180) %}
|
|
neighbor {{ neighbor_addr }} timers {{ bgp_session['keepalive'] }} {{ bgp_session['holdtime'] }}
|
|
{% endif %}
|
|
!
|
|
{% if bgp_session.has_key('admin_status') and bgp_session['admin_status'] == 'down' or not bgp_session.has_key('admin_status') and CONFIG_DB__DEVICE_METADATA['localhost'].has_key('default_bgp_status') and CONFIG_DB__DEVICE_METADATA['localhost']['default_bgp_status'] == 'down' %}
|
|
neighbor {{ neighbor_addr }} shutdown
|
|
{% endif %}
|
|
!
|
|
{% if neighbor_addr | ipv4 %}
|
|
address-family ipv4
|
|
{% if 'ASIC' in bgp_session['name'] %}
|
|
neighbor {{ neighbor_addr }} peer-group PEER_V4_INT
|
|
{% else %}
|
|
neighbor {{ neighbor_addr }} peer-group PEER_V4
|
|
{% endif %}
|
|
{% if CONFIG_DB__DEVICE_METADATA['localhost']['sub_role'] == 'BackEnd' %}
|
|
neighbor {{ neighbor_addr }} route-map FROM_BGP_PEER_V4_INT in
|
|
{% endif %}
|
|
{% elif neighbor_addr | ipv6 %}
|
|
address-family ipv6
|
|
{% if 'ASIC' in bgp_session['name'] %}
|
|
neighbor {{ neighbor_addr }} peer-group PEER_V6_INT
|
|
{% else %}
|
|
neighbor {{ neighbor_addr }} peer-group PEER_V6
|
|
{% endif %}
|
|
{% if CONFIG_DB__DEVICE_METADATA['localhost']['sub_role'] == 'BackEnd' %}
|
|
neighbor {{ neighbor_addr }} route-map FROM_BGP_PEER_V6_INT in
|
|
{% endif %}
|
|
{% endif %}
|
|
!
|
|
{% if bgp_session['rrclient'] | int != 0 %}
|
|
neighbor {{ neighbor_addr }} route-reflector-client
|
|
{% endif %}
|
|
!
|
|
{% if bgp_session['nhopself'] | int != 0 %}
|
|
neighbor {{ neighbor_addr }} next-hop-self
|
|
{% endif %}
|
|
{% if 'ASIC' in bgp_session['name'] %}
|
|
neighbor {{ neighbor_addr }} next-hop-self force
|
|
{% endif %}
|
|
!
|
|
{% if bgp_session["asn"] == bgp_asn and CONFIG_DB__DEVICE_METADATA['localhost']['type'] == "SpineChassisFrontendRouter" %}
|
|
address-family l2vpn evpn
|
|
neighbor {{ neighbor_addr }} activate
|
|
advertise-all-vni
|
|
exit-address-family
|
|
{% endif %}
|
|
neighbor {{ neighbor_addr }} activate
|
|
exit-address-family
|
|
!
|
|
! end of template: bgpd/templates/general/instance.conf.j2
|
|
!
|