dellemc.enterprise_sonic.sonic_bgp_af module – Manage global BGP address-family and its parameters
Note
This module is part of the dellemc.enterprise_sonic collection (version 2.5.1).
You might already have this collection installed if you are using the ansible
package. It is not included in ansible-core
. To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install dellemc.enterprise_sonic
.
To use it in a playbook, specify: dellemc.enterprise_sonic.sonic_bgp_af
.
New in dellemc.enterprise_sonic 1.0.0
Synopsis
- This module provides configuration management of global BGP_AF parameters on devices running Enterprise SONiC.
- bgp_as and vrf_name must be created in advance on the device.
Note
This module has a corresponding action plugin.
Parameters
Parameter | Comments |
---|---|
config list / elements=dictionary | Specifies the BGP_AF related configuration. |
address_family dictionary |
Specifies BGP address family related configurations. |
afis list / elements=dictionary |
List of address families, such as ipv4, ipv6, and l2vpn. afi and safi are required together. |
advertise_all_vni boolean |
Specifies the advertise all vni flag. Choices:
|
advertise_default_gw boolean |
Specifies the advertise default gateway flag. Choices:
|
advertise_pip boolean |
Enables advertise PIP Choices:
|
advertise_pip_ip string |
PIP IPv4 address |
advertise_pip_peer_ip string |
PIP peer IPv4 address |
advertise_svi_ip boolean |
Enables advertise SVI MACIP routes Choices:
|
afi string / required |
Type of address family to configure. Choices:
|
aggregate_address_config list / elements=dictionary added in dellemc.enterprise_sonic 2.5.0 |
Aggregate address configuration |
as_set boolean |
Enables/disables generation of AS set path information Choices:
|
policy_name string |
Preconfigured routing policy (route map name) to be applied to aggregate network |
prefix string / required |
Aggregate address prefix |
summary_only boolean |
Enables/disables restriction of route information included in updates Choices:
|
dampening boolean |
Enable route flap dampening if set to true Choices:
|
import dictionary added in dellemc.enterprise_sonic 2.5.0 |
Specifies the routes to be imported to this address family. |
vrf dictionary |
Import routes from other VRFs. |
route_map string |
Specifies the route-map. |
vrf_list list / elements=string |
Specifies the VRFs to import routes from. |
max_path dictionary |
Specifies the maximum paths of ibgp and ebgp count. |
ebgp integer |
Specifies the count of the ebgp multipaths count. |
ibgp integer |
Specifies the count of the ibgp multipaths count. |
network list / elements=string |
Enable routing on an IP network for each prefix provided in the network |
rd string |
Specifies the route distiguisher to be used by the VRF instance. |
redistribute list / elements=dictionary |
Specifies the redistribute information from another routing protocol. |
metric string |
Specifies the metric for redistributed routes. |
protocol string / required |
Specifies the protocol for configuring redistribute information. Choices:
|
route_map string |
Specifies the route map reference. |
route_advertise_list list / elements=dictionary |
List of advertise routes |
advertise_afi string / required |
Specifies the address family Choices:
|
route_map string |
Specifies the route-map reference |
rt_in list / elements=string |
Route-targets to be imported. |
rt_out list / elements=string |
Route-targets to be exported. |
safi string |
Specifies the type of communication for the address family. Choices:
|
vnis list / elements=dictionary |
VNI configuration for the EVPN. |
advertise_default_gw boolean |
Specifies the advertise default gateway flag. Choices:
|
advertise_svi_ip boolean |
Enables advertise SVI MACIP routes Choices:
|
rd string |
Specifies the route distiguisher to be used by the VRF instance. |
rt_in list / elements=string |
Route-targets to be imported. |
rt_out list / elements=string |
Route-targets to be exported. |
vni_number integer / required |
Specifies the VNI number. |
bgp_as string / required |
Specifies the BGP autonomous system (AS) number which is already configured on the device. |
vrf_name string |
Specifies the VRF name which is already configured on the device. Default: |
state string | Specifies the operation to be performed on the BGP_AF process configured on the device. In case of merged, the input configuration is merged with the existing BGP_AF configuration on the device. In case of deleted, the existing BGP_AF configuration is removed from the device. In case of replaced, the existing BGP_AF of specified BGP AS will be replaced with provided configuration. In case of overridden, the existing BGP_AF configuration will be overridden with the provided configuration. Choices:
|
Notes
Note
- Tested against Enterprise SONiC Distribution by Dell Technologies.
- Supports
check_mode
.
Examples
# Using deleted # # Before state: # ------------- # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # network 3.3.3.3/16 # aggregate-address 1.1.1.1/1 # aggregate-address 5.5.5.5/5 as-set summary-only route-map rmap-1 # dampening # import vrf route-map rmap-1 # import vrf default #! #router bgp 51 # router-id 111.2.2.41 # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # dampening # ! # address-family ipv6 unicast # redistribute connected route-map bb metric 21 # redistribute ospf route-map aa metric 27 # redistribute static route-map bb metric 26 # maximum-paths 4 # maximum-paths ibgp 5 # ! # address-family l2vpn evpn # advertise-svi-ip # advertise ipv6 unicast route-map aa # rd 3.3.3.3:33 # route-target import 22:22 # route-target export 33:33 # advertise-pip ip 1.1.1.1 peer-ip 2.2.2.2 # ! # vni 1 # advertise-default-gw # advertise-svi-ip # rd 5.5.5.5:55 # route-target import 88:88 # route-target export 77:77 # - name: Delete BGP Address family configuration from the device dellemc.enterprise_sonic.sonic_bgp_af: config: - bgp_as: 51 address_family: afis: - afi: l2vpn safi: evpn advertise_pip: True advertise_pip_ip: "1.1.1.1" advertise_pip_peer_ip: "2.2.2.2" advertise_svi_ip: True advertise_all_vni: False advertise_default_gw: False route_advertise_list: - advertise_afi: ipv6 route_map: aa rd: "3.3.3.3:33" rt_in: - "22:22" rt_out: - "33:33" vnis: - vni_number: 1 - afi: ipv4 safi: unicast - afi: ipv6 safi: unicast max_path: ebgp: 2 ibgp: 5 redistribute: - metric: "21" protocol: connected route_map: bb - metric: "27" protocol: ospf route_map: aa - metric: "26" protocol: static route_map: bb - bgp_as: 51 vrf_name: VrfReg1 address_family: afis: - afi: ipv4 safi: unicast import: vrf: vrf_list: - default route_map: rmap-1 aggregate_address_config: - prefix: "1.1.1.1/1" - prefix: "5.5.5.5/5" as_set: True policy_name: rmap-1 summary_only: True state: deleted # After state: # ------------ # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # network 3.3.3.3/16 # aggregate-address 5.5.5.5/5 # dampening #! #router bgp 51 # router-id 111.2.2.41 # timers 60 180 # ! # address-family ipv6 unicast # ! # address-family l2vpn evpn # # Using deleted # # Before state: # ------------- # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # network 3.3.3.3/16 # aggregate-address 5.5.5.5/5 as-set summary-only route-map rmap-1 # dampening # import vrf route-map rmap-1 # import vrf default #! #router bgp 51 # router-id 111.2.2.41 # timers 60 180 # ! # address-family ipv6 unicast # ! # address-family l2vpn evpn # - name: Delete All BGP address family configurations dellemc.enterprise_sonic.sonic_bgp_af: config: state: deleted # After state: # ------------ # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 #! #router bgp 51 # router-id 111.2.2.41 # timers 60 180 # # Using merged # # Before state: # ------------- # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 #! #router bgp 51 # router-id 111.2.2.41 # timers 60 180 # ! # address-family l2vpn evpn # - name: Merge provided BGP address family configuration on the device. dellemc.enterprise_sonic.sonic_bgp_af: config: - bgp_as: 51 address_family: afis: - afi: l2vpn safi: evpn advertise_pip: True advertise_pip_ip: "3.3.3.3" advertise_pip_peer_ip: "4.4.4.4" advertise_svi_ip: True advertise_all_vni: False advertise_default_gw: False route_advertise_list: - advertise_afi: ipv4 route_map: bb rd: "1.1.1.1:11" rt_in: - "12:12" rt_out: - "13:13" vnis: - vni_number: 1 advertise_default_gw: True advertise_svi_ip: True rd: "5.5.5.5:55" rt_in: - "88:88" rt_out: - "77:77" - afi: ipv4 safi: unicast network: - 2.2.2.2/16 - 192.168.10.1/32 dampening: True aggregate_address_config: - prefix: 1.1.1.1/1 as_set: True policy_name: bb summary_only: True - afi: ipv6 safi: unicast max_path: ebgp: 4 ibgp: 5 redistribute: - metric: "21" protocol: connected route_map: bb - metric: "27" protocol: ospf route_map: aa - metric: "26" protocol: static route_map: bb - bgp_as: 51 vrf_name: VrfReg1 address_family: afis: - afi: ipv4 safi: unicast import: vrf: vrf_list: - default route_map: rmap-1 state: merged # After state: # ------------ # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # import vrf route-map rmap-1 # import vrf default #! #router bgp 51 # router-id 111.2.2.41 # timers 60 180 # ! # address-family ipv4 unicast # network 2.2.2.2/16 # network 192.168.10.1/32 # aggregate-address 1.1.1.1/1 as-set summary-only route-map bb # dampening # ! # address-family ipv6 unicast # redistribute connected route-map bb metric 21 # redistribute ospf route-map aa metric 27 # redistribute static route-map bb metric 26 # maximum-paths 4 # maximum-paths ibgp 5 # ! # address-family l2vpn evpn # advertise-svi-ip # advertise ipv4 unicast route-map bb # rd 1.1.1.1:11 # route-target import 12:12 # route-target import 13:13 # advertise-pip ip 3.3.3.3 peer-ip 4.4.4.4 # ! # vni 1 # advertise-default-gw # advertise-svi-ip # rd 5.5.5.5:55 # route-target import 88:88 # route-target export 77:77 # Using replaced # # Before state: # ------------- # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # network 3.3.3.3/16 # dampening #! #router bgp 51 vrf VrfReg2 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # import vrf route-map rmap-1 # import vrf default #! #router bgp 51 # router-id 111.2.2.41 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # redistribute connected route-map bb metric 21 # redistribute ospf route-map bb metric 27 # maximum-paths 1 # maximum-paths ibgp 1 # network 2.2.2.2/16 # network 192.168.10.1/32 # aggregate-address 5.5.5.5/5 as-set summary-only route-map bb # dampening # ! # address-family ipv6 unicast # redistribute static route-map aa metric 26 # maximum-paths 4 # maximum-paths ibgp 5 # ! # address-family l2vpn evpn # advertise-all-vni # advertise-svi-ip # advertise ipv4 unicast route-map bb # rd 1.1.1.1:11 # route-target import 12:12 # route-target export 13:13 # dup-addr-detection # advertise-pip ip 3.3.3.3 peer-ip 4.4.4.4 # ! # vni 1 # advertise-default-gw # advertise-svi-ip # rd 5.5.5.5:55 # route-target import 88:88 # route-target export 77:77 - name: Replace device configuration of address families of specified BGP AS with provided configuration. dellemc.enterprise_sonic.sonic_bgp_af: config: - bgp_as: 51 address_family: afis: - afi: l2vpn safi: evpn advertise_pip: True advertise_pip_ip: "3.3.3.3" advertise_pip_peer_ip: "4.4.4.4" advertise_svi_ip: True advertise_all_vni: True advertise_default_gw: False route_advertise_list: - advertise_afi: ipv4 route_map: bb rd: "1.1.1.1:11" rt_in: - "22:22" rt_out: - "13:13" vnis: - vni_number: 5 advertise_default_gw: True advertise_svi_ip: True rd: "10.10.10.10:55" rt_in: - "88:88" rt_out: - "77:77" - afi: ipv4 safi: unicast network: - 2.2.2.2/16 - 192.168.10.1/32 dampening: True redistribute: - protocol: connected - protocol: ospf metric: 30 aggregate-address-config: - prefix: '5.5.5.5/5' as_set: True - bgp_as: 51 vrf_name: VrfReg2 address_family: afis: - afi: ipv4 safi: unicast import: vrf: vrf_list: - VrfReg1 route_map: rmap-reg1 state: replaced # After state: # ------------ # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # network 3.3.3.3/16 # dampening #! #router bgp 51 vrf VrfReg2 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # import vrf route-map rmap-reg1 # import vrf VrfReg1 #! #router bgp 51 # router-id 111.2.2.41 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # redistribute connected # redistribute ospf metric 30 # maximum-paths 1 # maximum-paths ibgp 1 # network 2.2.2.2/16 # network 192.168.10.1/32 # aggregate-address 5.5.5.5/5 as-set # dampening # ! # address-family ipv6 unicast # redistribute static route-map aa metric 26 # maximum-paths 4 # maximum-paths ibgp 5 # ! # address-family l2vpn evpn # advertise-svi-ip # advertise ipv4 unicast route-map bb # rd 1.1.1.1:11 # route-target import 22:22 # route-target export 13:13 # dup-addr-detection # advertise-pip ip 3.3.3.3 peer-ip 4.4.4.4 # ! # vni 5 # advertise-default-gw # advertise-svi-ip # rd 10.10.10.10:55 # route-target import 88:88 # route-target export 77:77 # Using overridden # # Before state: # ------------- # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # maximum-paths 1 # maximum-paths ibgp 1 # network 3.3.3.3/16 # dampening # import vrf route-map rmap-1 # import vrf default #! #router bgp 51 # router-id 111.2.2.41 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # redistribute connected route-map bb metric 21 # redistribute ospf route-map bb metric 27 # maximum-paths 1 # maximum-paths ibgp 1 # network 2.2.2.2/16 # network 192.168.10.1/32 # dampening # ! # address-family ipv6 unicast # redistribute static route-map aa metric 26 # maximum-paths 4 # maximum-paths ibgp 5 # ! # address-family l2vpn evpn # advertise-all-vni # advertise-svi-ip # advertise ipv4 unicast route-map bb # rd 1.1.1.1:11 # route-target import 12:12 # route-target export 13:13 # dup-addr-detection # advertise-pip ip 3.3.3.3 peer-ip 4.4.4.4 # ! # vni 1 # advertise-default-gw # advertise-svi-ip # rd 5.5.5.5:55 # route-target import 88:88 # route-target export 77:77 - name: Override device configuration of BGP address families with provided configuration. dellemc.enterprise_sonic.sonic_bgp_af: config: - bgp_as: 51 address_family: afis: - afi: l2vpn safi: evpn advertise_pip: True advertise_pip_ip: "3.3.3.3" advertise_pip_peer_ip: "4.4.4.4" advertise_svi_ip: True advertise_all_vni: True advertise_default_gw: False route_advertise_list: - advertise_afi: ipv4 route_map: bb rd: "1.1.1.1:11" rt_in: - "22:22" rt_out: - "13:13" vnis: - vni_number: 5 advertise_default_gw: True advertise_svi_ip: True rd: "10.10.10.10:55" rt_in: - "88:88" rt_out: - "77:77" - afi: ipv4 safi: unicast network: - 2.2.2.2/16 - 192.168.10.1/32 dampening: True redistribute: - protocol: connected - protocol: ospf metric: 30 aggregate_address_config: - prefix: 4.4.4.4/4 as_set: True policy_name: bb summary_only: True state: overridden # After state: # ------------ # #do show running-configuration bgp #! #router bgp 51 vrf VrfReg1 # log-neighbor-changes # timers 60 180 #! #router bgp 51 # router-id 111.2.2.41 # log-neighbor-changes # timers 60 180 # ! # address-family ipv4 unicast # redistribute connected # redistribute ospf metric 30 # maximum-paths 1 # maximum-paths ibgp 1 # network 2.2.2.2/16 # network 192.168.10.1/32 # aggregate-address 4.4.4.4/4 as-set summary-only route-map bb # dampening # ! # address-family l2vpn evpn # advertise-all-vni # advertise-svi-ip # advertise ipv4 unicast route-map bb # rd 1.1.1.1:11 # route-target import 22:22 # route-target export 13:13 # dup-addr-detection # advertise-pip ip 3.3.3.3 peer-ip 4.4.4.4 # ! # vni 5 # advertise-default-gw # advertise-svi-ip # rd 10.10.10.10:55 # route-target import 88:88 # route-target export 77:77
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Description |
---|---|
after list / elements=string | The resulting configuration module invocation. Returned: when changed Sample: |
before list / elements=string | The configuration prior to the module invocation. Returned: always Sample: |
commands list / elements=string | The set of commands pushed to the remote device. Returned: always Sample: |
Collection links
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/dellemc/enterprise_sonic/sonic_bgp_af_module.html