Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat(eos_cli_config_gen): Redo the model for additional-paths in BGP #3730

Merged
Merged
Show file tree
Hide file tree
Changes from 56 commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
29ff74c
Added defs to schema
laxmikantchintakindi Mar 11, 2024
f9932e2
Adding changes.
Aug 26, 2024
804731d
Add changes from eos_designs.
Aug 27, 2024
a92846b
Fix CI.
Aug 27, 2024
8a2b40b
Address comments.
Sep 2, 2024
60d695c
Address comments.
Sep 3, 2024
05ba9c3
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 3, 2024
1b7e456
FIX CI.
Sep 3, 2024
5b53464
Update porting guide.
Sep 4, 2024
1f73bb1
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 4, 2024
f2ff771
Adding changes.
Aug 26, 2024
4b04aba
Address comments.
Sep 2, 2024
b97aaca
Address comments.
Sep 3, 2024
56567ae
Fix.
Sep 4, 2024
e389820
Fix porting guide.
Sep 4, 2024
6c9b495
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 6, 2024
c8fd049
Remove extra checks.
Sep 6, 2024
0dc7e62
Removing few lines from porting guide.
Sep 6, 2024
df968e4
Adding few changes to template.
Sep 6, 2024
764f145
Update the filename.
Sep 6, 2024
b23297c
Deprecate address_family_evpn.bgp_additional_paths.
Sep 9, 2024
797d02f
Adding few fixes.
Sep 11, 2024
1e09e86
Adding add_path under ipv4/v6 peer groups.
Sep 11, 2024
6b897de
Address comment.
Sep 11, 2024
e210cb2
Fixing templates.
Sep 12, 2024
03ee1f2
Fixing template
Sep 12, 2024
83068f1
Adding few more lines in templates and schema.
Sep 13, 2024
af331b2
Update additional_paths.instal under neighbor and peer groups.
Sep 19, 2024
5c6059c
Remove extra line.
Sep 19, 2024
ebbd196
Fixing different in schema and template.
Sep 19, 2024
a6c4826
Fix.
Sep 20, 2024
444404b
Merge branch 'devel' into bgpadditional
Sep 20, 2024
e85c002
Merge branch 'devel' into bgpadditional
Sep 20, 2024
77e177e
Changes.
Sep 20, 2024
474ef42
Add deprecated var test.
Sep 20, 2024
89ccfff
Final Fix.
Sep 20, 2024
e4a0eb6
Fix logic for limit
Sep 23, 2024
b635dea
Update sequence of additional paths commands.
Sep 24, 2024
5dcf901
Update porting guide.
Sep 24, 2024
e3336c9
Merge branch 'devel' into bgpadditional
Sep 27, 2024
7197ec6
Fix CI.
Sep 27, 2024
c5b221d
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 27, 2024
bf677d6
Address comments.
Sep 27, 2024
aff06c3
Address comment.
Sep 27, 2024
000975f
Adding condition for no bgp add-paths send any
Sep 27, 2024
b90c8fe
Address comments.
Sep 27, 2024
6344aca
Merge branch 'devel' into bgpadditional
Sep 27, 2024
b25c141
Adding changes in bgp-labeled-unicast
Sep 27, 2024
88000e6
Fix
Sep 27, 2024
8a3da5b
Address comments.
Sep 30, 2024
edfb3a4
Merge branch 'devel' into bgpadditional
ClausHolbechArista Sep 30, 2024
e2e7f6f
Merge branch 'devel' into bgpadditional
Oct 1, 2024
1c1d61e
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Oct 1, 2024
1318bbf
Fix CI.
Oct 1, 2024
9cfb032
Adding changes in templates for root additional path commands.
Oct 1, 2024
a329ff4
Merge branch 'devel' into bgpadditional
laxmikantchintakindi Oct 1, 2024
137924f
Update ansible_collections/arista/avd/docs/porting-guides/5.x.x.md
laxmikantchintakindi Oct 1, 2024
f5bd32f
Update ansible_collections/arista/avd/docs/porting-guides/5.x.x.md
laxmikantchintakindi Oct 1, 2024
b83f082
Remove disabled_any
Oct 1, 2024
d4795c5
Remove disabled_any from doc template
Oct 1, 2024
885741f
Merge branch 'devel' into bgpadditional
ClausHolbechArista Oct 1, 2024
a45da30
Remove key send_ecmp_limit
Oct 1, 2024
36984d9
Merge branch 'devel' into bgpadditional
ClausHolbechArista Oct 2, 2024
fc131db
Merge branch 'devel' into bgpadditional
Oct 3, 2024
7d8a1c1
Fix doc template.
Oct 3, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 45 additions & 0 deletions ansible_collections/arista/avd/docs/porting-guides/5.x.x.md
Original file line number Diff line number Diff line change
Expand Up @@ -1284,6 +1284,51 @@ port_channel_interfaces:
+ encapsulation: unmatched
```

### Data model for BGP additional-paths in `router_bgp.address_family_evpn/_vrfs[].ipv4/_vrfs[].ipv6/_path_selection` has been changed
laxmikantchintakindi marked this conversation as resolved.
Show resolved Hide resolved

In AVD 5.0.0, the data models for `router_bgp.vrfs[].address_family_ipv4.bgp.additional_paths`, `router_bgp.vrf[].address_family_ipv6.bgp.additional_paths`, `router_bgp.address_family_evpn.bgp.peer_groups[].additional_paths`, `router_bgp.address_family_evpn.bgp_additional_paths`, `router_bgp.address_family_path_selection.bgp.additional_paths`, `router_bgp.address_family_path_selection.neighbors[].additional_paths` have been changed. The key `additional_paths.send` is a string instead of dictionary.
laxmikantchintakindi marked this conversation as resolved.
Show resolved Hide resolved

The difference shown below keeps the previous configurations.

```diff
router_bgp:
address_family_path_selection:
bgp:
additional_paths:
- send:
- any: true
+ send: any
<...>
vrfs:
address_family_ipv4:
bgp:
additional_paths:
- send:
- ecmp_limit: 100
+ send: ecmp
+ send_ecmp_limit: 100
<...>
address_family_ipv6:
bgp:
additional_paths:
- send:
- limit: 100
+ send: limit
+ send_limit: 100
<...>
address_family_evpn:
bgp_additional_paths:
receive: true
- send:
- ecmp
+ send: ecmp
peer_groups:
additional_paths:
- send:
- any: false
+ send: disabled
```

### Fix issues with flags, source/destination ports, and field set for TCP/UDP protocol under traffic-policies

The change has been incorporated into `traffic-policies.j2` eos template.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -237,13 +237,20 @@ router bgp 65101
redistribute static rcf Router_BGP_Static()
!
address-family ipv4
bgp additional-paths install
bgp additional-paths receive
bgp additional-paths send ecmp limit 20
neighbor foo additional-paths receive
neighbor foo prefix-list PL-BAR-v4-IN in
neighbor foo prefix-list PL-BAR-v4-OUT out
neighbor foo default-originate route-map RM-FOO-MATCH always
neighbor foo additional-paths send ecmp limit 20 prefix-list PL1
neighbor 10.2.3.8 rcf in Address_Family_IPV4_In()
neighbor 10.2.3.9 rcf out Address_Family_IPV4_Out()
neighbor 192.0.2.1 additional-paths receive
neighbor 192.0.2.1 prefix-list PL-FOO-v4-IN in
neighbor 192.0.2.1 prefix-list PL-FOO-v4-OUT out
neighbor 192.0.2.1 additional-paths send limit 20 prefix-list PL1
network 10.0.0.0/8
network 172.16.0.0/12
network 192.168.0.0/16 route-map RM-FOO-MATCH
Expand All @@ -257,10 +264,17 @@ router bgp 65101
redistribute static rcf Address_Family_IPV4_Static()
!
address-family ipv6
bgp additional-paths install ecmp-primary
bgp additional-paths receive
bgp additional-paths send any
neighbor baz additional-paths receive
neighbor baz prefix-list PL-BAR-v6-IN in
neighbor baz prefix-list PL-BAR-v6-OUT out
neighbor baz additional-paths send ecmp limit 20
neighbor 2001:db8::1 additional-paths receive
neighbor 2001:db8::1 prefix-list PL-FOO-v6-IN in
neighbor 2001:db8::1 prefix-list PL-FOO-v6-OUT out
neighbor 2001:db8::1 additional-paths send ecmp limit 20
neighbor 2001:db8::2 rcf in Address_Family_IPV6_In()
neighbor 2001:db8::2 rcf out Address_Family_IPV6_Out()
network 2001:db8:100::/40
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,9 @@ router bgp 65101
neighbor TEST-ENCAPSULATION-2 activate
neighbor TEST-ENCAPSULATION-2 encapsulation path-selection
neighbor 10.100.100.1 activate
neighbor 10.100.100.1 additional-paths receive
neighbor 10.100.100.1 default-route
neighbor 10.100.100.1 additional-paths send any
neighbor 10.100.100.2 activate
neighbor 10.100.100.2 default-route route-map RM_DEFAULT_ROUTE
neighbor 10.100.100.3 activate
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,12 @@ ASN Notation: asplain
| ------ | --------- |
| 65001 | 1.0.1.1 |

#### BGP Neighbors

| Neighbor | Remote AS | VRF | Shutdown | Send-community | Maximum-routes | Allowas-in | BFD | RIB Pre-Policy Retain | Route-Reflector Client | Passive | TTL Max Hops |
| -------- | --------- | --- | -------- | -------------- | -------------- | ---------- | --- | --------------------- | ---------------------- | ------- | ------------ |
| 1.1.1.1 | - | VRF02 | - | - | - | - | - | - | - | - | - |

#### Router BGP VRFs

| VRF | Route-Distinguisher | Redistribute |
Expand All @@ -73,19 +79,29 @@ router bgp 65001
neighbor FOOBAR activate
!
address-family ipv4 multicast
bgp additional-paths receive
neighbor FOOBAR activate
neighbor FOOBAR additional-paths receive
neighbor 10.1.1.1 activate
neighbor 10.1.1.1 additional-paths receive
!
address-family ipv6
no neighbor FOOBAR activate
!
address-family ipv6 multicast
bgp additional-paths receive
no neighbor FOOBAR activate
neighbor FOOBAR additional-paths receive
neighbor aa::1 additional-paths receive
redistribute isis rcf Router_BGP_Isis()
redistribute ospf match internal
redistribute ospfv3 match external
redistribute ospfv3 match nssa-external 2
!
vrf VRF01
bgp additional-paths install
bgp additional-paths receive
bgp additional-paths send any
no bgp redistribute-internal
!
address-family flow-spec ipv4
Expand All @@ -105,8 +121,10 @@ router bgp 65001
bgp additional-paths receive
bgp additional-paths send ecmp limit 4
neighbor 1.2.3.4 activate
neighbor 1.2.3.4 additional-paths receive
neighbor 1.2.3.4 route-map FOO in
neighbor 1.2.3.4 route-map BAR out
neighbor 1.2.3.4 additional-paths send any
network 2.3.4.0/24 route-map BARFOO
no bgp redistribute-internal
redistribute connected rcf VRF_AFIPV4_RCF_CONNECTED_1()
Expand All @@ -121,6 +139,7 @@ router bgp 65001
bgp additional-paths receive
neighbor 1.2.3.4 route-map FOO in
neighbor 1.2.3.4 route-map BAR out
neighbor 1.2.3.4 additional-paths receive
network 239.0.0.0/24 route-map BARFOO
redistribute connected
redistribute ospf match internal
Expand All @@ -135,8 +154,10 @@ router bgp 65001
bgp additional-paths receive
bgp additional-paths send any
neighbor aa::1 activate
neighbor aa::1 additional-paths receive
neighbor aa::1 route-map FOO in
neighbor aa::1 route-map BAR out
neighbor aa::1 additional-paths send any
neighbor aa::2 activate
neighbor aa::2 rcf in VRF_AFIPV6_RCF_IN()
neighbor aa::2 rcf out VRF_AFIPV6_RCF_OUT()
Expand All @@ -152,6 +173,8 @@ router bgp 65001
address-family ipv6 multicast
bgp missing-policy direction in action deny
bgp missing-policy direction out action deny
bgp additional-paths receive
neighbor aa::1 additional-paths receive
network ff08:1::/64
redistribute connected
redistribute ospf match external
Expand All @@ -160,6 +183,8 @@ router bgp 65001
redistribute static route-map VRF_AFIPV6MULTI_RM_STATIC
!
vrf VRF02
neighbor 1.1.1.1 additional-paths receive
neighbor 1.1.1.1 additional-paths send ecmp limit 24
!
address-family ipv4
bgp additional-paths send backup
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -97,13 +97,20 @@ router bgp 65101
redistribute static rcf Router_BGP_Static()
!
address-family ipv4
bgp additional-paths install
bgp additional-paths receive
bgp additional-paths send ecmp limit 20
neighbor foo additional-paths receive
neighbor foo prefix-list PL-BAR-v4-IN in
neighbor foo prefix-list PL-BAR-v4-OUT out
neighbor foo default-originate route-map RM-FOO-MATCH always
neighbor foo additional-paths send ecmp limit 20 prefix-list PL1
neighbor 10.2.3.8 rcf in Address_Family_IPV4_In()
neighbor 10.2.3.9 rcf out Address_Family_IPV4_Out()
neighbor 192.0.2.1 additional-paths receive
neighbor 192.0.2.1 prefix-list PL-FOO-v4-IN in
neighbor 192.0.2.1 prefix-list PL-FOO-v4-OUT out
neighbor 192.0.2.1 additional-paths send limit 20 prefix-list PL1
network 10.0.0.0/8
network 172.16.0.0/12
network 192.168.0.0/16 route-map RM-FOO-MATCH
Expand All @@ -117,10 +124,17 @@ router bgp 65101
redistribute static rcf Address_Family_IPV4_Static()
!
address-family ipv6
bgp additional-paths install ecmp-primary
bgp additional-paths receive
bgp additional-paths send any
neighbor baz additional-paths receive
neighbor baz prefix-list PL-BAR-v6-IN in
neighbor baz prefix-list PL-BAR-v6-OUT out
neighbor baz additional-paths send ecmp limit 20
neighbor 2001:db8::1 additional-paths receive
neighbor 2001:db8::1 prefix-list PL-FOO-v6-IN in
neighbor 2001:db8::1 prefix-list PL-FOO-v6-OUT out
neighbor 2001:db8::1 additional-paths send ecmp limit 20
neighbor 2001:db8::2 rcf in Address_Family_IPV6_In()
neighbor 2001:db8::2 rcf out Address_Family_IPV6_Out()
network 2001:db8:100::/40
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,7 +122,9 @@ router bgp 65101
neighbor TEST-ENCAPSULATION-2 activate
neighbor TEST-ENCAPSULATION-2 encapsulation path-selection
neighbor 10.100.100.1 activate
neighbor 10.100.100.1 additional-paths receive
neighbor 10.100.100.1 default-route
neighbor 10.100.100.1 additional-paths send any
neighbor 10.100.100.2 activate
neighbor 10.100.100.2 default-route route-map RM_DEFAULT_ROUTE
neighbor 10.100.100.3 activate
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,19 +18,29 @@ router bgp 65001
neighbor FOOBAR activate
!
address-family ipv4 multicast
bgp additional-paths receive
neighbor FOOBAR activate
neighbor FOOBAR additional-paths receive
neighbor 10.1.1.1 activate
neighbor 10.1.1.1 additional-paths receive
!
address-family ipv6
no neighbor FOOBAR activate
!
address-family ipv6 multicast
bgp additional-paths receive
no neighbor FOOBAR activate
neighbor FOOBAR additional-paths receive
neighbor aa::1 additional-paths receive
redistribute isis rcf Router_BGP_Isis()
redistribute ospf match internal
redistribute ospfv3 match external
redistribute ospfv3 match nssa-external 2
!
vrf VRF01
bgp additional-paths install
bgp additional-paths receive
bgp additional-paths send any
no bgp redistribute-internal
!
address-family flow-spec ipv4
Expand All @@ -50,8 +60,10 @@ router bgp 65001
bgp additional-paths receive
bgp additional-paths send ecmp limit 4
neighbor 1.2.3.4 activate
neighbor 1.2.3.4 additional-paths receive
neighbor 1.2.3.4 route-map FOO in
neighbor 1.2.3.4 route-map BAR out
neighbor 1.2.3.4 additional-paths send any
network 2.3.4.0/24 route-map BARFOO
no bgp redistribute-internal
redistribute connected rcf VRF_AFIPV4_RCF_CONNECTED_1()
Expand All @@ -66,6 +78,7 @@ router bgp 65001
bgp additional-paths receive
neighbor 1.2.3.4 route-map FOO in
neighbor 1.2.3.4 route-map BAR out
neighbor 1.2.3.4 additional-paths receive
network 239.0.0.0/24 route-map BARFOO
redistribute connected
redistribute ospf match internal
Expand All @@ -80,8 +93,10 @@ router bgp 65001
bgp additional-paths receive
bgp additional-paths send any
neighbor aa::1 activate
neighbor aa::1 additional-paths receive
neighbor aa::1 route-map FOO in
neighbor aa::1 route-map BAR out
neighbor aa::1 additional-paths send any
neighbor aa::2 activate
neighbor aa::2 rcf in VRF_AFIPV6_RCF_IN()
neighbor aa::2 rcf out VRF_AFIPV6_RCF_OUT()
Expand All @@ -97,6 +112,8 @@ router bgp 65001
address-family ipv6 multicast
bgp missing-policy direction in action deny
bgp missing-policy direction out action deny
bgp additional-paths receive
neighbor aa::1 additional-paths receive
network ff08:1::/64
redistribute connected
redistribute ospf match external
Expand All @@ -105,6 +122,8 @@ router bgp 65001
redistribute static route-map VRF_AFIPV6MULTI_RM_STATIC
!
vrf VRF02
neighbor 1.1.1.1 additional-paths receive
neighbor 1.1.1.1 additional-paths send ecmp limit 24
!
address-family ipv4
bgp additional-paths send backup
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -107,17 +107,32 @@ router_bgp:
route_map: RM-FOO-MATCH
bgp:
redistribute_internal: false
additional_paths:
receive: true
install: true
send: ecmp
send_ecmp_limit: 20
peer_groups:
- name: foo
prefix_list_in: PL-BAR-v4-IN
prefix_list_out: PL-BAR-v4-OUT
default_originate:
always: true
route_map: RM-FOO-MATCH
additional_paths:
receive: true
send: ecmp
send_ecmp_limit: 20
prefix_list: PL1
neighbors:
- ip_address: 192.0.2.1
prefix_list_in: PL-FOO-v4-IN
prefix_list_out: PL-FOO-v4-OUT
additional_paths:
receive: true
send: limit
send_limit: 20
prefix_list: PL1
- ip_address: 10.2.3.8
rcf_in: Address_Family_IPV4_In()
- ip_address: 10.2.3.9
Expand Down Expand Up @@ -147,14 +162,28 @@ router_bgp:
route_map: RM-BAR-MATCH
bgp:
redistribute_internal: true
additional_paths:
receive: true
install_ecmp_primary: true
send: any
peer_groups:
- name: baz
prefix_list_in: PL-BAR-v6-IN
prefix_list_out: PL-BAR-v6-OUT
additional_paths:
receive: true
send: ecmp
send_ecmp_limit: 20
prefix_list: PL2
neighbors:
- ip_address: 2001:db8::1
prefix_list_in: PL-FOO-v6-IN
prefix_list_out: PL-FOO-v6-OUT
additional_paths:
receive: true
send: ecmp
send_ecmp_limit: 20
prefix_list: PL2
- ip_address: 2001:db8::2
rcf_in: Address_Family_IPV6_In()
rcf_out: Address_Family_IPV6_Out()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,10 @@ router_bgp:
- ip_address: 192.168.255.2
peer_group: EVPN-OVERLAY-PEERS
address_family_evpn:
bgp_additional_paths:
send:
limit: 10
bgp:
additional_paths:
send: limit
send_limit: 10
next_hop_mpls_resolution_ribs:
- rib_type: "tunnel-rib-colored"
- rib_type: "tunnel-rib"
Expand Down
Loading
Loading