VRF
ACILocation in GUI:
Tenants » XXX » Networking » VRFs
Diagram
Section titled “Diagram”Diagram
Section titled “Diagram”Diagram
Section titled “Diagram”Classes
Section titled “Classes”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| tenants | List | tenants | No |
tenants (apic)
Section titled “tenants (apic)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| vrfs | List | vrfs | No |
vrfs (apic.tenants)
Section titled “vrfs (apic.tenants)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| ndo_managed | Boolean | true, false | No | false |
| alias | String | Regex: ^[a-zA-Z0-9_ | No | |
| description | String | Regex: ^[a-zA-Z0-9\\!#$%() | No | |
| data_ | Boolean | true, false | No | true |
| enforcement_ | Choice | ingress, egress | No | ingress |
| enforcement_ | Choice | enforced, unenforced | No | enforced |
| preferred_group | Boolean | true, false | No | false |
| endpoint_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| monitoring_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| transit_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| leaked_ | List | leaked_ | No | |
| leaked_ | List | leaked_ | No | |
| leaked_ | List | leaked_ | No | |
| contracts | Class | contracts | No | |
| bgp | Class | bgp | No | |
| ospf | Class | ospf | No | |
| dns_labels | List | String[Regex: ^[a-zA-Z0-9_] | No | |
| pim | Class | pim | No | |
| pimv6 | Class | pimv6 | No | |
| route_ | List | route_ | No | |
| snmp_context | Class | snmp_context | No | |
| vxlan_stretch | Class | vxlan_stretch | No |
vrfs (apic.tenants)
Section titled “vrfs (apic.tenants)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| ndo_managed | Boolean | true, false | No | false |
| alias | String | Regex: ^[a-zA-Z0-9_ | No | |
| description | String | Regex: ^[a-zA-Z0-9\\!#$%() | No | |
| data_ | Boolean | true, false | No | true |
| enforcement_ | Choice | ingress, egress | No | ingress |
| enforcement_ | Choice | enforced, unenforced | No | enforced |
| preferred_group | Boolean | true, false | No | false |
| endpoint_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| transit_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| leaked_ | List | leaked_ | No | |
| leaked_ | List | leaked_ | No | |
| leaked_ | List | leaked_ | No | |
| contracts | Class | contracts | No | |
| bgp | Class | bgp | No | |
| ospf | Class | ospf | No | |
| dns_labels | List | String[Regex: ^[a-zA-Z0-9_] | No | |
| pim | Class | pim | No | |
| route_ | List | route_ | No | |
| snmp_context | Class | snmp_context | No | |
| vxlan_stretch | Class | vxlan_stretch | No |
vrfs (apic.tenants)
Section titled “vrfs (apic.tenants)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| ndo_managed | Boolean | true, false | No | false |
| alias | String | Regex: ^[a-zA-Z0-9_ | No | |
| description | String | Regex: ^[a-zA-Z0-9\\!#$%() | No | |
| data_ | Boolean | true, false | No | true |
| enforcement_ | Choice | ingress, egress | No | ingress |
| enforcement_ | Choice | enforced, unenforced | No | enforced |
| preferred_group | Boolean | true, false | No | false |
| endpoint_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| transit_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| leaked_ | List | leaked_ | No | |
| leaked_ | List | leaked_ | No | |
| contracts | Class | contracts | No | |
| bgp | Class | bgp | No | |
| ospf | Class | ospf | No | |
| dns_labels | List | String[Regex: ^[a-zA-Z0-9_] | No | |
| pim | Class | pim | No | |
| route_ | List | route_ | No |
leaked_internal_subnets (apic.tenants.vrfs)
Section titled “leaked_internal_subnets (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| prefix | IP | Yes | ||
| public | Boolean | true, false | No | false |
| destinations | List | destinations | No |
leaked_internal_prefixes (apic.tenants.vrfs)
Section titled “leaked_internal_prefixes (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| prefix | IP | Yes | ||
| public | Boolean | true, false | No | false |
| from_ | Integer | min: 0, max: 128 | No | unspecified |
| to_ | Integer | min: 0, max: 128 | No | unspecified |
| destinations | List | destinations | No |
leaked_internal_prefixes (apic.tenants.vrfs)
Section titled “leaked_internal_prefixes (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| prefix | IP | Yes | ||
| public | Boolean | true, false | No | false |
| destinations | List | destinations | No |
leaked_external_prefixes (apic.tenants.vrfs)
Section titled “leaked_external_prefixes (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| prefix | IP | Yes | ||
| from_ | Integer | min: 1, max: 128 | No | unspecified |
| to_ | Integer | min: 1, max: 128 | No | unspecified |
| destinations | List | destinations | No |
leaked_external_prefixes (apic.tenants.vrfs)
Section titled “leaked_external_prefixes (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| prefix | IP | Yes | ||
| from_ | Integer | min: 1, max: 128 | No | |
| to_ | Integer | min: 1, max: 128 | No | |
| destinations | List | destinations | No |
contracts (apic.tenants.vrfs)
Section titled “contracts (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| consumers | List | String[Regex: ^[a-zA-Z0-9_] | No | |
| providers | List | String[Regex: ^[a-zA-Z0-9_] | No | |
| imported_ | List | String[Regex: ^[a-zA-Z0-9_] | No |
bgp (apic.tenants.vrfs)
Section titled “bgp (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| timer_policy | String | Regex: ^[a-zA-Z0-9_ | No | |
| ipv4_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| ipv6_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| ipv4_ | List | String[Regex: ^[a-zA-Z0-9_] | No | |
| ipv4_ | List | String[Regex: ^[a-zA-Z0-9_] | No | |
| ipv6_ | List | String[Regex: ^[a-zA-Z0-9_] | No | |
| ipv6_ | List | String[Regex: ^[a-zA-Z0-9_] | No |
ospf (apic.tenants.vrfs)
Section titled “ospf (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| timer_policy | String | Regex: ^[a-zA-Z0-9_ | No | |
| ipv4_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| ipv6_ | String | Regex: ^[a-zA-Z0-9_ | No |
pim (apic.tenants.vrfs)
Section titled “pim (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| mtu | Integer | min: 1, max: 9300 | No | 1500 |
| fast_ | Boolean | true, false | No | false |
| strict_rfc | Boolean | true, false | No | false |
| max_ | Any | Integer[min: 1, max: 4294967295] or Choice[unlimited] | No | unlimited |
| reserved_ | Any | Integer[min: 0, max: 4294967295] or Choice[undefined] | No | undefined |
| resource_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| static_rps | List | static_rps | No | |
| fabric_rps | List | fabric_rps | No | |
| bsr_ | Boolean | true, false | No | false |
| bsr_ | Boolean | true, false | No | false |
| bsr_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| auto_ | Boolean | true, false | No | false |
| auto_ | Boolean | true, false | No | false |
| auto_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| asm_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| asm_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| asm_sg_expiry | Any | Integer[min: 180, max: 604801] or Choice[default-timeout] | No | default-timeout |
| asm_ | Integer | min: 1, max: 65535 | No | 65535 |
| asm_ | IP | No | 0.0.0.0 | |
| ssm_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| igmp_ | List | igmp_ | No | |
| inter_ | List | inter_ | No | |
| config_ | List | config_ | No |
pim (apic.tenants.vrfs)
Section titled “pim (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| mtu | Integer | min: 1, max: 9300 | No | 1500 |
| fast_ | Boolean | true, false | No | false |
| strict_rfc | Boolean | true, false | No | false |
| max_ | Any | Integer[min: 1, max: 4294967295] or Choice[unlimited] | No | unlimited |
| reserved_ | Any | Integer[min: 0, max: 4294967295] or Choice[undefined] | No | undefined |
| resource_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| static_rps | List | static_rps | No | |
| fabric_rps | List | fabric_rps | No | |
| bsr_ | Boolean | true, false | No | false |
| bsr_ | Boolean | true, false | No | false |
| bsr_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| auto_ | Boolean | true, false | No | false |
| auto_ | Boolean | true, false | No | false |
| auto_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| asm_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| asm_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| asm_sg_expiry | Any | Integer[min: 180, max: 604801] or Choice[default-timeout] | No | default-timeout |
| asm_ | Integer | min: 1, max: 65535 | No | 65535 |
| asm_ | IP | No | 0.0.0.0 | |
| ssm_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| igmp_ | List | igmp_ | No | |
| inter_ | List | inter_ | No |
pimv6 (apic.tenants.vrfs)
Section titled “pimv6 (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| mtu | Integer | min: 1, max: 9300 | No | 1500 |
| fast_ | Boolean | true, false | No | false |
| strict_rfc | Boolean | true, false | No | false |
| max_ | Any | Integer[min: 1, max: 4294967295] or Choice[unlimited] | No | unlimited |
| reserved_ | Any | Integer[min: 0, max: 4294967295] or Choice[undefined] | No | undefined |
| resource_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| static_rps | List | static_rps | No | |
| asm_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| asm_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| asm_sg_expiry | Any | Integer[min: 180, max: 604801] or Choice[default-timeout] | No | default-timeout |
| asm_ | Integer | min: 1, max: 65535 | No | 65535 |
| asm_ | IP | No | :: |
route_summarization_policies (apic.tenants.vrfs)
Section titled “route_summarization_policies (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| nodes | List | nodes | No | |
| subnets | List | subnets | No |
snmp_context (apic.tenants.vrfs)
Section titled “snmp_context (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| community_ | List | community_ | No |
vxlan_stretch (apic.tenants.vrfs)
Section titled “vxlan_stretch (apic.tenants.vrfs)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| border_ | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| normalized_vni | Integer | min: 1, max: 16777215 | Yes | |
| import_ | String | Regex: ^[a-zA-Z0-9_ | No | |
| export_ | String | Regex: ^[a-zA-Z0-9_ | No |
destinations (apic.tenants.vrfs.leaked_internal_subnets)
Section titled “destinations (apic.tenants.vrfs.leaked_internal_subnets)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| description | String | Regex: ^[a-zA-Z0-9\\!#$%() | No | |
| tenant | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| vrf | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| public | Boolean | true, false | No | false |
destinations (apic.tenants.vrfs.leaked_internal_prefixes)
Section titled “destinations (apic.tenants.vrfs.leaked_internal_prefixes)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| description | String | Regex: ^[a-zA-Z0-9\\!#$%() | No | |
| tenant | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| vrf | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| public | Boolean | true, false | No | false |
destinations (apic.tenants.vrfs.leaked_internal_prefixes)
Section titled “destinations (apic.tenants.vrfs.leaked_internal_prefixes)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| description | String | Regex: ^[a-zA-Z0-9\\!#$%() | No | |
| tenant | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| vrf | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| public | Boolean | true, false | No |
destinations (apic.tenants.vrfs.leaked_external_prefixes)
Section titled “destinations (apic.tenants.vrfs.leaked_external_prefixes)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| description | String | Regex: ^[a-zA-Z0-9\\!#$%() | No | |
| tenant | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| vrf | String | Regex: ^[a-zA-Z0-9_ | Yes |
static_rps (apic.tenants.vrfs.pim)
Section titled “static_rps (apic.tenants.vrfs.pim)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ip | IP | Yes | ||
| multicast_ | String | Regex: ^[a-zA-Z0-9_ | No |
fabric_rps (apic.tenants.vrfs.pim)
Section titled “fabric_rps (apic.tenants.vrfs.pim)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ip | IP | Yes | ||
| multicast_ | String | Regex: ^[a-zA-Z0-9_ | No |
igmp_context_ssm_translate_policies (apic.tenants.vrfs.pim)
Section titled “igmp_context_ssm_translate_policies (apic.tenants.vrfs.pim)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| group_prefix | IP | Yes | ||
| source_address | IP | Yes |
inter_vrf_policies (apic.tenants.vrfs.pim)
Section titled “inter_vrf_policies (apic.tenants.vrfs.pim)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| tenant | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| vrf | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| multicast_ | String | Regex: ^[a-zA-Z0-9_ | No |
config_stripe_winner_policies (apic.tenants.vrfs.pim)
Section titled “config_stripe_winner_policies (apic.tenants.vrfs.pim)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| source_address | IP | No | 0.0.0.0/0 | |
| group_prefix | IP | Yes | ||
| pod | Integer | min: 1, max: 255 | No | 1 |
| exclude_ | Boolean | true, false | No | false |
static_rps (apic.tenants.vrfs.pimv6)
Section titled “static_rps (apic.tenants.vrfs.pimv6)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| ip | IP | Yes | ||
| multicast_ | String | Regex: ^[a-zA-Z0-9_ | No |
nodes (apic.tenants.vrfs.route_summarization_policies)
Section titled “nodes (apic.tenants.vrfs.route_summarization_policies)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| id | Integer | min: 101, max: 4000 | Yes | |
| pod | Integer | min: 1, max: 255 | No | 1 |
subnets (apic.tenants.vrfs.route_summarization_policies)
Section titled “subnets (apic.tenants.vrfs.route_summarization_policies)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| prefix | IP | Yes | ||
| bgp_ | String | Regex: ^[a-zA-Z0-9_ | No |
community_profiles (apic.tenants.vrfs.snmp_context)
Section titled “community_profiles (apic.tenants.vrfs.snmp_context)”| Name | Type | Constraint | Mandatory | Default Value |
|---|---|---|---|---|
| name | String | Regex: ^[a-zA-Z0-9_ | Yes | |
| description | String | Regex: ^[a-zA-Z0-9\\!#$%() | No |
Examples
Section titled “Examples”Example-1: This is a single example of a configuration where only the VRF name is specified. Apart from the VRF name, the rest of the settings use default values.
apic: tenants: - name: ABC vrfs: - name: VRF1Example-2: This is a single example of a configuration where, in addition to the settings in Example-1, vzAny is configured. The rest of the settings use default values.
apic: tenants: - name: ABC vrfs: - name: VRF1 contracts: consumers: - vzAny_Contract providers: - vzAny_ContractExample-3: This is a single example of a configuration where all parameters are explicitly specified.
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 endpoint_retention_policy: ERP1 monitoring_policy: MP1 snmp_context: name: VRF1_SNMP_CTX community_profiles: - name: COMM-PROF1 description: Community Profile 1 Description - name: COMM-PROF2 bgp: timer_policy: BGP-TIMER1 ipv4_import_route_target: - route-target:as2-nn2:10:10 - route-target:as2-nn2:10:11 ipv4_export_route_target: - route-target:as2-nn2:10:12 - route-target:as2-nn2:10:13 ipv6_import_route_target: - route-target:as2-nn2:10:14 - route-target:as2-nn2:10:16 ipv6_export_route_target: - route-target:as2-nn2:10:17 - route-target:as2-nn2:10:18 dns_labels: - DNS1 contracts: consumers: - CON1 providers: - CON1 imported_consumers: - IMPORT-CON1 leaked_internal_subnets: - prefix: 1.1.1.0/24 public: true destinations: - tenant: ABC vrf: VRF2 public: false description: Leak to VRF2 leaked_internal_prefixes: - prefix: 10.0.0.0/8 public: true from_prefix_length: 16 to_prefix_length: 24 destinations: - tenant: ABC vrf: VRF2 public: true 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 config_stripe_winner_policies: - source_address: 1.0.0.0/8 group_prefix: 224.1.0.0/24 pod: 1 exclude_remote_leafs: true - group_prefix: 224.2.0.0/24Examples
Section titled “Examples”Example-1: This is a single example of a configuration where only the VRF name is specified. Apart from the VRF name, the rest of the settings use default values.
apic: tenants: - name: ABC vrfs: - name: VRF1Example-2: This is a single example of a configuration where, in addition to the settings in Example-1, vzAny is configured. The rest of the settings use default values.
apic: tenants: - name: ABC vrfs: - name: VRF1 contracts: consumers: - vzAny_Contract providers: - vzAny_ContractExample-3: This is a single example of a configuration where all parameters are explicitly specified.
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 endpoint_retention_policy: ERP1 snmp_context: name: VRF1_SNMP_CTX community_profiles: - name: COMM-PROF1 description: Community Profile 1 Description - name: COMM-PROF2 bgp: timer_policy: BGP-TIMER1 ipv4_import_route_target: - route-target:as2-nn2:10:10 - route-target:as2-nn2:10:11 ipv4_export_route_target: - route-target:as2-nn2:10:12 - route-target:as2-nn2:10:13 ipv6_import_route_target: - route-target:as2-nn2:10:14 - route-target:as2-nn2:10:16 ipv6_export_route_target: - route-target:as2-nn2:10:17 - route-target:as2-nn2:10:18 dns_labels: - DNS1 contracts: consumers: - CON1 providers: - CON1 imported_consumers: - IMPORT-CON1 leaked_internal_subnets: - prefix: 1.1.1.0/24 public: true destinations: - tenant: ABC vrf: VRF2 public: false description: Leak to VRF2 leaked_internal_prefixes: - prefix: 10.0.0.0/8 public: true from_prefix_length: 16 to_prefix_length: 24 destinations: - tenant: ABC vrf: VRF2 public: true 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/16Examples
Section titled “Examples”Example-1: This is a single example of a configuration where only the VRF name is specified. Apart from the VRF name, the rest of the settings use default values.
apic: tenants: - name: ABC vrfs: - name: VRF1Example-2: This is a single example of a configuration where, in addition to the settings in Example-1, vzAny is configured. The rest of the settings use default values.
apic: tenants: - name: ABC vrfs: - name: VRF1 contracts: consumers: - vzAny_Contract providers: - vzAny_ContractExample-3: This is a single example of a configuration where all parameters are explicitly specified.
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 endpoint_retention_policy: ERP1 bgp: timer_policy: BGP-TIMER1 ipv4_import_route_target: - route-target:as2-nn2:10:10 - route-target:as2-nn2:10:11 ipv4_export_route_target: - route-target:as2-nn2:10:12 - route-target:as2-nn2:10:13 ipv6_import_route_target: - route-target:as2-nn2:10:14 - route-target:as2-nn2:10:16 ipv6_export_route_target: - route-target:as2-nn2:10:17 - route-target:as2-nn2:10:18 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/16Examples
Section titled “Examples”Simple example:
apic: tenants: - name: ABC vrfs: - name: VRF1Full 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 endpoint_retention_policy: ERP1 bgp: timer_policy: BGP-TIMER1 ipv4_import_route_target: - route-target:as2-nn2:10:10 - route-target:as2-nn2:10:11 ipv4_export_route_target: - route-target:as2-nn2:10:12 - route-target:as2-nn2:10:13 ipv6_import_route_target: - route-target:as2-nn2:10:14 - route-target:as2-nn2:10:16 ipv6_export_route_target: - route-target:as2-nn2:10:17 - route-target:as2-nn2:10:18 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