arista.eos.eos_bgp_global module – Manages BGP global resource module
Note
This module is part of the arista.eos collection (version 3.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 arista.eos
.
To use it in a playbook, specify: arista.eos.eos_bgp_global
.
New in version 1.4.0: of arista.eos
Synopsis
This module configures and manages the attributes of BGP global on Arista EOS platforms.
Note
This module has a corresponding action plugin.
Parameters
Parameter |
Comments |
---|---|
A list of configurations for BGP global. |
|
ip/ipv6 access list configuration. |
|
access list name. |
|
Specify ip/ipv6. Choices:
|
|
direction of packets. |
|
Configure aggregate address. |
|
ipv4/ipv6 address prefix. |
|
Advertise without installing the generated blackhole route in FIB. Choices:
|
|
Generate autonomous system set path information. Choices:
|
|
Name of the route map used to set the attribute of the aggregate route. |
|
Name of the route map used to filter the contributors of the aggregate route. |
|
Filters all more-specific routes from updates. Choices:
|
|
Autonomous system number. |
|
BGP parameters. |
|
BGP additional-paths commands Choices:
|
|
Advertise BGP routes even if they are inactive in RIB. Choices:
|
|
Allow local-as in updates. |
|
Number of local ASNs allowed in a BGP update. |
|
When True, it is set. Choices:
|
|
BGP Always Compare MED Choices:
|
|
AS Number notation. Choices:
|
|
Automatically determine the local address to be used for the non-transport AF. Choices:
|
|
Select the bestpath selection algorithim for BGP routes. |
|
Select the bestpath selection based on as-path. Choices:
|
|
Tie-break BGP paths in a ECMP group based on the order of arrival. Choices:
|
|
MED attribute |
|
MED Confed. Choices:
|
|
MED missing-as-worst. Choices:
|
|
skip one of the tie breaking rules in the bestpath selection. Choices:
|
|
Configure the tie-break option for BGP bestpath selection. Choices:
|
|
client to client configuration. Choices:
|
|
Cluster ID of this router acting as a route reflector. |
|
confederation. |
|
Confederation identifier. |
|
Confederation peers. |
|
Control plane filter for BGP. Choices:
|
|
Bgp convergence parameters. |
|
Maximum amount of time to wait for slow peers to estabilsh session. Choices:
|
|
time in secs |
|
Default neighbor configuration commands. Choices:
|
|
Enforce the First AS for EBGP routes(default). Choices:
|
|
BGP host routes configuration. Choices:
|
|
Labeled Unicast. Choices:
|
|
BGP listen. |
|
Set limit on the number of dynamic BGP peers allowed. |
|
Subnet Range to be associated with the peer group. |
|
Address prefix |
|
Name of peer group. |
|
name. |
|
Name of peer filter. |
|
Neighbor AS number |
|
Log neighbor up/down events. Choices:
|
|
Missing policy override configuration commands. |
|
Missing policy action options. Choices:
|
|
Missing policy direction options. Choices:
|
|
Enable Bgp monitoring for all/specified stations. Choices:
|
|
Preserve original nexthop while advertising routes to eBGP peers. Choices:
|
|
Redistribute internal BGP routes. Choices:
|
|
Configure route-map for route installation. |
|
Configure route reflector options |
|
preserve route attributes, overwriting route-map changes Choices:
|
|
When True route_reflector is set. Choices:
|
|
Configure transport port for TCP session |
|
Default metric. |
|
Define an administrative distance. |
|
distance for external routes. |
|
distance for internal routes. |
|
distance for local routes. |
|
Enable graceful restart mode. |
|
Set the max time needed to restart and come back up. |
|
When True, graceful restart is set. Choices:
|
|
Set the max time to hold onto restarting peer stale paths. |
|
Enable graceful restart helper mode. Choices:
|
|
Maximum number of equal cost paths. |
|
Value for maximum number of equal cost paths. |
|
Value for maximum number of installed ECMP routes. |
|
BGP monitoring protocol configuration. |
|
Configure the BGP monitoring protocol port number <1024-65535>. |
|
BGP monitoring protocol received route selection. Choices:
|
|
BGP monitoring station configuration. |
|
BGP monitoring protocol Per-Peer Header timestamp behavior. Choices:
|
|
Configure routing for a network. |
|
BGP additional-paths commands. Choices:
|
|
Allow local-as in updates. |
|
Number of local ASNs allowed in a BGP update. |
|
When True, it is set. Choices:
|
|
Automatically determine the local address to be used for the non-transport AF. Choices:
|
|
Originate default route to this neighbor. |
|
Always originate default route to this neighbor. Choices:
|
|
Route map reference. |
|
Text describing the neighbor. |
|
Donot perform Capability Negotiation with this neighbor. Choices:
|
|
Allow BGP connections to indirectly connected external peers. |
|
If True, ttl is not set. Choices:
|
|
Time-to-live in the range 1-255 hops. |
|
Password to use in computation of MD5 hash. |
|
password (up to 80 chars). |
|
Encryption type. Choices:
|
|
Enforce the First AS for EBGP routes(default). Choices:
|
|
Override localpref when exporting to an internal peer. |
|
Configure BFD protocol options for this peer. Choices:
|
|
Enable graceful restart mode. Choices:
|
|
Enable graceful restart helper mode. Choices:
|
|
Neighbor idle restart timer. |
|
Override localpref when importing from an external peer. |
|
Enable link bandwidth community for routes to this peer. |
|
Enable link bandwidth auto generation for routes from this peer. Choices:
|
|
Enable link bandwidth default generation for routes from this peer. |
|
If True, set link bandwidth Choices:
|
|
Delay outbound route updates. |
|
Configure local AS number advertised to peer. |
|
AS number. |
|
Prefer router AS Number over local AS Number. Choices:
|
|
The local IPv6 address of the neighbor in A:B:C:D:E:F:G:H format. |
|
Maximum number of routes accepted from this peer. |
|
Maximum number of accepted routes (0 means unlimited). |
|
Maximum number of accepted routes after which a warning is issued. (0 means never warn) |
|
Maximum number of routes received from this peer. |
|
Maximum number of routes (0 means unlimited). |
|
Percentage of maximum-routes at which warning is to be issued. |
|
Number of routes at which to warn. |
|
Percentage of maximum number of routes at which to warn( 1-100). |
|
Only warn, no restart, if max route limit exceeded. Choices:
|
|
MED value to advertise to peer. |
|
Enable BGP Monitoring Protocol for this peer. Choices:
|
|
Always advertise this router address as the BGP next hop Choices:
|
|
Preserve original nexthop while advertising routes to eBGP peers. Choices:
|
|
IPv6 next-hop address for the neighbor |
|
Delay outbound route updates. |
|
Neighbor address or peer group. |
|
Name of the peer group. |
|
Prefix list reference. |
|
Configure an inbound/outbound prefix-list. Choices:
|
|
prefix list name. |
|
Neighbor Autonomous System. |
|
Remove private AS number from updates to this peer. |
|
Remove private AS number. Choices:
|
|
Replace private AS number with local AS number. Choices:
|
|
If True, set remove_private_as. Choices:
|
|
Route map reference. |
|
Configure an inbound/outbound route-map. Choices:
|
|
Route map name. |
|
Configure peer as a route reflector client. Choices:
|
|
Use routing table information to reach the peer. Choices:
|
|
Send community attribute to this neighbor. |
|
Type of community attributes to send to this neighbor. |
|
link-bandwidth divide attribute. Choices:
|
|
cumulative/aggregate attribute to be sent. Choices:
|
|
Reference link speed in bits/second |
|
Attribute to be sent to the neighbor. Choices:
|
|
Administratively shut down this neighbor. Choices:
|
|
Configure how to handle routes that fail import. Choices:
|
|
Timers. |
|
Hold time in secs. |
|
Keep Alive Interval in secs. |
|
Configure transport options for TCP session. |
|
Configure connection-mode for TCP session. |
|
Configure BGP peer TCP port to connect to. |
|
BGP ttl security check |
|
Specify the local source interface for peer BGP sessions. |
|
Weight to assign. |
|
Configure routing for a network. |
|
address prefix. |
|
Name of route map. |
|
Redistribute routes in to BGP. |
|
Applicable for isis routes. Specify isis route level. Choices:
|
|
ospf route options. Choices:
|
|
Routes to be redistributed. Choices:
|
|
Route map reference. |
|
Route target. |
|
Route action. Choices:
|
|
Route Target. |
|
Router id. |
|
When True, shut down BGP. Choices:
|
|
Timers. |
|
Hold time in secs. |
|
Keep Alive Interval in secs. |
|
Configure unequal cost multipathing. |
|
Configure UCMP fec utilization threshold. |
|
UCMP FEC utilization Clear thresholds. |
|
UCMP fec utilization too high threshold. |
|
Configure link-bandwidth propagation delay. |
|
UCMP link bandwidth mode Choices:
|
|
Link Bandwidth Advertisement delay. |
|
UCMP mode. |
|
Value for total number UCMP nexthops. |
|
If True, ucmp mode is set to 1. Choices:
|
|
Configure BGP update generation. |
|
batch size for FIB route acknowledgements. |
|
wait for options before converge or synchronize. Choices:
|
|
Configure MAC VRF BGP for single VLAN support. |
|
Configure MAC VRF BGP for multiple VLAN support. |
|
Configure BGP in a VRF. |
|
ip/ipv6 access list configuration. |
|
access list name. |
|
Specify ip/ipv6. Choices:
|
|
direction of packets. |
|
Configure aggregate address. |
|
ipv4/ipv6 address prefix. |
|
Advertise without installing the generated blackhole route in FIB. Choices:
|
|
Generate autonomous system set path information. Choices:
|
|
Name of the route map used to set the attribute of the aggregate route. |
|
Name of the route map used to filter the contributors of the aggregate route. |
|
Filters all more-specific routes from updates. Choices:
|
|
BGP parameters. |
|
BGP additional-paths commands Choices:
|
|
Advertise BGP routes even if they are inactive in RIB. Choices:
|
|
Allow local-as in updates. |
|
Number of local ASNs allowed in a BGP update. |
|
When True, it is set. Choices:
|
|
BGP Always Compare MED Choices:
|
|
AS Number notation. Choices:
|
|
Automatically determine the local address to be used for the non-transport AF. Choices:
|
|
Select the bestpath selection algorithim for BGP routes. |
|
Select the bestpath selection based on as-path. Choices:
|
|
Tie-break BGP paths in a ECMP group based on the order of arrival. Choices:
|
|
MED attribute |
|
MED Confed. Choices:
|
|
MED missing-as-worst. Choices:
|
|
skip one of the tie breaking rules in the bestpath selection. Choices:
|
|
Configure the tie-break option for BGP bestpath selection. Choices:
|
|
client to client configuration. Choices:
|
|
Cluster ID of this router acting as a route reflector. |
|
confederation. |
|
Confederation identifier. |
|
Confederation peers. |
|
Control plane filter for BGP. Choices:
|
|
Bgp convergence parameters. |
|
Maximum amount of time to wait for slow peers to estabilsh session. Choices:
|
|
time in secs |
|
Default neighbor configuration commands. Choices:
|
|
Enforce the First AS for EBGP routes(default). Choices:
|
|
BGP host routes configuration. Choices:
|
|
Labeled Unicast. Choices:
|
|
BGP listen. |
|
Set limit on the number of dynamic BGP peers allowed. |
|
Subnet Range to be associated with the peer group. |
|
Address prefix |
|
Name of peer group. |
|
name. |
|
Name of peer filter. |
|
Neighbor AS number |
|
Log neighbor up/down events. Choices:
|
|
Missing policy override configuration commands. |
|
Missing policy action options. Choices:
|
|
Missing policy direction options. Choices:
|
|
Enable Bgp monitoring for all/specified stations. Choices:
|
|
Preserve original nexthop while advertising routes to eBGP peers. Choices:
|
|
Redistribute internal BGP routes. Choices:
|
|
Configure route-map for route installation. |
|
Configure route reflector options |
|
preserve route attributes, overwriting route-map changes Choices:
|
|
When True route_reflector is set. Choices:
|
|
Configure transport port for TCP session |
|
Default metric. |
|
Define an administrative distance. |
|
distance for external routes. |
|
distance for internal routes. |
|
distance for local routes. |
|
Enable graceful restart mode. |
|
Set the max time needed to restart and come back up. |
|
When True, graceful restart is set. Choices:
|
|
Set the max time to hold onto restarting peer stale paths. |
|
Enable graceful restart helper mode. Choices:
|
|
Maximum number of equal cost paths. |
|
Value for maximum number of equal cost paths. |
|
Value for maximum number of installed ECMP routes. |
|
Configure routing for a network. |
|
BGP additional-paths commands. Choices:
|
|
Allow local-as in updates. |
|
Number of local ASNs allowed in a BGP update. |
|
When True, it is set. Choices:
|
|
Automatically determine the local address to be used for the non-transport AF. Choices:
|
|
Originate default route to this neighbor. |
|
Always originate default route to this neighbor. Choices:
|
|
Route map reference. |
|
Text describing the neighbor. |
|
Donot perform Capability Negotiation with this neighbor. Choices:
|
|
Allow BGP connections to indirectly connected external peers. |
|
If True, ttl is not set. Choices:
|
|
Time-to-live in the range 1-255 hops. |
|
Password to use in computation of MD5 hash. |
|
password (up to 80 chars). |
|
Encryption type. Choices:
|
|
Enforce the First AS for EBGP routes(default). Choices:
|
|
Override localpref when exporting to an internal peer. |
|
Configure BFD protocol options for this peer. Choices:
|
|
Enable graceful restart mode. Choices:
|
|
Enable graceful restart helper mode. Choices:
|
|
Neighbor idle restart timer. |
|
Override localpref when importing from an external peer. |
|
Enable link bandwidth community for routes to this peer. |
|
Enable link bandwidth auto generation for routes from this peer. Choices:
|
|
Enable link bandwidth default generation for routes from this peer. |
|
If True, set link bandwidth Choices:
|
|
Delay outbound route updates. |
|
Configure local AS number advertised to peer. |
|
AS number. |
|
Prefer router AS Number over local AS Number. Choices:
|
|
The local IPv6 address of the neighbor in A:B:C:D:E:F:G:H format. |
|
Maximum number of routes accepted from this peer. |
|
Maximum number of accepted routes (0 means unlimited). |
|
Maximum number of accepted routes after which a warning is issued. (0 means never warn) |
|
Maximum number of routes received from this peer. |
|
Maximum number of routes (0 means unlimited). |
|
Percentage of maximum-routes at which warning is to be issued. |
|
Number of routes at which to warn. |
|
Percentage of maximum number of routes at which to warn( 1-100). |
|
Only warn, no restart, if max route limit exceeded. Choices:
|
|
MED value to advertise to peer. |
|
Enable BGP Monitoring Protocol for this peer. Choices:
|
|
Always advertise this router address as the BGP next hop Choices:
|
|
Preserve original nexthop while advertising routes to eBGP peers. Choices:
|
|
IPv6 next-hop address for the neighbor |
|
Delay outbound route updates. |
|
Neighbor address or peer group. |
|
Name of the peer group. |
|
Prefix list reference. |
|
Configure an inbound/outbound prefix-list. Choices:
|
|
prefix list name. |
|
Neighbor Autonomous System. |
|
Remove private AS number from updates to this peer. |
|
Remove private AS number. Choices:
|
|
Replace private AS number with local AS number. Choices:
|
|
If True, set remove_private_as. Choices:
|
|
Route map reference. |
|
Configure an inbound/outbound route-map. Choices:
|
|
Route map name. |
|
Configure peer as a route reflector client. Choices:
|
|
Use routing table information to reach the peer. Choices:
|
|
Send community attribute to this neighbor. |
|
Type of community attributes to send to this neighbor. |
|
link-bandwidth divide attribute. Choices:
|
|
cumulative/aggregate attribute to be sent. Choices:
|
|
Reference link speed in bits/second |
|
Attribute to be sent to the neighbor. Choices:
|
|
Administratively shut down this neighbor. Choices:
|
|
Configure how to handle routes that fail import. Choices:
|
|
Timers. |
|
Hold time in secs. |
|
Keep Alive Interval in secs. |
|
Configure transport options for TCP session. |
|
Configure connection-mode for TCP session. |
|
Configure BGP peer TCP port to connect to. |
|
BGP ttl security check |
|
Specify the local source interface for peer BGP sessions. |
|
Weight to assign. |
|
Configure routing for a network. |
|
address prefix. |
|
Name of route map. |
|
Redistribute routes in to BGP. |
|
Applicable for isis routes. Specify isis route level. Choices:
|
|
ospf route options. Choices:
|
|
Routes to be redistributed. Choices:
|
|
Route map reference. |
|
Route target. |
|
Route action. Choices:
|
|
Export routes imported from the same Afi/Safi. Choices:
|
|
Name of a route map. |
|
Route Target. |
|
Type of address fmaily Choices:
|
|
Router id. |
|
When True, shut down BGP. Choices:
|
|
Timers. |
|
Hold time in secs. |
|
Keep Alive Interval in secs. |
|
Configure unequal cost multipathing. |
|
Configure UCMP fec utilization threshold. |
|
UCMP FEC utilization Clear thresholds. |
|
UCMP fec utilization too high threshold. |
|
Configure link-bandwidth propagation delay. |
|
UCMP link bandwidth mode Choices:
|
|
Link Bandwidth Advertisement delay. |
|
UCMP mode. |
|
Value for total number UCMP nexthops. |
|
If True, ucmp mode is set to 1. Choices:
|
|
Configure BGP update generation. |
|
batch size for FIB route acknowledgements. |
|
wait for options before converge or synchronize. Choices:
|
|
VRF name. |
|
This option is used only with state parsed. The value of this option should be the output received from the EOS device by executing the command show running-config | section bgp. The state parsed reads the configuration from |
|
The state the configuration should be left in. State purged removes all the BGP configurations from the target device. Use caution with this state.(‘no router bgp <x>’) State deleted only removes BGP attributes that this modules manages and does not negate the BGP process completely. Thereby, preserving address-family related configurations under BGP context. Running states deleted and replaced will result in an error if there are address-family configuration lines present under vrf context that is is to be removed. Please use the arista.eos.eos_bgp_address_family module for prior cleanup. Refer to examples for more details. Choices:
|
Notes
Note
Tested against Arista EOS 4.24.6F
This module works with connection
network_cli
. See the EOS Platform Options.
Examples
# Using merged
# Before state
# veos(config)#show running-config | section bgp
# veos(config)#
- name: Merge provided configuration with device configuration
arista.eos.eos_bgp_global:
config:
as_number: "100"
bgp_params:
host_routes: True
convergence:
slow_peer: True
time: 6
additional_paths: "send"
log_neighbor_changes: True
maximum_paths:
max_equal_cost_paths: 55
aggregate_address:
- address: "1.2.1.0/24"
as_set: true
match_map: "match01"
- address: "5.2.1.0/24"
attribute_map: "attrmatch01"
advertise_only: true
redistribute:
- protocol: "static"
route_map: "map_static"
- protocol: "attached-host"
distance:
internal: 50
neighbor:
- peer: "10.1.3.2"
allowas_in:
set: true
default_originate:
always: true
dont_capability_negotiate: true
export_localpref: 4000
maximum_received_routes:
count: 500
warning_limit:
limit_percent: 5
next_hop_unchanged: true
prefix_list:
name: "prefix01"
direction: "out"
- peer: "peer1"
fall_over: true
link_bandwidth:
update_delay: 5
monitoring: True
send_community:
community_attribute: "extended"
sub_attribute: "link-bandwidth"
link_bandwidth_attribute: "aggregate"
speed: "600"
vlan: 5
state: merged
# After State:
# veos(config)#show running-config | section bgp
# router bgp 100
# bgp convergence slow-peer time 6
# distance bgp 50 50 50
# maximum-paths 55
# bgp additional-paths send any
# neighbor peer1 peer group
# neighbor peer1 link-bandwidth update-delay 5
# neighbor peer1 fall-over bfd
# neighbor peer1 monitoring
# neighbor peer1 send-community extended link-bandwidth aggregate 600
# neighbor peer1 maximum-routes 12000
# neighbor 10.1.3.2 export-localpref 4000
# neighbor 10.1.3.2 next-hop-unchanged
# neighbor 10.1.3.2 dont-capability-negotiate
# neighbor 10.1.3.2 allowas-in 3
# neighbor 10.1.3.2 default-originate always
# neighbor 10.1.3.2 maximum-routes 500 warning-limit 5 percent
# aggregate-address 1.2.1.0/24 as-set match-map match01
# aggregate-address 5.2.1.0/24 attribute-map attrmatch01 advertise-only
# redistribute static route-map map_static
# redistribute attached-host
# !
# vlan 5
# !
# address-family ipv4
# neighbor 10.1.3.2 prefix-list prefix01 out
# veos(config)#
#
# Module Execution:
#
# "after": {
# "aggregate_address": [
# {
# "address": "1.2.1.0/24",
# "as_set": true,
# "match_map": "match01"
# },
# {
# "address": "5.2.1.0/24",
# "advertise_only": true,
# "attribute_map": "attrmatch01"
# }
# ],
# "as_number": "100",
# "bgp_params": {
# "additional_paths": "send",
# "convergence": {
# "slow_peer": true,
# "time": 6
# }
# },
# "distance": {
# "external": 50,
# "internal": 50,
# "local": 50
# },
# "maximum_paths": {
# "max_equal_cost_paths": 55
# },
# "neighbor": [
# {
# "fall_over": true,
# "link_bandwidth": {
# "set": true,
# "update_delay": 5
# },
# "maximum_received_routes": {
# "count": 12000
# },
# "monitoring": true,
# "peer": "peer1",
# "peer_group": "peer1",
# "send_community": {
# "community_attribute": "extended",
# "link_bandwidth_attribute": "aggregate",
# "speed": "600",
# "sub_attribute": "link-bandwidth"
# }
# },
# {
# "allowas_in": {
# "count": 3
# },
# "default_originate": {
# "always": true
# },
# "dont_capability_negotiate": true,
# "export_localpref": 4000,
# "maximum_received_routes": {
# "count": 500,
# "warning_limit": {
# "limit_percent": 5
# }
# },
# "next_hop_unchanged": true,
# "peer": "10.1.3.2"
# }
# ],
# "redistribute": [
# {
# "protocol": "static",
# "route_map": "map_static"
# },
# {
# "protocol": "attached-host"
# }
# ],
# "vlan": 5
# },
# "before": {},
# "changed": true,
# "commands": [
# "router bgp 100",
# "neighbor 10.1.3.2 allowas-in",
# "neighbor 10.1.3.2 default-originate always",
# "neighbor 10.1.3.2 dont-capability-negotiate",
# "neighbor 10.1.3.2 export-localpref 4000",
# "neighbor 10.1.3.2 maximum-routes 500 warning-limit 5 percent",
# "neighbor 10.1.3.2 next-hop-unchanged",
# "neighbor 10.1.3.2 prefix-list prefix01 out",
# "neighbor peer1 fall-over bfd",
# "neighbor peer1 link-bandwidth update-delay 5",
# "neighbor peer1 monitoring",
# "neighbor peer1 send-community extended link-bandwidth aggregate 600",
# "redistribute static route-map map_static",
# "redistribute attached-host",
# "aggregate-address 1.2.1.0/24 as-set match-map match01",
# "aggregate-address 5.2.1.0/24 attribute-map attrmatch01 advertise-only",
# "bgp host-routes fib direct-install",
# "bgp convergence slow-peer time 6",
# "bgp additional-paths send any",
# "bgp log-neighbor-changes",
# "maximum-paths 55",
# "distance bgp 50",
# "vlan 5"
# ],
# Using replaced:
# Before state:
# veos(config)#show running-config | section bgp
# router bgp 100
# bgp convergence slow-peer time 6
# distance bgp 50 50 50
# maximum-paths 55
# bgp additional-paths send any
# neighbor peer1 peer group
# neighbor peer1 link-bandwidth update-delay 5
# neighbor peer1 fall-over bfd
# neighbor peer1 monitoring
# neighbor peer1 send-community extended link-bandwidth aggregate 600
# neighbor peer1 maximum-routes 12000
# neighbor 10.1.3.2 export-localpref 4000
# neighbor 10.1.3.2 next-hop-unchanged
# neighbor 10.1.3.2 dont-capability-negotiate
# neighbor 10.1.3.2 allowas-in 3
# neighbor 10.1.3.2 default-originate always
# neighbor 10.1.3.2 maximum-routes 500 warning-limit 5 percent
# aggregate-address 1.2.1.0/24 as-set match-map match01
# aggregate-address 5.2.1.0/24 attribute-map attrmatch01 advertise-only
# redistribute static route-map map_static
# redistribute attached-host
# !
# vlan 5
# !
# address-family ipv4
# neighbor 10.1.3.2 prefix-list prefix01 out
# !
# vrf vrf01
# route-target import 54:11
# neighbor 12.1.3.2 dont-capability-negotiate
# neighbor 12.1.3.2 allowas-in 3
# neighbor 12.1.3.2 default-originate always
# neighbor 12.1.3.2 maximum-routes 12000
# veos(config)#
- name: replace provided configuration with device configuration
arista.eos.eos_bgp_global:
config:
as_number: "100"
bgp_params:
host_routes: True
convergence:
slow_peer: True
time: 6
additional_paths: "send"
log_neighbor_changes: True
vrfs:
- vrf: "vrf01"
maximum_paths:
max_equal_cost_paths: 55
aggregate_address:
- address: "1.2.1.0/24"
as_set: true
match_map: "match01"
- address: "5.2.1.0/24"
attribute_map: "attrmatch01"
advertise_only: true
redistribute:
- protocol: "static"
route_map: "map_static"
- protocol: "attached-host"
distance:
internal: 50
neighbor:
- peer: "10.1.3.2"
allowas_in:
set: true
default_originate:
always: true
dont_capability_negotiate: true
export_localpref: 4000
maximum_received_routes:
count: 500
warning_limit:
limit_percent: 5
next_hop_unchanged: true
prefix_list:
name: "prefix01"
direction: "out"
- peer: "peer1"
fall_over: true
link_bandwidth:
update_delay: 5
monitoring: True
send_community:
community_attribute: "extended"
sub_attribute: "link-bandwidth"
link_bandwidth_attribute: "aggregate"
speed: "600"
state: replaced
# After State:
# veos(config)#show running-config | section bgp
# router bgp 100
# bgp convergence slow-peer time 6
# bgp additional-paths send any
# !
# vrf vrf01
# distance bgp 50 50 50
# maximum-paths 55
# neighbor 10.1.3.2 export-localpref 4000
# neighbor 10.1.3.2 next-hop-unchanged
# neighbor 10.1.3.2 dont-capability-negotiate
# neighbor 10.1.3.2 allowas-in 3
# neighbor 10.1.3.2 default-originate always
# neighbor 10.1.3.2 maximum-routes 500 warning-limit 5 percent
# aggregate-address 1.2.1.0/24 as-set match-map match01
# aggregate-address 5.2.1.0/24 attribute-map attrmatch01 advertise-only
# redistribute static route-map map_static
# redistribute attached-host
# !
# address-family ipv4
# neighbor 10.1.3.2 prefix-list prefix01 out
# veos(config)#
#
#
# Module Execution:
#
# "after": {
# "as_number": "100",
# "bgp_params": {
# "additional_paths": "send",
# "convergence": {
# "slow_peer": true,
# "time": 6
# }
# },
# "vrfs": [
# {
# "aggregate_address": [
# {
# "address": "1.2.1.0/24",
# "as_set": true,
# "match_map": "match01"
# },
# {
# "address": "5.2.1.0/24",
# "advertise_only": true,
# "attribute_map": "attrmatch01"
# }
# ],
# "distance": {
# "external": 50,
# "internal": 50,
# "local": 50
# },
# "maximum_paths": {
# "max_equal_cost_paths": 55
# },
# "neighbor": [
# {
# "allowas_in": {
# "count": 3
# },
# "default_originate": {
# "always": true
# },
# "dont_capability_negotiate": true,
# "export_localpref": 4000,
# "maximum_received_routes": {
# "count": 500,
# "warning_limit": {
# "limit_percent": 5
# }
# },
# "next_hop_unchanged": true,
# "peer": "10.1.3.2"
# }
# ],
# "redistribute": [
# {
# "protocol": "static",
# "route_map": "map_static"
# },
# {
# "protocol": "attached-host"
# }
# ],
# "vrf": "vrf01"
# }
# ]
# },
# "before": {
# "aggregate_address": [
# {
# "address": "1.2.1.0/24",
# "as_set": true,
# "match_map": "match01"
# },
# {
# "address": "5.2.1.0/24",
# "advertise_only": true,
# "attribute_map": "attrmatch01"
# }
# ],
# "as_number": "100",
# "bgp_params": {
# "additional_paths": "send",
# "convergence": {
# "slow_peer": true,
# "time": 6
# }
# },
# "distance": {
# "external": 50,
# "internal": 50,
# "local": 50
# },
# "maximum_paths": {
# "max_equal_cost_paths": 55
# },
# "neighbor": [
# {
# "fall_over": true,
# "link_bandwidth": {
# "set": true,
# "update_delay": 5
# },
# "maximum_received_routes": {
# "count": 12000
# },
# "monitoring": true,
# "peer": "peer1",
# "peer_group": "peer1",
# "send_community": {
# "community_attribute": "extended",
# "link_bandwidth_attribute": "aggregate",
# "speed": "600",
# "sub_attribute": "link-bandwidth"
# }
# },
# {
# "allowas_in": {
# "count": 3
# },
# "default_originate": {
# "always": true
# },
# "dont_capability_negotiate": true,
# "export_localpref": 4000,
# "maximum_received_routes": {
# "count": 500,
# "warning_limit": {
# "limit_percent": 5
# }
# },
# "next_hop_unchanged": true,
# "peer": "10.1.3.2"
# }
# ],
# "redistribute": [
# {
# "protocol": "static",
# "route_map": "map_static"
# },
# {
# "protocol": "attached-host"
# }
# ],
# "vlan": 5,
# "vrfs": [
# {
# "neighbor": [
# {
# "allowas_in": {
# "count": 3
# },
# "default_originate": {
# "always": true
# },
# "dont_capability_negotiate": true,
# "maximum_received_routes": {
# "count": 12000
# },
# "peer": "12.1.3.2"
# }
# ],
# "route_target": {
# "action": "import",
# "target": "54:11"
# },
# "vrf": "vrf01"
# }
# ]
# },
# "changed": true,
# "commands": [
# "router bgp 100",
# "vrf vrf01",
# "no route-target import 54:11",
# "neighbor 10.1.3.2 allowas-in",
# "neighbor 10.1.3.2 default-originate always",
# "neighbor 10.1.3.2 dont-capability-negotiate",
# "neighbor 10.1.3.2 export-localpref 4000",
# "neighbor 10.1.3.2 maximum-routes 500 warning-limit 5 percent",
# "neighbor 10.1.3.2 next-hop-unchanged",
# "neighbor 10.1.3.2 prefix-list prefix01 out",
# "neighbor peer1 fall-over bfd",
# "neighbor peer1 link-bandwidth update-delay 5",
# "neighbor peer1 monitoring",
# "neighbor peer1 send-community extended link-bandwidth aggregate 600",
# "no neighbor 12.1.3.2",
# "redistribute static route-map map_static",
# "redistribute attached-host",
# "aggregate-address 1.2.1.0/24 as-set match-map match01",
# "aggregate-address 5.2.1.0/24 attribute-map attrmatch01 advertise-only",
# "maximum-paths 55",
# "distance bgp 50",
# "exit",
# "no neighbor peer1 peer group",
# "no neighbor peer1 link-bandwidth update-delay 5",
# "no neighbor peer1 fall-over bfd",
# "no neighbor peer1 monitoring",
# "no neighbor peer1 send-community extended link-bandwidth aggregate 600",
# "no neighbor peer1 maximum-routes 12000",
# "no neighbor 10.1.3.2",
# "no redistribute static route-map map_static",
# "no redistribute attached-host",
# "no aggregate-address 1.2.1.0/24 as-set match-map match01",
# "no aggregate-address 5.2.1.0/24 attribute-map attrmatch01 advertise-only",
# "bgp host-routes fib direct-install",
# "bgp log-neighbor-changes",
# "no distance bgp 50 50 50",
# "no maximum-paths 55",
# "no vlan 5"
# ],
#
# Using replaced (in presence of address_family under vrf):
# Before State:
#veos(config)#show running-config | section bgp
# router bgp 100
# bgp convergence slow-peer time 6
# bgp additional-paths send any
# !
# vrf vrf01
# distance bgp 50 50 50
# maximum-paths 55
# neighbor 10.1.3.2 export-localpref 4000
# neighbor 10.1.3.2 next-hop-unchanged
# neighbor 10.1.3.2 dont-capability-negotiate
# neighbor 10.1.3.2 allowas-in 3
# neighbor 10.1.3.2 default-originate always
# neighbor 10.1.3.2 maximum-routes 500 warning-limit 5 percent
# aggregate-address 1.2.1.0/24 as-set match-map match01
# aggregate-address 5.2.1.0/24 attribute-map attrmatch01 advertise-only
# redistribute static route-map map_static
# redistribute attached-host
# !
# address-family ipv4
# neighbor 10.1.3.2 prefix-list prefix01 out
# !
# address-family ipv6
# redistribute dhcp
# veos(config)#
- name: Replace
arista.eos.eos_bgp_global:
config:
as_number: "100"
graceful_restart:
set: True
router_id: "1.1.1.1"
timers:
keepalive: 2
holdtime: 5
ucmp:
mode:
set: True
vlan_aware_bundle: "bundle1 bundle2 bundle3"
state: replaced
# Module Execution:
# fatal: [192.168.122.113]: FAILED! => {
# "changed": false,
# "invocation": {
# "module_args": {
# "config": {
# "access_group": null,
# "aggregate_address": null,
# "as_number": "100",
# "bgp_params": null,
# "default_metric": null,
# "distance": null,
# "graceful_restart": {
# "restart_time": null,
# "set": true,
# "stalepath_time": null
# },
# "graceful_restart_helper": null,
# "maximum_paths": null,
# "monitoring": null,
# "neighbor": null,
# "network": null,
# "redistribute": null,
# "route_target": null,
# "router_id": "1.1.1.1",
# "shutdown": null,
# "timers": {
# "holdtime": 5,
# "keepalive": 2
# },
# "ucmp": {
# "fec": null,
# "link_bandwidth": null,
# "mode": {
# "nexthops": null,
# "set": true
# }
# },
# "update": null,
# "vlan": null,
# "vlan_aware_bundle": "bundle1 bundle2 bundle3",
# "vrfs": null
# },
# "running_config": null,
# "state": "replaced"
# }
# },
# "msg": "Use the _bgp_af module to delete the address_family under vrf, before replacing/deleting the vrf."
# }
# Using deleted:
# Before state:
# veos(config)#show running-config | section bgp
# router bgp 100
# bgp convergence slow-peer time 6
# bgp additional-paths send any
# !
# vrf vrf01
# distance bgp 50 50 50
# maximum-paths 55
# neighbor 10.1.3.2 export-localpref 4000
# neighbor 10.1.3.2 next-hop-unchanged
# neighbor 10.1.3.2 dont-capability-negotiate
# neighbor 10.1.3.2 allowas-in 3
# neighbor 10.1.3.2 default-originate always
# neighbor 10.1.3.2 maximum-routes 500 warning-limit 5 percent
# aggregate-address 1.2.1.0/24 as-set match-map match01
# aggregate-address 5.2.1.0/24 attribute-map attrmatch01 advertise-only
# redistribute static route-map map_static
# redistribute attached-host
# !
- name: Delete configuration
arista.eos.eos_bgp_global:
config:
as_number: "100"
state: deleted
# After State:
# veos(config)#show running-config | section bgp
# router bgp 100
#
#
# Module Execution:
#
# "after": {
# "as_number": "100"
# },
# "before": {
# "as_number": "100",
# "bgp_params": {
# "additional_paths": "send",
# "convergence": {
# "slow_peer": true,
# "time": 6
# }
# },
# "vrfs": [
# {
# "aggregate_address": [
# {
# "address": "1.2.1.0/24",
# "as_set": true,
# "match_map": "match01"
# },
# {
# "address": "5.2.1.0/24",
# "advertise_only": true,
# "attribute_map": "attrmatch01"
# }
# ],
# "distance": {
# "external": 50,
# "internal": 50,
# "local": 50
# },
# "maximum_paths": {
# "max_equal_cost_paths": 55
# },
# "neighbor": [
# {
# "allowas_in": {
# "count": 3
# },
# "default_originate": {
# "always": true
# },
# "dont_capability_negotiate": true,
# "export_localpref": 4000,
# "maximum_received_routes": {
# "count": 500,
# "warning_limit": {
# "limit_percent": 5
# }
# },
# "next_hop_unchanged": true,
# "peer": "10.1.3.2"
# }
# ],
# "redistribute": [
# {
# "protocol": "static",
# "route_map": "map_static"
# },
# {
# "protocol": "attached-host"
# }
# ],
# "vrf": "vrf01"
# }
# ]
# },
# "changed": true,
# "commands": [
# "router bgp 100",
# "no vrf vrf01",
# "no bgp convergence slow-peer time 6",
# "no bgp additional-paths send any"
# ],
#
# Using purged:
# Before state:
# veos(config)#show running-config | section bgp
# router bgp 100
# bgp convergence slow-peer time 6
# distance bgp 50 50 50
# maximum-paths 55
# bgp additional-paths send any
# neighbor peer1 peer group
# neighbor peer1 link-bandwidth update-delay 5
# neighbor peer1 fall-over bfd
# neighbor peer1 monitoring
# neighbor peer1 send-community extended link-bandwidth aggregate 600
# neighbor peer1 maximum-routes 12000
# neighbor 10.1.3.2 export-localpref 4000
# neighbor 10.1.3.2 next-hop-unchanged
# neighbor 10.1.3.2 dont-capability-negotiate
# neighbor 10.1.3.2 allowas-in 3
# neighbor 10.1.3.2 default-originate always
# neighbor 10.1.3.2 maximum-routes 500 warning-limit 5 percent
# aggregate-address 1.2.1.0/24 as-set match-map match01
# aggregate-address 5.2.1.0/24 attribute-map attrmatch01 advertise-only
# redistribute static route-map map_static
# redistribute attached-host
# !
# vlan 5
# !
# address-family ipv4
# neighbor 10.1.3.2 prefix-list prefix01 out
# !
# vrf vrf01
# route-target import 54:11
# neighbor 12.1.3.2 dont-capability-negotiate
# neighbor 12.1.3.2 allowas-in 3
# neighbor 12.1.3.2 default-originate always
# neighbor 12.1.3.2 maximum-routes 12000
# veos(config)#
- name: Purge configuration
arista.eos.eos_bgp_global:
config:
as_number: "100"
state: purged
# After State:
# veos(config)#show running-config | section bgp
# veos(config)#
# Module Execution:
# "after": {},
# "before": {
# "aggregate_address": [
# {
# "address": "1.2.1.0/24",
# "as_set": true,
# "match_map": "match01"
# },
# {
# "address": "5.2.1.0/24",
# "advertise_only": true,
# "attribute_map": "attrmatch01"
# }
# ],
# "as_number": "100",
# "bgp_params": {
# "additional_paths": "send",
# "convergence": {
# "slow_peer": true,
# "time": 6
# }
# },
# "distance": {
# "external": 50,
# "internal": 50,
# "local": 50
# },
# "maximum_paths": {
# "max_equal_cost_paths": 55
# },
# "neighbor": [
# {
# "fall_over": true,
# "link_bandwidth": {
# "set": true,
# "update_delay": 5
# },
# "maximum_received_routes": {
# "count": 12000
# },
# "monitoring": true,
# "peer": "peer1",
# "peer_group": "peer1",
# "send_community": {
# "community_attribute": "extended",
# "link_bandwidth_attribute": "aggregate",
# "speed": "600",
# "sub_attribute": "link-bandwidth"
# }
# },
# {
# "allowas_in": {
# "count": 3
# },
# "default_originate": {
# "always": true
# },
# "dont_capability_negotiate": true,
# "export_localpref": 4000,
# "maximum_received_routes": {
# "count": 500,
# "warning_limit": {
# "limit_percent": 5
# }
# },
# "next_hop_unchanged": true,
# "peer": "10.1.3.2"
# }
# ],
# "redistribute": [
# {
# "protocol": "static",
# "route_map": "map_static"
# },
# {
# "protocol": "attached-host"
# }
# ],
# "vlan": 5,
# "vrfs": [
# {
# "neighbor": [
# {
# "allowas_in": {
# "count": 3
# },
# "default_originate": {
# "always": true
# },
# "dont_capability_negotiate": true,
# "maximum_received_routes": {
# "count": 12000
# },
# "peer": "12.1.3.2"
# }
# ],
# "route_target": {
# "action": "import",
# "target": "54:11"
# },
# "vrf": "vrf01"
# }
# ]
# },
# "changed": true,
# "commands": [
# "no router bgp 100"
# ],
Authors
Gomathi Selvi Srinivasan (@GomathiselviS)