Skip to content

Commit

Permalink
Feat(eos_cli_config_gen): Add support for 'no bgp redistribute-intern…
Browse files Browse the repository at this point in the history
  • Loading branch information
laxmikantchintakindi authored Jun 7, 2024
1 parent d7d27f2 commit 76713ba
Show file tree
Hide file tree
Showing 13 changed files with 265 additions and 0 deletions.
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

0 comments on commit 76713ba

Please sign in to comment.