dellemc.enterprise_sonic.sonic_bgp_neighbors module – Manage a BGP neighbor and its parameters
Note
This module is part of the dellemc.enterprise_sonic collection (version 1.1.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_neighbors
.
New in version 1.0.0: of dellemc.enterprise_sonic
Synopsis
This module provides configuration management of global BGP_NEIGHBORS parameters on devices running Enterprise SONiC.
bgp_as and vrf_name must be created on the device in advance.
Note
This module has a corresponding action plugin.
Parameters
Parameter |
Comments |
---|---|
Specifies the BGP neighbors related configuration. |
|
Specifies the BGP autonomous system (AS) number which is already configured on the device. |
|
Specifies BGP neighbor-related configurations. |
|
Specifies the minimum interval between sending BGP routing updates. The range is from 0 to 600. |
|
Configuration for neighbor group authentication password |
|
Indicates whether the password is encrypted text Choices:
Default: “False” |
|
Authentication password for the neighbor group |
|
Enables or disables BFD. Choices:
|
|
Specifies capability attributes to this neighbor. |
|
Enables or disables dynamic capability to this neighbor. Choices:
|
|
Enables or disables advertise extended next-hop capability to the peer. Choices:
|
|
A textual description of the interface |
|
Neighbor router address. |
|
The name of the peer group that the neighbor is a member of. |
|
Remote AS of the BGP neighbor to configure. peer_as and peer_type are mutually exclusive. |
|
Specifies remote AS number. The range is from 1 to 4294967295. |
|
Specifies the type of BGP peer. Choices:
|
|
Specifies BGP neighbor timer-related configurations. |
|
Interval after not receiving a keepalive message that SONiC declares a peer dead, in seconds. The range is from 0 to 65535. |
|
Frequency with which the device sends keepalive messages to its peer, in seconds. The range is from 0 to 65535. |
|
Specifies the list of peer groups. |
|
Holds of list of address families associated to the peergroup. |
|
List of address families with afi, safi, activate and allowas-in parameters. afi and safi are required together. |
|
Enable or disable activate. Choices:
|
|
Holds afi mode. Choices:
|
|
Holds AS value. The origin and value are mutually exclusive. |
|
Set AS as the origin. Choices:
|
|
Holds AS number in the range 1-10. |
|
Holds safi mode. Choices:
|
|
Specifies the minimum interval between sending BGP routing updates. The range is from 0 to 600. |
|
Enables or disables BFD. Choices:
|
|
Specifies capability attributes to this peer group. |
|
Enables or disables dynamic capability to this peer group. Choices:
|
|
Enables or disables advertise extended next-hop capability to the peer. Choices:
|
|
Name of the peer group. |
|
Remote AS of the BGP peer group to configure. peer_as and peer_type are mutually exclusive. |
|
Specifies remote AS number. The range is from 1 to 4294967295. |
|
Specifies the type of BGP peer. Choices:
|
|
Specifies BGP peer group timer related configurations. |
|
Interval after not receiving a keepalive message that Enterprise SONiC declares a peer dead, in seconds. The range is from 0 to 65535. |
|
Frequency with which the device sends keepalive messages to its peer, in seconds. The range is from 0 to 65535. |
|
Specifies the VRF name which is already configured on the device. Default: “default” |
|
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. Choices:
|
Examples
# 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
neighbors:
- neighbor: Eth1/2
auth_pwd:
pwd: "pw123"
encrypted: false
nbr_description: "description 1"
- 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
auth_pwd:
pwd: "U2FsdGVkX199MZ7YOPkOR9O6wEZmtGSgiDfnlcN9hBg="
encrypted: true
nbr_description: "description 1"
- 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
# description "description 1"
# peer-group SPINE
# remote-as 10
# password U2FsdGVkX199MZ7YOPkOR9O6wEZmtGSgiDfnlcN9hBg= encrypted
# timers 15 30
# advertisement-interval 15
# bfd
# capability extended-nexthop
# capability dynamic
# !
# neighbor 192.168.1.4
#!
# router bgp 51
# timers 60 180
# neighbor interface Eth1/2
# description "description 1"
# password U2FsdGVkX1+bxMf9TKOhaXRNNaHmywiEVDF2lJ2c000= encrypted
#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
neighbors:
- neighbor: Eth1/2
auth_pwd:
pwd: "pw123"
encrypted: false
nbr_description: "description 1"
- 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
auth_pwd:
pwd: "U2FsdGVkX199MZ7YOPkOR9O6wEZmtGSgiDfnlcN9hBg="
encrypted: true
nbr_description: "description 1"
- 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
# !
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
The resulting configuration model invocation. Returned: when changed Sample: “The configuration returned is always in the same format of the parameters above.\n” |
|
The configuration prior to the model invocation. Returned: always Sample: “The configuration returned is always in the same format of the parameters above.\n” |
|
The set of commands pushed to the remote device. Returned: always Sample: [“command 1”, “command 2”, “command 3”] |
Authors
Abirami N (@abirami-n)