diff --git a/tripleo_ansible/roles/tripleo_frr/defaults/main.yml b/tripleo_ansible/roles/tripleo_frr/defaults/main.yml index 2239163bc..33059e03c 100644 --- a/tripleo_ansible/roles/tripleo_frr/defaults/main.yml +++ b/tripleo_ansible/roles/tripleo_frr/defaults/main.yml @@ -26,6 +26,7 @@ tripleo_frr_bgp_ipv4_allowas_in: false tripleo_frr_bgp_ipv4_src_network: ctlplane tripleo_frr_bgp_ipv6: true tripleo_frr_bgp_ipv6_allowas_in: false +tripleo_frr_bgp_ipv6_src_network: ctlplane tripleo_frr_bgp_neighbor_ttl_security_hops: 1 tripleo_frr_bgp_uplinks_scope: internal tripleo_frr_config_basedir: "/var/lib/config-data/ansible-generated/frr" diff --git a/tripleo_ansible/roles/tripleo_frr/templates/frr.conf.j2 b/tripleo_ansible/roles/tripleo_frr/templates/frr.conf.j2 index 68b3fee90..8e0e5db8f 100644 --- a/tripleo_ansible/roles/tripleo_frr/templates/frr.conf.j2 +++ b/tripleo_ansible/roles/tripleo_frr/templates/frr.conf.j2 @@ -57,4 +57,10 @@ ip protocol bgp route-map rm-only-default {% if tripleo_frr_bgp_ipv6 %} ipv6 prefix-list only-default permit ::/0 ipv6 prefix-list only-host-prefixes permit ::/0 ge 128 + +route-map rm-only-default permit 11 + match ipv6 address prefix-list only-default + set src {{ hostvars[inventory_hostname][tripleo_frr_bgp_ipv6_src_network ~ '_ip'] }} + +ipv6 protocol bgp route-map rm-only-default {% endif %}