Note
This plugin is part of the dellemc.enterprise_sonic collection (version 1.1.0).
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_neighbors
.
New in version 1.0.0: of dellemc.enterprise_sonic
Note
This module has a corresponding action plugin.
Parameter | Choices/Defaults | Comments | |||||
---|---|---|---|---|---|---|---|
config list / elements=dictionary | Specifies the BGP neighbors related configuration. | ||||||
bgp_as string / required | Specifies the BGP autonomous system (AS) number which is already configured on the device. | ||||||
neighbors list / elements=dictionary | Specifies BGP neighbor-related configurations. | ||||||
advertisement_interval integer | Specifies the minimum interval between sending BGP routing updates. The range is from 0 to 600. | ||||||
bfd boolean |
| Enables or disables BFD. | |||||
capability dictionary | Specifies capability attributes to this neighbor. | ||||||
dynamic boolean |
| Enables or disables dynamic capability to this neighbor. | |||||
extended_nexthop boolean |
| Enables or disables advertise extended next-hop capability to the peer. | |||||
neighbor string / required | Neighbor router address. | ||||||
peer_group string | The name of the peer group that the neighbor is a member of. | ||||||
remote_as dictionary | Remote AS of the BGP neighbor to configure. peer_as and peer_type are mutually exclusive. | ||||||
peer_as integer | Specifies remote AS number. The range is from 1 to 4294967295. | ||||||
peer_type string |
| Specifies the type of BGP peer. | |||||
timers dictionary | Specifies BGP neighbor timer-related configurations. | ||||||
holdtime integer | Interval after not receiving a keepalive message that SONiC declares a peer dead, in seconds. The range is from 0 to 65535. | ||||||
keepalive integer | Frequency with which the device sends keepalive messages to its peer, in seconds. The range is from 0 to 65535. | ||||||
peer_group list / elements=dictionary | Specifies the list of peer groups. | ||||||
address_family dictionary | Holds of list of address families associated to the peergroup. | ||||||
afis list / elements=dictionary | List of address families with afi, safi, activate and allowas-in parameters. afi and safi are required together. | ||||||
activate boolean |
| Enable or disable activate. | |||||
afi string |
| Holds afi mode. | |||||
allowas_in dictionary | Holds AS value. The origin and value are mutually exclusive. | ||||||
origin boolean |
| Set AS as the origin. | |||||
value integer | Holds AS number in the range 1-10. | ||||||
safi string |
| Holds safi mode. | |||||
advertisement_interval integer | Specifies the minimum interval between sending BGP routing updates. The range is from 0 to 600. | ||||||
bfd boolean |
| Enables or disables BFD. | |||||
capability dictionary | Specifies capability attributes to this peer group. | ||||||
dynamic boolean |
| Enables or disables dynamic capability to this peer group. | |||||
extended_nexthop boolean |
| Enables or disables advertise extended next-hop capability to the peer. | |||||
name string / required | Name of the peer group. | ||||||
remote_as dictionary | Remote AS of the BGP peer group to configure. peer_as and peer_type are mutually exclusive. | ||||||
peer_as integer | Specifies remote AS number. The range is from 1 to 4294967295. | ||||||
peer_type string |
| Specifies the type of BGP peer. | |||||
timers dictionary | Specifies BGP peer group timer related configurations. | ||||||
holdtime integer | Interval after not receiving a keepalive message that Enterprise SONiC declares a peer dead, in seconds. The range is from 0 to 65535. | ||||||
keepalive integer | Frequency with which the device sends keepalive messages to its peer, in seconds. The range is from 0 to 65535. | ||||||
vrf_name string | Default: "default" | Specifies the VRF name which is already configured on the device. | |||||
state string |
| Specifies the operation to be performed on the BGP process that is configured on the device. In case of merged, the input configuration is merged with the existing BGP configuration on the device. In case of deleted, the existing BGP configuration is removed from the device. |
Note
check_mode
.# Using deleted # # Before state: # ------------- #router bgp 11 vrf VrfCheck2 # network import-check # timers 60 180 #! #router bgp 51 vrf VrfReg1 # network import-check # timers 60 180 # ! # neighbor interface Eth1/3 #! #router bgp 11 # network import-check # timers 60 180 # ! # neighbor 192.168.1.4 # ! # peer-group SP1 # bfd # capability dynamic # ! # peer-group SP2 # ! # - name: Deletes all BGP neighbors dellemc.enterprise_sonic.sonic_bgp_neighbors: config: state: deleted # # After state: # ------------- #router bgp 11 vrf VrfCheck2 # network import-check # timers 60 180 #! #router bgp 51 vrf VrfReg1 # network import-check # timers 60 180 #! #router bgp 11 # network import-check # timers 60 180 # ! # # Using merged # # Before state: # ------------ #router bgp 11 vrf VrfCheck2 # network import-check # timers 60 180 #! #router bgp 51 vrf VrfReg1 # network import-check # timers 60 180 #! #router bgp 11 # network import-check # timers 60 180 # ! - name: "Adds sonic_bgp_neighbors" dellemc.enterprise_sonic.sonic_bgp_neighbors: config: - bgp_as: 51 vrf_name: VrfReg1 peer_group: - name: SPINE bfd: true capability: dynamic: true extended_nexthop: true remote_as: peer_as: 4 address_family: afis: - afi: ipv4 safi: unicast activate: true allowas_in: origin: true - afi: ipv6 safi: unicast activate: true allowas_in: value: 5 neighbors: - neighbor: Eth1/3 remote_as: peer_as: 10 peer_group: SPINE advertisement_interval: 15 timers: keepalive: 30 holdtime: 15 bfd: true capability: dynamic: true extended_nexthop: true - neighbor: 192.168.1.4 state: merged # # After state: # ------------ #! #router bgp 11 vrf VrfCheck2 # network import-check # timers 60 180 #! #router bgp 51 vrf VrfReg1 # network import-check # timers 60 180 # ! # peer-group SPINE # remote-as 4 # bfd # capability dynamic # capability extended-nexthop # address-family ipv4 unicast # activate # allowas-in origin # send-community both # ! # address-family ipv6 unicast # activate # allowas-in 5 # send-community both # ! # neighbor interface Eth1/3 # peer-group SPINE # remote-as 10 # timers 15 30 # advertisement-interval 15 # bfd # capability extended-nexthop # capability dynamic # ! # neighbor 192.168.1.4 #! #router bgp 11 # network import-check # timers 60 180 # # Using deleted # # Before state: # ------------ #! #router bgp 11 vrf VrfCheck2 # network import-check # timers 60 180 #! #router bgp 51 vrf VrfReg1 # network import-check # timers 60 180 # ! # peer-group SPINE # bfd # remote-as 4 # ! # neighbor interface Eth1/3 # peer-group SPINE # remote-as 10 # timers 15 30 # advertisement-interval 15 # bfd # capability extended-nexthop # capability dynamic # ! # neighbor 192.168.1.4 #! #router bgp 11 # network import-check # timers 60 18 # ! # peer-group SP # ! # neighbor interface Eth1/3 # - name: "Deletes sonic_bgp_neighbors and peer-groups specific to vrfname" dellemc.enterprise_sonic.sonic_bgp_neighbors: config: - bgp_as: 51 vrf_name: VrfReg1 state: deleted # After state: # ------------ #! #router bgp 11 vrf VrfCheck2 # network import-check # timers 60 180 #! #router bgp 51 vrf VrfReg1 # network import-check # timers 60 180 # ! #router bgp 11 # network import-check # timers 60 18 # ! # peer-group SP # ! # neighbor interface Eth1/3 # # Using deleted # # Before state: # ------------- # #router bgp 51 vrf VrfReg1 # network import-check # timers 60 180 # ! # peer-group SPINE # bfd # remote-as 4 # ! # neighbor interface Eth1/3 # peer-group SPINE # remote-as 10 # timers 15 30 # advertisement-interval 15 # bfd # capability extended-nexthop # capability dynamic # ! # neighbor 192.168.1.4 # ! - name: "Deletes specific sonic_bgp_neighbors" dellemc.enterprise_sonic.sonic_bgp_neighbors: config: - bgp_as: 51 vrf_name: VrfReg1 peer_group: - name: SPINE bfd: true remote_as: peer_as: 4 neighbors: - neighbor: Eth1/3 remote_as: peer_as: 10 peer_group: SPINE advertisement_interval: 15 timers: keepalive: 30 holdtime: 15 bfd: true capability: dynamic: true extended_nexthop: true - neighbor: 192.168.1.4 state: deleted # # After state: # ------------- # #router bgp 51 vrf VrfReg1 # network import-check # timers 60 180 # ! # peer-group SPINE # ! # neighbor interface Eth1/3 # !
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
after list / elements=string | when changed | The resulting configuration model invocation. Sample: The configuration returned is always in the same format of the parameters above. |
before list / elements=string | always | The configuration prior to the model invocation. Sample: The configuration returned is always in the same format of the parameters above. |
commands list / elements=string | always | The set of commands pushed to the remote device. Sample: ['command 1', 'command 2', 'command 3'] |
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/dellemc/enterprise_sonic/sonic_bgp_neighbors_module.html