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): Add support for 'no bgp redistribute-internal' #4033

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,7 @@ ASN Notation: asplain
| update wait-install |
| no bgp default ipv4-unicast |
| no bgp default ipv4-unicast transport ipv6 |
| no bgp redistribute-internal |
| distance bgp 20 200 200 |
| maximum-paths 32 ecmp 32 |
| bgp route-reflector preserve-attributes always |
Expand Down Expand Up @@ -218,6 +219,7 @@ router bgp 65101
neighbor 192.0.3.9 peer group TEST
neighbor 192.0.3.9 remote-as 65438
no neighbor 192.0.3.9 bfd
no bgp redistribute-internal
aggregate-address 1.1.1.0/24 advertise-only
aggregate-address 1.12.1.0/24 as-set advertise-map ADV-MAP supress-map SUP-MAP summary-only attribute-map RM-ATTRIBUTE match-map RM-MATCH advertise-only
aggregate-address 2.2.1.0/24
Expand All @@ -240,6 +242,7 @@ router bgp 65101
network 10.0.0.0/8
network 172.16.0.0/12
network 192.168.0.0/16 route-map RM-FOO-MATCH
no bgp redistribute-internal
redistribute bgp leaked
redistribute connected include leaked rcf Address_Family_IPV4_Connected()
redistribute dynamic route-map Address_Family_IPV4_Dynamic_RM
Expand All @@ -257,6 +260,7 @@ router bgp 65101
neighbor 2001:db8::2 rcf out Address_Family_IPV6_Out()
network 2001:db8:100::/40
network 2001:db8:200::/40 route-map RM-BAR-MATCH
bgp redistribute-internal
redistribute bgp leaked route-map RM-REDISTRIBUTE-BGP
redistribute connected rcf Address_Family_IPV6_Connected()
redistribute ospfv3 match external include leaked
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,7 @@ router bgp 65001
redistribute ospfv3 match nssa-external 2
!
vrf VRF01
no bgp redistribute-internal
!
address-family flow-spec ipv4
bgp missing-policy direction in action permit
Expand All @@ -107,6 +108,7 @@ router bgp 65001
neighbor 1.2.3.4 route-map FOO in
neighbor 1.2.3.4 route-map BAR out
network 2.3.4.0/24 route-map BARFOO
no bgp redistribute-internal
redistribute connected rcf VRF_AFIPV4_RCF_CONNECTED_1()
redistribute ospf match external
redistribute ospf match nssa-external 1
Expand Down Expand Up @@ -139,6 +141,7 @@ router bgp 65001
neighbor aa::2 rcf in VRF_AFIPV6_RCF_IN()
neighbor aa::2 rcf out VRF_AFIPV6_RCF_OUT()
network aa::/64
no bgp redistribute-internal
redistribute connected rcf VRF_AFIPV6_RCF_CONNECTED()
redistribute isis include leaked
redistribute ospfv3 match external
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,7 @@ router bgp 65101
neighbor 192.0.3.9 peer group TEST
neighbor 192.0.3.9 remote-as 65438
no neighbor 192.0.3.9 bfd
no bgp redistribute-internal
aggregate-address 1.1.1.0/24 advertise-only
aggregate-address 1.12.1.0/24 as-set advertise-map ADV-MAP supress-map SUP-MAP summary-only attribute-map RM-ATTRIBUTE match-map RM-MATCH advertise-only
aggregate-address 2.2.1.0/24
Expand All @@ -109,6 +110,7 @@ router bgp 65101
network 10.0.0.0/8
network 172.16.0.0/12
network 192.168.0.0/16 route-map RM-FOO-MATCH
no bgp redistribute-internal
redistribute bgp leaked
redistribute connected include leaked rcf Address_Family_IPV4_Connected()
redistribute dynamic route-map Address_Family_IPV4_Dynamic_RM
Expand All @@ -126,6 +128,7 @@ router bgp 65101
neighbor 2001:db8::2 rcf out Address_Family_IPV6_Out()
network 2001:db8:100::/40
network 2001:db8:200::/40 route-map RM-BAR-MATCH
bgp redistribute-internal
redistribute bgp leaked route-map RM-REDISTRIBUTE-BGP
redistribute connected rcf Address_Family_IPV6_Connected()
redistribute ospfv3 match external include leaked
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,7 @@ router bgp 65001
redistribute ospfv3 match nssa-external 2
!
vrf VRF01
no bgp redistribute-internal
!
address-family flow-spec ipv4
bgp missing-policy direction in action permit
Expand All @@ -60,6 +61,7 @@ router bgp 65001
neighbor 1.2.3.4 route-map FOO in
neighbor 1.2.3.4 route-map BAR out
network 2.3.4.0/24 route-map BARFOO
no bgp redistribute-internal
redistribute connected rcf VRF_AFIPV4_RCF_CONNECTED_1()
redistribute ospf match external
redistribute ospf match nssa-external 1
Expand Down Expand Up @@ -92,6 +94,7 @@ router bgp 65001
neighbor aa::2 rcf in VRF_AFIPV6_RCF_IN()
neighbor aa::2 rcf out VRF_AFIPV6_RCF_OUT()
network aa::/64
no bgp redistribute-internal
redistribute connected rcf VRF_AFIPV6_RCF_CONNECTED()
redistribute isis include leaked
redistribute ospfv3 match external
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ router_bgp:
always: true
bestpath:
d_path: true
redistribute_internal: false
listen_ranges:
# should render
- prefix: 10.10.10.0/24
Expand Down Expand Up @@ -98,6 +99,8 @@ router_bgp:
- prefix: 172.16.0.0/12
- prefix: 192.168.0.0/16
route_map: RM-FOO-MATCH
bgp:
redistribute_internal: false
peer_groups:
- name: foo
prefix_list_in: PL-BAR-v4-IN
Expand Down Expand Up @@ -136,6 +139,8 @@ router_bgp:
- prefix: 2001:db8:100::/40
- prefix: 2001:db8:200::/40
route_map: RM-BAR-MATCH
bgp:
redistribute_internal: true
peer_groups:
- name: baz
prefix_list_in: PL-BAR-v6-IN
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,8 @@ router_bgp:
activate: false
vrfs:
- name: VRF01
bgp:
redistribute_internal: false
address_family_ipv4:
bgp:
missing_policy:
Expand All @@ -50,6 +52,7 @@ router_bgp:
receive: true
send:
ecmp_limit: 4
redistribute_internal: false
neighbors:
- ip_address: 1.2.3.4
activate: true
Expand Down Expand Up @@ -79,6 +82,7 @@ router_bgp:
receive: true
send:
any: true
redistribute_internal: false
neighbors:
- ip_address: aa::1
activate: true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;always</samp>](## "router_bgp.bgp.route_reflector_preserve_attributes.always") | Boolean | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;bestpath</samp>](## "router_bgp.bgp.bestpath") | Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;d_path</samp>](## "router_bgp.bgp.bestpath.d_path") | Boolean | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;redistribute_internal</samp>](## "router_bgp.bgp.redistribute_internal") | Boolean | | | | Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true. |
| [<samp>&nbsp;&nbsp;listen_ranges</samp>](## "router_bgp.listen_ranges") | List, items: Dictionary | | | | Improved "listen_ranges" data model to support multiple listen ranges and additional filter capabilities.<br> |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;prefix</samp>](## "router_bgp.listen_ranges.[].prefix") | String | | | | IPv4 prefix "A.B.C.D/E" or IPv6 prefix "A:B:C:D:E:F:G:H/I". |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;peer_id_include_router_id</samp>](## "router_bgp.listen_ranges.[].peer_id_include_router_id") | Boolean | | | | Include router ID as part of peer filter. |
Expand Down Expand Up @@ -319,6 +320,8 @@
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;networks</samp>](## "router_bgp.address_family_ipv4.networks") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;prefix</samp>](## "router_bgp.address_family_ipv4.networks.[].prefix") | String | Required, Unique | | | IPv4 prefix "A.B.C.D/E" or IPv6 prefix "A:B:C:D:E:F:G:H/I". |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;route_map</samp>](## "router_bgp.address_family_ipv4.networks.[].route_map") | String | | | | Route-map name. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;bgp</samp>](## "router_bgp.address_family_ipv4.bgp") | Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redistribute_internal</samp>](## "router_bgp.address_family_ipv4.bgp.redistribute_internal") | Boolean | | | | Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;peer_groups</samp>](## "router_bgp.address_family_ipv4.peer_groups") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name</samp>](## "router_bgp.address_family_ipv4.peer_groups.[].name") | String | Required, Unique | | | Peer-group name. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;activate</samp>](## "router_bgp.address_family_ipv4.peer_groups.[].activate") | Boolean | | | | |
Expand Down Expand Up @@ -386,6 +389,8 @@
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;networks</samp>](## "router_bgp.address_family_ipv6.networks") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;prefix</samp>](## "router_bgp.address_family_ipv6.networks.[].prefix") | String | Required, Unique | | | IPv4 prefix "A.B.C.D/E" or IPv6 prefix "A:B:C:D:E:F:G:H/I". |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;route_map</samp>](## "router_bgp.address_family_ipv6.networks.[].route_map") | String | | | | Route-map name. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;bgp</samp>](## "router_bgp.address_family_ipv6.bgp") | Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redistribute_internal</samp>](## "router_bgp.address_family_ipv6.bgp.redistribute_internal") | Boolean | | | | Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;peer_groups</samp>](## "router_bgp.address_family_ipv6.peer_groups") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name</samp>](## "router_bgp.address_family_ipv6.peer_groups.[].name") | String | Required, Unique | | | Peer-group name. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;activate</samp>](## "router_bgp.address_family_ipv6.peer_groups.[].activate") | Boolean | | | | |
Expand Down Expand Up @@ -567,6 +572,8 @@
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;source_interface</samp>](## "router_bgp.address_family_vpn_ipv6.neighbor_default_encapsulation_mpls_next_hop_self.source_interface") | String | | | | |
| [<samp>&nbsp;&nbsp;vrfs</samp>](## "router_bgp.vrfs") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;name</samp>](## "router_bgp.vrfs.[].name") | String | Required, Unique | | | VRF name. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bgp</samp>](## "router_bgp.vrfs.[].bgp") | Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redistribute_internal</samp>](## "router_bgp.vrfs.[].bgp.redistribute_internal") | Boolean | | | | Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rd</samp>](## "router_bgp.vrfs.[].rd") | String | | | | Route distinguisher. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evpn_multicast</samp>](## "router_bgp.vrfs.[].evpn_multicast") | Boolean | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;evpn_multicast_address_family</samp>](## "router_bgp.vrfs.[].evpn_multicast_address_family") | Dictionary | | | | Enable per-AF EVPN multicast settings. |
Expand Down Expand Up @@ -685,6 +692,7 @@
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ecmp</samp>](## "router_bgp.vrfs.[].address_family_ipv4.bgp.additional_paths.send.ecmp") | Boolean | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ecmp_limit</samp>](## "router_bgp.vrfs.[].address_family_ipv4.bgp.additional_paths.send.ecmp_limit") | Integer | | | Min: 2<br>Max: 64 | Amount of ECMP paths to send. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;limit</samp>](## "router_bgp.vrfs.[].address_family_ipv4.bgp.additional_paths.send.limit") | Integer | | | Min: 2<br>Max: 64 | Amount of paths to send. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redistribute_internal</samp>](## "router_bgp.vrfs.[].address_family_ipv4.bgp.redistribute_internal") | Boolean | | | | Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;neighbors</samp>](## "router_bgp.vrfs.[].address_family_ipv4.neighbors") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;ip_address</samp>](## "router_bgp.vrfs.[].address_family_ipv4.neighbors.[].ip_address") | String | Required, Unique | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;activate</samp>](## "router_bgp.vrfs.[].address_family_ipv4.neighbors.[].activate") | Boolean | | | | |
Expand Down Expand Up @@ -722,6 +730,7 @@
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ecmp</samp>](## "router_bgp.vrfs.[].address_family_ipv6.bgp.additional_paths.send.ecmp") | Boolean | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ecmp_limit</samp>](## "router_bgp.vrfs.[].address_family_ipv6.bgp.additional_paths.send.ecmp_limit") | Integer | | | Min: 2<br>Max: 64 | Amount of ECMP paths to send. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;limit</samp>](## "router_bgp.vrfs.[].address_family_ipv6.bgp.additional_paths.send.limit") | Integer | | | Min: 2<br>Max: 64 | Amount of paths to send. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;redistribute_internal</samp>](## "router_bgp.vrfs.[].address_family_ipv6.bgp.redistribute_internal") | Boolean | | | | Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true. |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;neighbors</samp>](## "router_bgp.vrfs.[].address_family_ipv6.neighbors") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;-&nbsp;ip_address</samp>](## "router_bgp.vrfs.[].address_family_ipv6.neighbors.[].ip_address") | String | Required, Unique | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;activate</samp>](## "router_bgp.vrfs.[].address_family_ipv6.neighbors.[].activate") | Boolean | | | | |
Expand Down Expand Up @@ -894,6 +903,9 @@
bestpath:
d_path: <bool>

# Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true.
redistribute_internal: <bool>

# Improved "listen_ranges" data model to support multiple listen ranges and additional filter capabilities.
listen_ranges:

Expand Down Expand Up @@ -1429,6 +1441,10 @@

# Route-map name.
route_map: <str>
bgp:

# Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true.
redistribute_internal: <bool>
peer_groups:

# Peer-group name.
Expand Down Expand Up @@ -1575,6 +1591,10 @@

# Route-map name.
route_map: <str>
bgp:

# Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true.
redistribute_internal: <bool>
peer_groups:

# Peer-group name.
Expand Down Expand Up @@ -1888,6 +1908,10 @@

# VRF name.
- name: <str; required; unique>
bgp:

# Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true.
redistribute_internal: <bool>

# Route distinguisher.
rd: <str>
Expand Down Expand Up @@ -2134,6 +2158,9 @@

# Amount of paths to send.
limit: <int; 2-64>

# Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true.
redistribute_internal: <bool>
neighbors:
- ip_address: <str; required; unique>
activate: <bool>
Expand Down Expand Up @@ -2199,6 +2226,9 @@

# Amount of paths to send.
limit: <int; 2-64>

# Allow redistribution of iBGP routes into an Interior Gateway Protocol (IGP). EOS default is true.
redistribute_internal: <bool>
neighbors:
- ip_address: <str; required; unique>
activate: <bool>
Expand Down
Loading
Loading