Skip to main content

VRF

Location in GUI: Tenants » XXX » Networking » VRFs

Diagram

Classes

tenants (apic)

NameTypeConstraintMandatoryDefault Value
vrfsList[vrfs]No

vrfs (apic.tenants)

NameTypeConstraintMandatoryDefault Value
nameStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
ndo_managedBooleantrue, falseNofalse
aliasStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
descriptionStringRegex: ^[a-zA-Z0-9\\!#$%()*,-./:;@ _{|}~?&+]{1,128}$No
data_plane_learningBooleantrue, falseNotrue
enforcement_directionChoiceingress, egressNoingress
enforcement_preferenceChoiceenforced, unenforcedNoenforced
preferred_groupBooleantrue, falseNofalse
transit_route_tag_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
leaked_internal_prefixesList[leaked_internal_prefixes]No
leaked_external_prefixesList[leaked_external_prefixes]No
contractsClass[contracts]No
bgpClass[bgp]No
ospfClass[ospf]No
dns_labelsListString[Regex: ^[a-zA-Z0-9_.:-]{1,64}$]No
pimClass[pim]No
route_summarization_policiesList[route_summarization_policies]No
expected_stateClass[expected_state]No

leaked_internal_prefixes (apic.tenants.vrfs)

NameTypeConstraintMandatoryDefault Value
prefixIPYes
publicBooleantrue, falseNofalse
destinationsList[destinations]No

leaked_external_prefixes (apic.tenants.vrfs)

NameTypeConstraintMandatoryDefault Value
prefixIPYes
from_prefix_lengthIntegermin: 1, max: 128No
to_prefix_lengthIntegermin: 1, max: 128No
destinationsList[destinations]No

contracts (apic.tenants.vrfs)

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

bgp (apic.tenants.vrfs)

NameTypeConstraintMandatoryDefault Value
timer_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
ipv4_address_family_context_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
ipv6_address_family_context_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
ipv4_import_route_targetStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
ipv4_export_route_targetStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
ipv6_import_route_targetStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
ipv6_export_route_targetStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No

ospf (apic.tenants.vrfs)

NameTypeConstraintMandatoryDefault Value
timer_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
ipv4_address_family_context_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
ipv6_address_family_context_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No

pim (apic.tenants.vrfs)

NameTypeConstraintMandatoryDefault Value
mtuIntegermin: 1, max: 9300No1500
fast_convergenceBooleantrue, falseNofalse
strict_rfcBooleantrue, falseNofalse
max_multicast_entriesAnyInteger[min: 1, max: 4294967295] or Choice[unlimited]Nounlimited
reserved_multicast_entriesAnyInteger[min: 0, max: 4294967295] or Choice[undefined]Noundefined
resource_policy_multicast_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
static_rpsList[static_rps]No
fabric_rpsList[fabric_rps]No
bsr_forward_updatesBooleantrue, falseNofalse
bsr_listen_updatesBooleantrue, falseNofalse
bsr_filter_multicast_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
auto_rp_forward_updatesBooleantrue, falseNofalse
auto_rp_listen_updatesBooleantrue, falseNofalse
auto_rp_filter_multicast_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
asm_shared_range_multicast_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
asm_sg_expiry_multicast_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
asm_sg_expiryAnyInteger[min: 180, max: 604801] or Choice[default-timeout]Nodefault-timeout
asm_traffic_registry_max_rateIntegermin: 1, max: 65535No65535
asm_traffic_registry_source_ipIPNo0.0.0.0
ssm_group_range_multicast_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No
igmp_context_ssm_translate_policiesList[igmp_context_ssm_translate_policies]No
inter_vrf_policiesList[inter_vrf_policies]No

route_summarization_policies (apic.tenants.vrfs)

NameTypeConstraintMandatoryDefault Value
nameStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
nodesList[nodes]No
subnetsList[subnets]No

expected_state (apic.tenants.vrfs)

NameTypeConstraintMandatoryDefault Value
minimum_healthIntegermin: 0, max: 100No
maximum_critical_faultsIntegermin: 0No
maximum_major_faultsIntegermin: 0No
maximum_minor_faultsIntegermin: 0No

destinations (apic.tenants.vrfs.leaked_internal_prefixes)

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

destinations (apic.tenants.vrfs.leaked_external_prefixes)

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

static_rps (apic.tenants.vrfs.pim)

NameTypeConstraintMandatoryDefault Value
ipIPYes
multicast_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No

igmp_context_ssm_translate_policies (apic.tenants.vrfs.pim)

NameTypeConstraintMandatoryDefault Value
group_prefixIPYes
source_addressIPYes

inter_vrf_policies (apic.tenants.vrfs.pim)

NameTypeConstraintMandatoryDefault Value
tenantStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
vrfStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$Yes
multicast_route_mapStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No

nodes (apic.tenants.vrfs.route_summarization_policies)

NameTypeConstraintMandatoryDefault Value
idIntegermin: 101, max: 4000Yes
podIntegermin: 1, max: 255No1

subnets (apic.tenants.vrfs.route_summarization_policies)

NameTypeConstraintMandatoryDefault Value
prefixIPYes
bgp_route_summarization_policyStringRegex: ^[a-zA-Z0-9_.:-]{1,64}$No

Examples

Simple example:

apic:
tenants:
- name: ABC
vrfs:
- name: VRF1

Full example:

apic:
tenants:
- name: ABC
vrfs:
- name: VRF1
alias: VRF1-ALIAS
description: My VRF
data_plane_learning: false
enforcement_direction: egress
enforcement_preference: unenforced
transit_route_tag_policy: TRP1
bgp:
timer_policy: BGP-TIMER1
dns_labels:
- DNS1
contracts:
consumers:
- CON1
providers:
- CON1
imported_consumers:
- IMPORT-CON1
leaked_internal_prefixes:
- prefix: 1.1.1.0/24
public: true
destinations:
- tenant: ABC
vrf: VRF2
public: false
description: Leak to VRF2
leaked_external_prefixes:
- prefix: 3.3.0.0/16
from_prefix_length: 24
to_prefix_length: 32
destinations:
- tenant: ABC
vrf: VRF2
description: Leak to VRF2
pim:
mtu: 9000
fast_convergence: true
strict_rfc: true
resource_policy_multicast_route_map: TEST_MRM1
max_multicast_entries: 10
reserved_multicast_entries: 10
static_rps:
- ip: 1.1.1.1
- ip: 1.1.1.2
multicast_route_map: TEST_MRM1
fabric_rps:
- ip: 1.1.1.3
- ip: 1.1.1.4
multicast_route_map: TEST_MRM1
auto_rp_forward_updates: true
auto_rp_filter_multicast_route_map: TEST_MRM1
bsr_listen_updates: true
bsr_filter_multicast_route_map: TEST_MRM1
asm_shared_range_multicast_route_map: TEST_MRM1
asm_sg_expiry_multicast_route_map: TEST_MRM2
asm_sg_expiry: 200
asm_traffic_registry_max_rate: 100
asm_traffic_registry_source_ip: 1.1.1.1
ssm_group_range_multicast_route_map: TEST_MRM3
igmp_context_ssm_translate_policies:
- group_prefix: "228.0.0.0/8"
source_address: 3.3.3.3
- group_prefix: "229.0.0.0/8"
source_address: 4.4.4.4
inter_vrf_policies:
- tenant: DEF
vrf: DMZ
multicast_route_map: TEST_MRM4
- tenant: DEF
vrf: DEV
route_summarization_policies:
- name: RTSUM1
nodes:
- id: 101
- id: 102
subnets:
- prefix: 1.1.0.0/16
bgp_route_summarization_policy: BGP_ROUTE_SUMMARIZATION1
- prefix: 192.168.0.0/16