Route-Control
Diagram
Classes
route_control (vxlan.overlay_extensions)
Name | Type | Constraint | Mandatory | Default Value |
---|---|---|---|---|
groups | List | [groups] | No | |
switches | List | [switches] | No |
groups (vxlan.overlay_extensions.route_control)
Name | Type | Constraint | Mandatory | Default Value |
---|---|---|---|---|
name | String | Yes | ||
route_maps | List | [route_maps] | No | |
ipv4_prefix_lists | List | [ipv4_prefix_lists] | No | |
ipv6_prefix_lists | List | [ipv6_prefix_lists] | No | |
standard_community_lists | List | [standard_community_lists] | No | |
extended_community_lists | List | [extended_community_lists] | No | |
mac_list | List | [mac_list] | No | |
ip_as_path_access_lists | List | [ip_as_path_access_lists] | No | |
ipv4_access_lists | List | [ipv4_access_lists] | No | |
ipv6_access_lists | List | [ipv6_access_lists] | No | |
time_range | List | [time_range] | No | |
ipv4_object_groups | List | [ipv4_object_groups] | No | |
ipv6_object_groups | List | [ipv6_object_groups] | No |
switches (vxlan.overlay_extensions.route_control)
Name | Type | Constraint | Mandatory | Default Value |
---|---|---|---|---|
name | String | Yes | ||
groups | List | String | Yes |
route_maps (vxlan.overlay_extensions.route_control.groups)
Name | Type | Constraint | Mandatory | Default Value |
---|---|---|---|---|
name | String | Yes |
Examples
In this example, we can see the relation between policies defined under vxlan.overlay_extensions.route_control
.
Policies are grouped in one group named: external_policies_RCtrlGrp
under vxlan.overlay_extensions.groups
.
Finally this group is attached to two leaf switches under vxlan.overlay_extensions.switches.groups
Example-1
This example will create route maps, prefix lists and community-list, which are commonly used in BGP (Border Gateway Protocol) routing configurations to manipulate and control route attributes. Here's a detailed explanation:
Route Maps
A route map allows for conditional matching and manipulation of routes. It is used to define how routes are handled based on specific conditions.
route-map rm-bgp permit 10
:match ip address prefix-list IPPREF1
: This matches routes that fit the criteria specified in the prefix list namedIPPREF1
.match community CL-LPREF110
: This matches routes that have the community attribute specified in the community list CL-LPREF110.set local-preference 110
: If a route matches both the IP prefix list and community list, its local preference is set to 110. Local preference is used to prioritize routes within an autonomous system; higher values are preferred.
route-map rm-bgp permit 20
:match ip address prefix-list IPPREF2
: This matches routes using the prefix listIPPREF2
.match community CL-LPREF120
: This matches routes with the community attribute specified inCL-LPREF120
.set local-preference 120
: Routes matching these criteria will have their local preference set to120
, giving them a higher priority compared to those set by sequence10
.
route-map rm-bgp permit 100
: This line permits any other routes that do not match the above criteria without any modifications.
Prefix Lists
Prefix lists define IP address ranges to be matched against.
-
ip prefix-list IPPREF1
:seq 10 permit 172.16.0.0/16
: This allows any IP address within the172.16.0.0/16
network.seq 20 permit 172.17.0.0/19
: This permits any IP address within the172.17.0.0/19
network.
-
ip prefix-list IPPREF2
:seq 10 permit 10.0.0.0/24
: This allows the specific network10.0.0.0/24
.seq 20 permit 10.100.0.0/19 le 24
: This permits any IP address within the10.100.0.0/19
network, allowing prefix lengths up to/24
(which means it can match subnets of this range with subnet masks between/19
and/24
).
Community Lists
Community lists define BGP community attributes used to tag routes for various routing policies.
ip community-list standard CL-LPREF110
:seq 10 permit 65000:110:
This matches routes tagged with the BGP community65000:110
.
ip community-list standard CL-LPREF120
:seq 10 permit 65000:120
: This matches routes tagged with the BGP community65000:120
.
route-map rm-bgp permit 10
match ip address prefix-list IPPREF1
match community CL-LPREF110
set local-preference 110
route-map rm-bgp permit 20
match ip address prefix-list IPPREF2
match community CL-LPREF120
set local-preference 120
route-map rm-bgp permit 100
!
ip prefix-list IPPREF1 seq 10 permit 172.16.0.0/16
ip prefix-list IPPREF1 seq 20 permit 172.17.0.0/19
ip prefix-list IPPREF2 seq 10 permit 10.0.0.0/24
ip prefix-list IPPREF2 seq 20 permit 10.100.0.0/19 le 24
!
ip community-list standard CL-LPREF110 seq 10 permit 65000:110
ip community-list standard CL-LPREF120 seq 10 permit 65000:120
---
vxlan:
overlay_extensions:
route_control:
standard_community_lists:
- name: CL-LPREF110
entries:
- seq_number: 10
operation: permit
communities:
- 65000:110
- name: CL-LPREF120
entries:
- seq_number: 10
operation: permit
communities:
- 65000:120
ipv4_prefix_lists:
- name: IPPREF1
entries:
- seq_number: 10
operation: permit
prefix: 172.16.0.0/16
- seq_number: 20
operation: permit
prefix: 172.17.0.0/19
- name: IPPREF2
entries:
- seq_number: 10
operation: permit
prefix: 10.0.0.0/24
- seq_number: 20
operation: permit
prefix: 10.100.0.0/19
le: 24
route_maps:
- name: rm-bgp
entries:
- seq_number: 10
operation: permit
match:
- ipv4:
address_prefix_list:
- IPPREF1
- community_list:
community: CL-LPREF110
set:
- local_preference: 110
- seq_number: 20
operation: permit
match:
- ipv4:
address_prefix_list:
- IPPREF2
- community_list:
community: CL-LPREF120
set:
- local_preference: 120
- seq_number: 100
operation: permit
groups:
- name: external_policies_RCtrlGrp
standard_community_lists:
- name: CL-LPREF110
- name: CL-LPREF120
ipv4_prefix_lists:
- name: IPPREF1
- name: IPPREF2
route_maps:
- name: rm-bgp
switches:
- name: netascode-leaf21
groups:
- external_policies_RCtrlGrp
- name: netascode-leaf22
groups:
- external_policies_RCtrlGrp