|
| 1 | +{# Auto-generated NDFC eBGP VXLAN EVPN config data structure for fabric {{ vxlan.fabric.name }} #} |
| 2 | + ENABLE_EVPN: true |
| 3 | + ANYCAST_GW_MAC: {{ vxlan.routed.anycast_gateway_mac | default(defaults.vxlan.routed.anycast_gateway_mac) }} |
| 4 | + ADVERTISE_PIP_BGP: {{ (vxlan.global.vpc.advertise_pip | default(defaults.vxlan.global.vpc.advertise_pip) | title) }} |
| 5 | +{% if not (vxlan.global.vpc.advertise_pip | default(defaults.vxlan.global.vpc.advertise_pip) | ansible.builtin.bool) %} |
| 6 | + ADVERTISE_PIP_ON_BORDER: {{ vxlan.global.vpc.advertise_pip_border_only | default(defaults.vxlan.global.vpc.advertise_pip_border_only) | title }} |
| 7 | +{% endif %} |
| 8 | + REPLICATION_MODE: {{ vxlan.underlay.general.replication_mode | default(defaults.vxlan.underlay.general.replication_mode) | title }} |
| 9 | +{% if not (vxlan.underlay.general.manual_underlay_allocation | default(defaults.vxlan.underlay.general.manual_underlay_allocation) | ansible.builtin.bool) %} |
| 10 | +{% if not (vxlan.underlay.general.enable_ipv6_underlay | default(defaults.vxlan.underlay.general.enable_ipv6_underlay) | ansible.builtin.bool) %} |
| 11 | + LOOPBACK1_IP_RANGE: {{ vxlan.underlay.ipv4.underlay_vtep_loopback_ip_range | default(defaults.vxlan.underlay.ipv4.underlay_vtep_loopback_ip_range) }} |
| 12 | +{% if (vxlan.underlay.general.enable_ipv6_underlay | default(defaults.vxlan.underlay.general.enable_ipv6_underlay) | ansible.builtin.bool) %} |
| 13 | + LOOPBACK1_IPV6_RANGE: {{ vxlan.underlay.ipv6.underlay_vtep_loopback_ip_range | default(defaults.vxlan.underlay.ipv6.underlay_vtep_loopback_ip_range) }} |
| 14 | +{% endif %} |
| 15 | +{% if (vxlan.underlay.general.replication_mode | default(defaults.vxlan.underlay.general.replication_mode) | title) == 'Multicast' %} |
| 16 | + RP_LB_ID: {{ vxlan.underlay.multicast.underlay_rp_loopback_id | default(defaults.vxlan.underlay.multicast.underlay_rp_loopback_id) }} |
| 17 | + RP_COUNT: {{ vxlan.underlay.multicast.rendezvous_points | default(defaults.vxlan.underlay.multicast.rendezvous_points) }} |
| 18 | + RP_MODE: {{ vxlan.underlay.multicast.rp_mode | default(defaults.vxlan.underlay.multicast.rp_mode) }} |
| 19 | + ENABLE_TRM: {{ vxlan.underlay.multicast.ipv4.trm_enable | default(defaults.vxlan.underlay.multicast.ipv4.trm_enable) | title }} |
| 20 | + ENABLE_TRMv6: {{ vxlan.underlay.multicast.ipv6.trmv6_enable | default(defaults.vxlan.underlay.multicast.ipv6.trmv6_enable) | title }} |
| 21 | +{% if not (vxlan.underlay.general.enable_ipv6_underlay | default(defaults.vxlan.underlay.general.enable_ipv6_underlay) | ansible.builtin.bool) %} |
| 22 | + ANYCAST_RP_IP_RANGE: {{ vxlan.underlay.ipv4.underlay_rp_loopback_ip_range | default(defaults.vxlan.underlay.ipv4.underlay_rp_loopback_ip_range) }} |
| 23 | + MULTICAST_GROUP_SUBNET: {{ vxlan.underlay.multicast.ipv4.group_subnet | default(defaults.vxlan.underlay.multicast.ipv4.group_subnet) }} |
| 24 | +{% if (vxlan.underlay.multicast.ipv4.trm_enable | default(defaults.vxlan.underlay.multicast.ipv4.trm_enable) | ansible.builtin.bool) %} |
| 25 | + L3VNI_MCAST_GROUP: {{ vxlan.underlay.multicast.ipv4.trm_default_group | default(defaults.vxlan.underlay.multicast.ipv4.trm_default_group) }} |
| 26 | +{% endif %} |
| 27 | +{% if (vxlan.underlay.multicast.ipv6.trmv6_enable | default(defaults.vxlan.underlay.multicast.ipv6.trmv6_enable) | ansible.builtin.bool) %} |
| 28 | + L3VNI_IPv6_MCAST_GROUP: "{{ vxlan.underlay.multicast.ipv6.trmv6_default_group | default(defaults.vxlan.underlay.multicast.ipv6.trmv6_default_group) }}" |
| 29 | +{% endif %} |
| 30 | +{% if vxlan.underlay.multicast.rp_mode | default(defaults.vxlan.underlay.multicast.rp_mode) == 'bidir' %} |
| 31 | + PHANTOM_RP_LB_ID1: {{ vxlan.underlay.multicast.underlay_primary_rp_loopback_id | default(defaults.vxlan.underlay.multicast.underlay_primary_rp_loopback_id) }} |
| 32 | + PHANTOM_RP_LB_ID2: {{ vxlan.underlay.multicast.underlay_backup_rp_loopback_id | default(defaults.vxlan.underlay.multicast.underlay_backup_rp_loopback_id) }} |
| 33 | +{% if vxlan.underlay.multicast.rendezvous_points | default(defaults.vxlan.underlay.multicast.rendezvous_points) == 4 %} |
| 34 | + PHANTOM_RP_LB_ID3: {{ vxlan.underlay.multicast.underlay_second_backup_rp_loopback_id | default(defaults.vxlan.underlay.multicast.underlay_second_backup_rp_loopback_id) }} |
| 35 | + PHANTOM_RP_LB_ID4: {{ vxlan.underlay.multicast.underlay_third_backup_rp_loopback_id | default(defaults.vxlan.underlay.multicast.underlay_third_backup_rp_loopback_id) }} |
| 36 | +{% endif %} |
| 37 | +{% endif %} |
| 38 | +{% elif (vxlan.underlay.general.enable_ipv6_underlay | default(defaults.vxlan.underlay.general.enable_ipv6_underlay) | ansible.builtin.bool) %} |
| 39 | + IPv6_ANYCAST_RP_IP_RANGE: {{ vxlan.underlay.ipv6.underlay_rp_loopback_ip_range | default(defaults.vxlan.underlay.ipv6.underlay_rp_loopback_ip_range) }} |
| 40 | + IPv6_MULTICAST_GROUP_SUBNET: {{ vxlan.underlay.multicast.ipv6.group_subnet | default(defaults.vxlan.underlay.multicast.ipv6.group_subnet) }} |
| 41 | +{% endif %} |
| 42 | +{% endif %} |
| 43 | +{% if vxlan.routed.layer2_vni_range.from is defined %} |
| 44 | +{% set l2_vni_start = vxlan.routed.layer2_vni_range.from %} |
| 45 | +{% if vxlan.routed.layer2_vni_range.to is defined %} |
| 46 | +{% set l2_vni_end = vxlan.routed.layer2_vni_range.to %} |
| 47 | +{% endif %} |
| 48 | +{% endif %} |
| 49 | +{% if l2_vni_start is defined and l2_vni_end is not defined %} |
| 50 | +{% set l2_vni_range = l2_vni_start %} |
| 51 | +{% elif l2_vni_start is defined and l2_vni_end is defined %} |
| 52 | +{% set l2_vni_range = l2_vni_start ~ '-' ~ l2_vni_end %} |
| 53 | +{% else %} |
| 54 | +{% set l2_vni_range = defaults.vxlan.routed.layer2_vni_range.from ~ '-' ~ defaults.vxlan.routed.layer2_vni_range.to %} |
| 55 | +{% endif %} |
| 56 | + L2_SEGMENT_ID_RANGE: {{ l2_vni_range }} |
| 57 | +{% if vxlan.routed.layer3_vni_range.from is defined %} |
| 58 | +{% set l3_vni_start = vxlan.routed.layer3_vni_range.from %} |
| 59 | +{% if vxlan.routed.layer3_vni_range.to is defined %} |
| 60 | +{% set l3_vni_end = vxlan.routed.layer3_vni_range.to %} |
| 61 | +{% endif %} |
| 62 | +{% endif %} |
| 63 | +{% if l3_vni_start is defined and l3_vni_end is not defined %} |
| 64 | +{% set l3_vni_range = l3_vni_start %} |
| 65 | +{% elif l3_vni_start is defined and l3_vni_end is defined %} |
| 66 | +{% set l3_vni_range = l3_vni_start ~ '-' ~ l3_vni_end %} |
| 67 | +{% else %} |
| 68 | +{% set l3_vni_range = defaults.vxlan.routed.layer3_vni_range.from ~ '-' ~ defaults.vxlan.routed.layer3_vni_range.to %} |
| 69 | +{% endif %} |
| 70 | + L3_PARTITION_ID_RANGE: {{ l3_vni_range }} |
| 71 | +{% if vxlan.routed.layer2_vlan_range.from is defined %} |
| 72 | +{% set l2_vlan_start = vxlan.routed.layer2_vlan_range.from %} |
| 73 | +{% if vxlan.routed.layer2_vlan_range.to is defined %} |
| 74 | +{% set l2_vlan_end = vxlan.routed.layer2_vlan_range.to %} |
| 75 | +{% endif %} |
| 76 | +{% endif %} |
| 77 | +{% if l2_vlan_start is defined and l2_vlan_end is not defined %} |
| 78 | +{% set l2_vlan_range = l2_vlan_start %} |
| 79 | +{% elif l2_vlan_start is defined and l2_vlan_end is defined %} |
| 80 | +{% set l2_vlan_range = l2_vlan_start ~ '-' ~ l2_vlan_end %} |
| 81 | +{% else %} |
| 82 | +{% set l2_vlan_range = defaults.vxlan.routed.layer2_vlan_range.from ~ '-' ~ defaults.vxlan.routed.layer2_vlan_range.to %} |
| 83 | +{% endif %} |
| 84 | + NETWORK_VLAN_RANGE: {{ l2_vlan_range }} |
| 85 | +{% if vxlan.routed.layer3_vlan_range.from is defined %} |
| 86 | +{% set l3_vlan_start = vxlan.routed.layer3_vlan_range.from %} |
| 87 | +{% if vxlan.routed.layer3_vlan_range.to is defined %} |
| 88 | +{% set l3_vlan_end = vxlan.routed.layer3_vlan_range.to %} |
| 89 | +{% endif %} |
| 90 | +{% endif %} |
| 91 | +{% if l3_vlan_start is defined and l3_vlan_end is not defined %} |
| 92 | +{% set l3_vlan_range = l3_vlan_start %} |
| 93 | +{% elif l3_vlan_start is defined and l3_vlan_end is defined %} |
| 94 | +{% set l3_vlan_range = l3_vlan_start ~ '-' ~ l3_vlan_end %} |
| 95 | +{% else %} |
| 96 | +{% set l3_vlan_range = defaults.vxlan.routed.layer3_vlan_range.from ~ '-' ~ defaults.vxlan.routed.layer3_vlan_range.to %} |
| 97 | +{% endif %} |
| 98 | + VRF_VLAN_RANGE: {{ l3_vlan_range }} |
0 commit comments