Skip to main content

SR MPLS L3out

The following table maps the subnet flags of external endpoint groups to the corresponding GUI terminology:

Subnet FlagGUI Terminology
import_securityExternal Subnets for External EPG
shared_securityShared Security Import Subnet
import_route_controlImport Route Control Subnet
export_route_controlExport Route Control Subnet
shared_route_controlShared Route Control Subnet
aggregate_import_route_controlAggregate Export
aggregate_export_route_controlAggregate Import
aggregate_shared_route_controlAggregate Shared Routes

Location in GUI:

  • Tenants » XXX » Networking » SR MPLS VRF L3Outs

Diagram

Classes

tenants (apic)

NameTypeConstraintMandatoryDefault Value
sr_mpls_l3outsList[sr_mpls_l3outs]No

sr_mpls_l3outs (apic.tenants)

NameTypeConstraintMandatoryDefault Value
nameStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
aliasStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
descriptionStringRegex: ^[a-zA-Z0-9\!#$%()*,-./:;@ _{|}~?&+]{1,128}$No
vrfStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
domainStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
transport_data_planeChoicesr_mpls, mplsNosr_mpls
node_profilesList[node_profiles]No
external_endpoint_groupsList[external_endpoint_groups]No
sr_mpls_infra_l3outsList[sr_mpls_infra_l3outs]No

node_profiles (apic.tenants.sr_mpls_l3outs)

NameTypeConstraintMandatoryDefault Value
nameStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
mpls_custom_qos_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
bfd_multihop_node_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
nodesList[nodes]No
interface_profilesList[interface_profiles]No
evpn_connectivityList[evpn_connectivity]No

external_endpoint_groups (apic.tenants.sr_mpls_l3outs)

NameTypeConstraintMandatoryDefault Value
nameStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
aliasStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
descriptionStringRegex: ^[a-zA-Z0-9\\!#$%()*,-./:;@ _{|}~?&+]{1,128}$No
preferred_groupBooleantrue, falseNofalse
subnetsList[subnets]No
contractsClass[contracts]No

sr_mpls_infra_l3outs (apic.tenants.sr_mpls_l3outs)

NameTypeConstraintMandatoryDefault Value
nameStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
inbound_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
outbound_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
external_endpoint_groupsListString[Regex: ^[a-zA-Z0-9_.:-]{1,64}$]Yes

nodes (apic.tenants.sr_mpls_l3outs.node_profiles)

NameTypeConstraintMandatoryDefault Value
node_idIntegermin: 1, max: 4000Yes
pod_idIntegermin: 1, max: 255No1
router_idIPNo
bgp_evpn_loopbackIPYes
mpls_transport_loopbackIPYes
segment_id_indexIntegermin: 0, max: 4294967295Yes

interface_profiles (apic.tenants.sr_mpls_l3outs.node_profiles)

NameTypeConstraintMandatoryDefault Value
nameStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
descriptionStringRegex: ^[a-zA-Z0-9\\!#$%()*,-./:;@ _{|}~?&+]{1,128}$No
bfd_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
interfacesList[interfaces]No

evpn_connectivity (apic.tenants.sr_mpls_l3outs.node_profiles)

NameTypeConstraintMandatoryDefault Value
ipIPYes
descriptionStringRegex: ^[a-zA-Z0-9\\!#$%()*,-./:;@ _{|}~?&+]{1,128}$No
remote_asIntegermin: 0, max: 4294967295Yes
allow_self_asBooleantrue, falseNofalse
disable_peer_as_checkBooleantrue, falseNofalse
ttlIntegermin: 1, max: 255No2
bfdBooleantrue, falseNofalse
passwordStringNo
peer_prefix_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
admin_stateBooleantrue, falseNotrue
local_asIntegermin: 0, max: 4294967295No
as_propagateChoicenone, no-prepend, replace-as, dual-asNonone

subnets (apic.tenants.sr_mpls_l3outs.external_endpoint_groups)

NameTypeConstraintMandatoryDefault Value
nameStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
prefixIPYes
route_leakingBooleantrue, falseNofalse
securityBooleantrue, falseNofalse
aggregate_shared_route_controlBooleantrue, falseNofalse

contracts (apic.tenants.sr_mpls_l3outs.external_endpoint_groups)

NameTypeConstraintMandatoryDefault Value
consumersListString[Regex: ^[a-zA-Z0-9_.:-]{1,64}$]No
providersListString[Regex: ^[a-zA-Z0-9_.:-]{1,64}$]No
imported_consumersListString[Regex: ^[a-zA-Z0-9_.:-]{1,64}$]No

interfaces (apic.tenants.sr_mpls_l3outs.node_profiles.interface_profiles)

NameTypeConstraintMandatoryDefault Value
descriptionStringRegex: ^[a-zA-Z0-9\\!#$%()*,-./:;@ _{|}~?&+]{1,128}$No
node_idIntegermin: 1, max: 4000No
pod_idIntegermin: 1, max: 255No1
moduleIntegermin: 1, max: 9No1
portIntegermin: 1, max: 127No
channelStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
ipIPNo
vlanIntegermin: 1, max: 4096No
macMACNo00:22:BD:F8:19:FF
mtuAnyChoice[inherit] or Integer[min: 576, max: 9216]Noinherit
bgp_peersList[bgp_peers]No

bgp_peers (apic.tenants.sr_mpls_l3outs.node_profiles.interface_profiles.interfaces)

NameTypeConstraintMandatoryDefault Value
ipIPYes
remote_asIntegermin: 0, max: 4294967295Yes
descriptionStringRegex: ^[a-zA-Z0-9\\!#$%()*,-./:;@ _{|}~?&+]{1,128}$No
allow_self_asBooleantrue, falseNofalse
send_communityBooleantrue, falseNofalse
send_ext_communityBooleantrue, falseNofalse
passwordStringNo
bfdBooleantrue, falseNofalse
unicast_address_familyBooleantrue, falseNotrue
admin_stateBooleantrue, falseNotrue
local_asIntegermin: 0, max: 4294967295No
peer_prefix_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No

Examples

SR MPLS L3Out in infra tenant:

apic:
tenants:
- name: infra
sr_mpls_l3outs:
- name: INFRA_SR_MPLS_L3
description: Infra SR-MPLS L3out
domain: ROUTED1
transport_data_plane: mpls
node_profiles:
- name: SR_MPLS_NP
mpls_custom_qos_policy: MPLS_QOS
bfd_multihop_node_policy: BFD_POL
nodes:
- node_id: 101
router_id: 126.126.126.126
bgp_evpn_loopback: 127.31.2.26
mpls_transport_loopback: 172.31.2.26
segment_id: 206
evpn_connectivity:
- ip: 172.31.2.54
remote_as: 64001
ttl: 10
local_as: 31200
allow_self_as: true
disable_peer_as_check: true
password: C1sco123
as_propagate: dual-as
peer_prefix_policy: BGP_PP1
interface_profiles:
- name: int_prof
bfd_policy: BFD_POL
interfaces:
- node_id: 101
port: 10
mtu: 9000
ip: 5.5.5.5/24
bgp_peers:
- ip: 10.10.10.1
remote_as: 65123
- node_id: 102
channel: PC1
vlan: 101
ip: 6.6.6.6/24

SR MPLS L3Out in user tenant:

apic:
tenants:
- name: ABC
sr_mpls_l3outs:
- name: ABC_SR_MPLS_L3OUT
vrf: VRF1
sr_mpls_infra_l3outs:
- name: INFRA_SR_MPLS_L3
outbound_route_map: export-map
inbound_route_map: import-map
external_endpoint_groups:
- ext-epg
- ext-epg2
external_endpoint_groups:
- name: ext-epg
subnets:
- name: ALL
prefix: 0.0.0.0/0
route_leaking: true
security: true
aggregate_shared_route_control: true
contracts:
consumers:
- CON1
providers:
- CON1
imported_consumers:
- IMPORT-CON1