On this page
arista.eos.eos_ospfv2 – OSPFv2 resource module
Note
This plugin is part of the arista.eos collection (version 2.2.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_ospfv2
.
New in version 1.0.0: of arista.eos
Synopsis
- This module configures and manages the attributes of ospfv2 on Arista EOS platforms.
Note
This module has a corresponding action plugin.
Parameters
Parameter | Choices/Defaults | Comments | ||||||
---|---|---|---|---|---|---|---|---|
config
dictionary
|
A list of configurations for ospfv2.
|
|||||||
processes
list / elements=dictionary
|
A list of dictionary specifying the ospfv2 processes.
|
|||||||
adjacency
dictionary
|
Configure adjacency options for OSPF instance.
|
|||||||
exchange_start
dictionary
|
Configure exchange-start options for OSPF instance.
|
|||||||
threshold
integer
|
Number of peers to bring up simultaneously.
|
|||||||
areas
list / elements=dictionary
|
Specifies the configuration for OSPF areas
|
|||||||
area_id
string
|
Specifies a 32 bit number expressed in decimal or dotted-decimal notation.
|
|||||||
default_cost
integer
|
Specify the cost for default summary route in stub/NSSA area.
|
|||||||
filter
dictionary
|
Specify the filter for incoming summary LSAs.
|
|||||||
address
string
|
IP address.
|
|||||||
prefix_list
string
|
Specify list to filter for incoming LSAs.
|
|||||||
subnet_address
string
|
IP address with mask length
|
|||||||
subnet_mask
string
|
IP subnet mask
|
|||||||
not_so_stubby
dictionary
|
Configures NSSA parameters.
|
|||||||
default_information_originate
dictionary
|
Originate default Type 7 LSA.
|
|||||||
metric
integer
|
Metric for default route.
|
|||||||
metric_type
integer
|
Metric type for default route.
|
|||||||
nssa_only
boolean
|
|
Limit default advertisement to this NSSA area.
|
||||||
lsa
boolean
|
|
lsa parameters
|
||||||
no_summary
boolean
|
|
Filter all type-3 LSAs in the nssa area.
|
||||||
nssa_only
boolean
|
|
Disable Type-7 LSA p-bit setting
|
||||||
set
boolean
|
|
Set config up to not-so-stubby
|
||||||
nssa
dictionary
|
Configures NSSA parameters.
|
|||||||
default_information_originate
dictionary
|
Originate default Type 7 LSA.
|
|||||||
metric
integer
|
Metric for default route.
|
|||||||
metric_type
integer
|
Metric type for default route.
|
|||||||
nssa_only
boolean
|
|
Limit default advertisement to this NSSA area.
|
||||||
no_summary
boolean
|
|
Filter all type-3 LSAs in the nssa area.
|
||||||
nssa_only
boolean
|
|
Disable Type-7 LSA p-bit setting
|
||||||
set
boolean
|
|
Set config up to nssa
|
||||||
range
dictionary
|
Configure route summarization.
|
|||||||
address
string
|
IP address.
|
|||||||
advertise
boolean
|
|
Enable Advertisement of the range.
|
||||||
cost
integer
|
Configures the metric.
|
|||||||
subnet_address
string
|
IP address with mask length
|
|||||||
subnet_mask
string
|
IP subnet mask
|
|||||||
stub
dictionary
|
Stub area.
|
|||||||
no_summary
boolean
|
|
If False , Filter all type-3 LSAs in the stub area.
|
||||||
set
boolean
|
|
When true sets the stub config alone.
|
||||||
auto_cost
dictionary
|
Set auto-cost.
|
|||||||
reference_bandwidth
integer
|
reference bandwidth in megabits per sec.
|
|||||||
bfd
dictionary
|
Enable BFD.
|
|||||||
all_interfaces
boolean
|
|
Enable BFD on all interfaces.
|
||||||
default_information
dictionary
|
Control distribution of default information.
|
|||||||
always
boolean
|
|
Always advertise default route.
|
||||||
metric
integer
|
Metric for default route.
|
|||||||
metric_type
integer
|
Metric type for default route.
|
|||||||
originate
boolean
|
|
Distribute a default route.
|
||||||
route_map
string
|
Specify which route-map to use.
|
|||||||
default_metric
integer
|
Configure the default metric for redistributed routes
|
|||||||
distance
dictionary
|
Specifies the administrative distance for routes.
|
|||||||
external
integer
|
Routes external to the area
|
|||||||
inter_area
integer
|
Routes from other areas
|
|||||||
intra_area
integer
|
Routes with in an area
|
|||||||
distribute_list
dictionary
|
Specifies the list of routes to be filtered.
|
|||||||
prefix_list
string
|
prefix list to be filtered
|
|||||||
route_map
string
|
route map to be filtered
|
|||||||
dn_bit_ignore
boolean
|
|
If True, Disable dn-bit check for Type-3 LSAs in non-default VRFs.
|
||||||
fips_restrictions
string
|
Use FIPS compliant algorithms
|
|||||||
graceful_restart
dictionary
|
Enable graceful restart mode.
|
|||||||
grace_period
integer
|
Specify maximum time to wait for graceful-restart to complete.
|
|||||||
set
boolean
|
|
When true sets the grace_fulrestart config alone.
|
||||||
graceful_restart_helper
boolean
|
|
If True, Enable graceful restart helper.
|
||||||
log_adjacency_changes
dictionary
|
To configure link-state changes and transitions of OSPFv2 neighbors.
|
|||||||
detail
boolean
|
|
If true , configures the switch to log all link-state changes.
|
||||||
max_lsa
dictionary
|
Specifies the switch behavior on reaching max lsa count.
|
|||||||
count
integer
|
maximum count of lsas.
|
|||||||
ignore_count
integer
|
No. of times the switch can shut down temporarily on warning
|
|||||||
ignore_time
integer
|
time in minutes, for which the switch shoud be shutdown on max-lsa warning
|
|||||||
reset_time
integer
|
Time in minutes, after which the shutdown counter resets.
|
|||||||
threshold
integer
|
percentage of <count> , when a warning should be raised.
|
|||||||
warning
boolean
|
|
Only give warning message when limit is exceeded
|
||||||
max_metric
dictionary
|
Set maximum metric.
|
|||||||
router_lsa
dictionary
|
Maximum metric in self-originated router-LSAs.
|
|||||||
external_lsa
dictionary
|
Override external-lsa metric with max-metric value.
|
|||||||
max_metric_value
integer
|
Set max metric value for external LSAs.
|
|||||||
set
boolean
|
|
Set external-lsa attribute.
|
||||||
include_stub
boolean
|
|
Set maximum metric for stub links in router-LSAs.
|
||||||
on_startup
dictionary
|
Set maximum metric temporarily after reboot.
|
|||||||
wait_period
integer
|
Wait period in seconds after startup.
|
|||||||
set
boolean
|
|
Set router-lsa attribute.
|
||||||
summary_lsa
dictionary
|
Override summary-lsa metric with max-metric value.
|
|||||||
max_metric_value
integer
|
Set max metric value for external LSAs.
|
|||||||
set
boolean
|
|
Set external-lsa attribute.
|
||||||
maximum_paths
integer
|
Maximum number of next-hops in an ECMP route.
|
|||||||
mpls_ldp
boolean
|
|
mpls ldp sync configuration.
|
||||||
networks
list / elements=dictionary
|
Configure routing for a network.
|
|||||||
area
string
|
Configure OSPF area.
|
|||||||
mask
string
|
Network Wildcard Mask.
|
|||||||
network_address
string
|
Network Address.
|
|||||||
prefix
string
|
Prefix.
|
|||||||
passive_interface
dictionary
|
Include interface but without actively running OSPF.
|
|||||||
default
boolean
|
|
If True, Set all interfaces to passive by default
|
||||||
interface_list
string
|
Interface range.
|
|||||||
point_to_point
boolean
|
|
Configure Point-to-point specific features.
|
||||||
process_id
integer
|
ID of OSPFV2 process.
|
|||||||
redistribute
list / elements=dictionary
|
Specifies the routes to be redistributed
|
|||||||
isis_level
string
|
ISIS levels.
|
|||||||
route_map
string
|
Specify which route map to use.
|
|||||||
routes
string
|
Route types (BGP,isis,connected etc)
|
|||||||
retransmission_threshold
integer
|
Configure threshold for retransmission.
|
|||||||
rfc1583compatibility
boolean
|
|
Specifies different methods for calculating summary route metrics.
|
||||||
router_id
string
|
32-bit number assigned to a router running OSPFv2.
|
|||||||
shutdown
boolean
|
|
Disable the OSPF instance.
|
||||||
summary_address
dictionary
|
Summary route configuration.
|
|||||||
address
string
|
IP summary address.
|
|||||||
attribute_map
string
|
Set attributes of summary route.
|
|||||||
mask
string
|
Summary Mask.
|
|||||||
not_advertise
boolean
|
|
Do not advertise summary route.
|
||||||
prefix
string
|
Prefix.
|
|||||||
tag
integer
|
Set tag.
|
|||||||
timers
list / elements=dictionary
|
Configure OSPF timers.
|
|||||||
lsa
dictionary
|
Configure OSPF LSA timers.
|
|||||||
rx
dictionary
|
Configure OSPF LSA receiving timers
|
|||||||
min_interval
integer
|
Configure OSPF LSA arrival timer.
|
|||||||
tx
dictionary
|
Configure OSPF LSA transmission timers.
|
|||||||
delay
dictionary
|
Configure OSPF LSA transmission delay.
|
|||||||
initial
integer
|
Delay to generate first occurrence of LSA in msecs.
|
|||||||
max
integer
|
Maximum delay between originating the same LSA in msecs.
|
|||||||
min
integer
|
Min delay between originating the same LSA in msecs.
|
|||||||
out_delay
integer
|
Configure out-delay timer.
|
|||||||
pacing
integer
|
Configure OSPF packet pacing.
|
|||||||
spf
dictionary
|
Configure SPF timers
|
|||||||
initial
integer
|
Initial SPF schedule delay in msecs.
|
|||||||
max
integer
|
Max wait time between two SPFs in msecs.
|
|||||||
min
integer
|
Min Hold time between two SPFs in msecs
|
|||||||
seconds
integer
|
Seconds.
|
|||||||
throttle
dictionary
|
Configure throttle timers(valid only for eos version < 4.23).
|
|||||||
attr
string
|
throttle attribute.
|
|||||||
initial
integer
|
Initial schedule delay in msecs.
|
|||||||
max
integer
|
Max wait time
|
|||||||
min
integer
|
Min Hold time
|
|||||||
traffic_engineering
boolean
|
|
Enter traffic engineering config mode
|
||||||
vrf
string
|
VRF name .
|
|||||||
running_config
string
|
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 ospf.
The state parsed reads the configuration from running_config option and transforms it into Ansible structured data as per the resource module's argspec and the value is then returned in the parsed key within the result.
|
|||||||
state
string
|
|
The state the configuration should be left in.
|
Notes
Note
- Tested against Arista EOS 4.23.0F
- This module works with connection
network_cli
. See the EOS Platform Options.
Examples
# Using merged
# Before state:
# ------------
# localhost#show running-config | section ospf
# localhost#
- name: replace Ospf configs
arista.eos.eos_ospfv2:
config:
- processes:
- process_id: 1
adjacency:
exchange_start:
threshold: 20045623
areas:
- filter:
address: "10.1.1.0/24"
id: "0.0.0.2"
- id: "0.0.0.50"
range:
address: "172.20.0.0/16"
cost: 34
default_information:
metric: 100
metric_type: 1
originate: True
distance:
intra_area: 85
max_lsa:
count: 8000
ignore_count: 3
ignore_time: 6
reset_time: 20
threshold: 40
networks:
- area: "0.0.0.0"
prefix: 10.10.2.0/24
- area: "0.0.0.0"
prefix: "10.10.3.0/24"
redistribute:
- routes: "static"
router_id: "170.21.0.4"
- process_id: 2
vrf: "vrf01"
areas:
- id: "0.0.0.9"
default_cost: 20
max_lsa:
count: 8000
ignore_count: 3
ignore_time: 6
reset_time: 20
threshold: 40
networks:
- area: "0.0.0.0"
prefix: 10.10.2.0/24
- area: "0.0.0.0"
prefix: "10.10.3.0/24"
redistribute:
- routes: "static"
router_id: "170.21.0.4"
- process_id: 2
vrf: "vrf01"
areas:
- id: "0.0.0.9"
default_cost: 20
max_lsa:
count: 8000
ignore_count: 3
ignore_time: 6
reset_time: 20
threshold: 40
- process_id: 3
vrf: "vrf02"
redistribute:
- routes: "connected"
# After state:
# localhost#show running-config | section ospf
# router ospf 1
# router-id 170.21.0.4
# distance ospf intra-area 85
# redistribute static
# area 0.0.0.2 filter 10.1.1.0/24
# area 0.0.0.50 range 172.20.0.0/16 cost 34
# network 10.10.2.0/24 area 0.0.0.0
# network 10.10.3.0/24 area 0.0.0.0
# max-lsa 8000 40 ignore-time 6 ignore-count 3 reset-time 20
# adjacency exchange-start threshold 20045623
# default-information originate metric 100 metric-type 1
#
# router ospf 2 vrf vrf01
# area 0.0.0.9 default-cost 20
# max-lsa 8000 40 ignore-time 6 ignore-count 3 reset-time 20
# !
# router ospf 3 vrf vrf02
# redistribute connected
# max-lsa 12000
# localhost#
#
# "processes": [
# {
# "adjacency": {
# "exchange_start": {
# "threshold": 20045623
# }
# },
# "areas": [
# {
# "filter": {
# "address": "10.1.1.0/24"
# },
# "id": "0.0.0.2"
# },
# {
# "id": "0.0.0.50",
# "range": {
# "address": "172.20.0.0/16",
# "cost": 34
# }
# }
# ],
# "default_information": {
# "metric": 100,
# "metric_type": 1,
# "originate": true
# },
# "distance": {
# "intra_area": 85
# },
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "networks": [
# {
# "area": "0.0.0.0",
# "prefix": "10.10.2.0/24"
# },
# {
# "area": "0.0.0.0",
# "prefix": "10.10.3.0/24"
# }
# ],
# "process_id": 1,
# "redistribute": [
# {
# "routes": "static"
# }
# ],
# "router_id": "170.21.0.4"
# },
# {
# "areas": [
# {
# "default_cost": 20,
# "id": "0.0.0.9"
# }
# ],
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "process_id": 2,
# "vrf": "vrf01"
# },
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 3,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf02"
# }
# ]
# }
# ]
#
# Using replaced:
# --------------
# Before State:
# localhost#show running-config | section ospf
# router ospf 1
# router-id 170.21.0.4
# distance ospf intra-area 85
# redistribute static
# area 0.0.0.2 filter 10.1.1.0/24
# area 0.0.0.50 range 172.20.0.0/16 cost 34
# network 10.10.2.0/24 area 0.0.0.0
# network 10.10.3.0/24 area 0.0.0.0
# max-lsa 8000 40 ignore-time 6 ignore-count 3 reset-time 20
# adjacency exchange-start threshold 20045623
# default-information originate metric 100 metric-type 1
# !
# router ospf 2 vrf vrf01
# area 0.0.0.9 default-cost 20
# max-lsa 8000 40 ignore-time 6 ignore-count 3 reset-time 20
# !
# router ospf 3 vrf vrf02
# redistribute connected
# max-lsa 12000
# localhost#
#
# "before": [
# {
# "processes": [
# {
# "adjacency": {
# "exchange_start": {
# "threshold": 20045623
# }
# },
# "areas": [
# {
# "filter": {
# "address": "10.1.1.0/24"
# },
# "id": "0.0.0.2"
# },
# {
# "id": "0.0.0.50",
# "range": {
# "address": "172.20.0.0/16",
# "cost": 34
# }
# }
# ],
# "default_information": {
# "metric": 100,
# "metric_type": 1,
# "originate": true
# },
# "distance": {
# "intra_area": 85
# },
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "networks": [
# {
# "area": "0.0.0.0",
# "prefix": "10.10.2.0/24"
# },
# {
# "area": "0.0.0.0",
# "prefix": "10.10.3.0/24"
# }
# ],
# "process_id": 1,
# "redistribute": [
# {
# "routes": "static"
# }
# ],
# "router_id": "170.21.0.4"
# },
# {
# "areas": [
# {
# "default_cost": 20,
# "id": "0.0.0.9"
# }
# ],
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "process_id": 2,
# "vrf": "vrf01"
# },
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 3,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf02"
# }
# ]
# }
# ]
#
- name: replace Ospf configs
arista.eos.eos_ospfv2:
config:
- processes:
- process_id: 2
vrf: "vrf01"
point_to_point: True
redistribute:
- routes: "isis"
isis_level: "level-1"
state: replaced
# After State:
# -----------
# "router ospf 2 vrf vrf01",
# "no area 0.0.0.9 default-cost 20",
# "no max-lsa 8000 40 ignore-time 6 ignore-count 3 reset-time 20",
# "point-to-point routes",
# "redistribute isis level-1"
#
# "after": [
# {
# "processes": [
# {
# "adjacency": {
# "exchange_start": {
# "threshold": 20045623
# }
# },
# "areas": [
# {
# "filter": {
# "address": "10.1.1.0/24"
# },
# "id": "0.0.0.2"
# },
# {
# "id": "0.0.0.50",
# "range": {
# "address": "172.20.0.0/16",
# "cost": 34
# }
# }
# ],
# "default_information": {
# "metric": 100,
# "metric_type": 1,
# "originate": true
# },
# "distance": {
# "intra_area": 85
# },
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "networks": [
# {
# "area": "0.0.0.0",
# "prefix": "10.10.2.0/24"
# },
# {
# "area": "0.0.0.0",
# "prefix": "10.10.3.0/24"
# }
# ],
# "process_id": 1,
# "redistribute": [
# {
# "routes": "static"
# }
# ],
# "router_id": "170.21.0.4"
# },
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 2,
# "redistribute": [
# {
# "isis_level": "level-1",
# "routes": "isis"
# }
# ],
# "vrf": "vrf01"
# },
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 3,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf02"
# }
# ]
# }
# ]
#
# Using overridden:
# ----------------
# Before State:
# localhost#show running-config | section ospf
# router ospf 1
# router-id 170.21.0.4
# distance ospf intra-area 85
# redistribute static
# area 0.0.0.2 filter 10.1.1.0/24
# area 0.0.0.50 range 172.20.0.0/16 cost 34
# network 10.10.2.0/24 area 0.0.0.0
# network 10.10.3.0/24 area 0.0.0.0
# max-lsa 8000 40 ignore-time 6 ignore-count 3 reset-time 20
# adjacency exchange-start threshold 20045623
# default-information originate metric 100 metric-type 1
# !
# router ospf 2 vrf vrf01
# redistribute isis level-1
# max-lsa 12000
# !
# router ospf 3 vrf vrf02
# redistribute connected
# max-lsa 12000
# localhost#
#
# "before": [
# {
# "processes": [
# {
# "adjacency": {
# "exchange_start": {
# "threshold": 20045623
# }
# },
# "areas": [
# {
# "filter": {
# "address": "10.1.1.0/24"
# },
# "id": "0.0.0.2"
# },
# {
# "id": "0.0.0.50",
# "range": {
# "address": "172.20.0.0/16",
# "cost": 34
# }
# }
# ],
# "default_information": {
# "metric": 100,
# "metric_type": 1,
# "originate": true
# },
# "distance": {
# "intra_area": 85
# },
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "networks": [
# {
# "area": "0.0.0.0",
# "prefix": "10.10.2.0/24"
# },
# {
# "area": "0.0.0.0",
# "prefix": "10.10.3.0/24"
# }
# ],
# "process_id": 1,
# "redistribute": [
# {
# "routes": "static"
# }
# ],
# "router_id": "170.21.0.4"
# },
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 2,
# "redistribute": [
# {
# "isis_level": "level-1",
# "routes": "isis"
# }
# ],
# "vrf": "vrf01"
# },
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 3,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf02"
# }
# ]
# }
# ]
- name: override Ospf configs
arista.eos.eos_ospfv2:
config:
- processes:
- process_id: 2
vrf: "vrf01"
redistribute:
- routes: "connected"
state: override
# After State:
# "no router ospf 1",
# "no router ospf 3",
# "router ospf 2 vrf vrf01",
# "no max-lsa 12000",
# "no redistribute isis level-1",
# "redistribute connected"
#
# "after": [
# {
# "processes": [
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 2,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf01"
# }
# ]
# }
# ]
# Using Deleted:
# localhost#show running-config | section ospf
# router ospf 1
# router-id 170.21.0.4
# distance ospf intra-area 85
# redistribute static
# area 0.0.0.2 filter 10.1.1.0/24
# area 0.0.0.50 range 172.20.0.0/16 cost 34
# network 10.10.2.0/24 area 0.0.0.0
# network 10.10.3.0/24 area 0.0.0.0
# max-lsa 8000 40 ignore-time 6 ignore-count 3 reset-time 20
# adjacency exchange-start threshold 20045623
# default-information originate metric 100 metric-type 1
# !
# router ospf 2 vrf vrf01
# redistribute connected
# area 0.0.0.9 default-cost 20
# max-lsa 8000 40 ignore-time 6 ignore-count 3 reset-time 20
# !
# router ospf 3 vrf vrf02
# redistribute connected
# max-lsa 12000
# localhost#
#
# "before": [
# {
# "processes": [
# {
# "adjacency": {
# "exchange_start": {
# "threshold": 20045623
# }
# },
# "areas": [
# {
# "filter": {
# "address": "10.1.1.0/24"
# },
# "id": "0.0.0.2"
# },
# {
# "id": "0.0.0.50",
# "range": {
# "address": "172.20.0.0/16",
# "cost": 34
# }
# }
# ],
# "default_information": {
# "metric": 100,
# "metric_type": 1,
# "originate": true
# },
# "distance": {
# "intra_area": 85
# },
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "networks": [
# {
# "area": "0.0.0.0",
# "prefix": "10.10.2.0/24"
# },
# {
# "area": "0.0.0.0",
# "prefix": "10.10.3.0/24"
# }
# ],
# "process_id": 1,
# "redistribute": [
# {
# "routes": "static"
# }
# ],
# "router_id": "170.21.0.4"
# },
# {
# "areas": [
# {
# "default_cost": 20,
# "id": "0.0.0.9"
# }
# ],
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "process_id": 2,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf01"
# },
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 3,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf02"
# }
# ]
# }
# ]
- name: Delete Ospf configs
arista.eos.eos_ospfv2:
config:
- processes:
- process_id: 1
state: deleted
# After State:
# Commands:
# "no router ospf 1"
# "after": [
# {
# "processes": [
# {
# "areas": [
# {
# "default_cost": 20,
# "id": "0.0.0.9"
# }
# ],
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "process_id": 2,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf01"
# },
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 3,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf02"
# }
# ]
# }
# ]
# Using gathered:
# localhost#show running-config | section ospf
# router ospf 2 vrf vrf01
# redistribute connected
# area 0.0.0.9 default-cost 20
# max-lsa 8000 40 ignore-time 6 ignore-count 3 reset-time 20
# !
# router ospf 3 vrf vrf02
# redistribute connected
# max-lsa 12000
# localhost#
- name: replace Ospf configs
arista.eos.eos_ospfv2:
state: gathered
# "gathered": [
# {
# "processes": [
# {
# "areas": [
# {
# "default_cost": 20,
# "id": "0.0.0.9"
# }
# ],
# "max_lsa": {
# "count": 8000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "process_id": 2,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf01"
# },
# {
# "max_lsa": {
# "count": 12000
# },
# "process_id": 3,
# "redistribute": [
# {
# "routes": "connected"
# }
# ],
# "vrf": "vrf02"
# }
# ]
# }
# ]
# Using parsed:
# ------------
# parsed.cfg
# router ospf 1
# adjacency exchange-start threshold 20045623
# area 0.0.0.2 filter 10.1.1.0/24
# area 0.0.0.50 range 172.20.0.0/16 cost 34
# default-information originate metric 100 metric-type 1
# distance ospf intra-area 85
# max-lsa 80000 40 ignore-count 3 ignore-time 6 reset-time 20
# network 10.10.2.0/24 area 0.0.0.0
# network 10.10.3.0/24 area 0.0.0.0
# redistribute static
# router-id 170.21.0.4
# router ospf 2 vrf vrf01,
# area 0.0.0.9 default-cost 20
# max-lsa 80000 40 ignore-count 3 ignore-time 6 reset-time 20
# router ospf 3 vrf vrf02
# redistribute static
- name: Parse Ospf configs
arista.eos.eos_ospfv2:
running_config: "{{ lookup('file', './parsed.cfg') }}"
state: parsed
# "parsed": [
# {
# "processes": [
# {
# "adjacency": {
# "exchange_start": {
# "threshold": 20045623
# }
# },
# "areas": [
# {
# "filter": {
# "address": "10.1.1.0/24"
# },
# "id": "0.0.0.2"
# },
# {
# "id": "0.0.0.50",
# "range": {
# "address": "172.20.0.0/16",
# "cost": 34
# }
# }
# ],
# "default_information": {
# "metric": 100,
# "metric_type": 1,
# "originate": true
# },
# "distance": {
# "intra_area": 85
# },
# "max_lsa": {
# "count": 80000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "networks": [
# {
# "area": "0.0.0.0",
# "prefix": "10.10.2.0/24"
# },
# {
# "area": "0.0.0.0",
# "prefix": "10.10.3.0/24"
# }
# ],
# "process_id": 1,
# "redistribute": [
# {
# "routes": "static"
# }
# ],
# "router_id": "170.21.0.4"
# },
# {
# "areas": [
# {
# "default_cost": 20,
# "id": "0.0.0.9"
# }
# ],
# "max_lsa": {
# "count": 80000,
# "ignore_count": 3,
# "ignore_time": 6,
# "reset_time": 20,
# "threshold": 40
# },
# "process_id": 2,
# "vrf": "vrf01,"
# },
# {
# "process_id": 3,
# "redistribute": [
# {
# "routes": "static"
# }
# ],
# "vrf": "vrf02"
# }
# ]
# }
# ]
# Using rendered:
# --------------
- name: replace Ospf configs
arista.eos.eos_ospfv2:
config:
- processes:
- process_id: 1
adjacency:
exchange_start:
threshold: 20045623
areas:
- filter:
address: 10.1.1.0/24
id: 0.0.0.2
- id: 0.0.0.50
range:
address: 172.20.0.0/16
cost: 34
default_information:
metric: 100
metric_type: 1
originate: true
distance:
intra_area: 85
max_lsa:
count: 8000
ignore_count: 3
ignore_time: 6
reset_time: 20
threshold: 40
networks:
- area: 0.0.0.0
prefix: 10.10.2.0/24
- area: 0.0.0.0
prefix: 10.10.3.0/24
redistribute:
- routes: static
router_id: 170.21.0.4
state: rendered
# "rendered": [
# "router ospf 1",
# "adjacency exchange-start threshold 20045623",
# "area 0.0.0.2 filter 10.1.1.0/24",
# "area 0.0.0.50 range 172.20.0.0/16 cost 34",
# "default-information originate metric 100 metric-type 1",
# "distance ospf intra-area 85",
# "max-lsa 8000 40 ignore-count 3 ignore-time 6 reset-time 20",
# "network 10.10.2.0/24 area 0.0.0.0",
# "network 10.10.3.0/24 area 0.0.0.0",
# "redistribute static",
# "router-id 170.21.0.4"
# ]
#
Return Values
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 will always be in the same format of the parameters above.
|
before
list / elements=string
|
always |
The configuration prior to the model invocation.
Sample:
The configuration returned will always be in the same format of the parameters above.
|
commands
list / elements=string
|
always |
The set of commands pushed to the remote device.
Sample:
['router ospf 1', 'adjacency exchange-start threshold 20045623', 'area 0.0.0.2 filter 10.1.1.0/24', 'area 0.0.0.50 range 172.20.0.0/16 cost 34', 'default-information originate metric 100 metric-type 1', 'distance ospf intra-area 85', 'max-lsa 8000 40 ignore-count 3 ignore-time 6 reset-time 20', 'network 10.10.2.0/24 area 0.0.0.0', 'network 10.10.3.0/24 area 0.0.0.0', 'redistribute static', 'router-id 170.21.0.4']
|
Authors
- Gomathi Selvi Srinivasan (@GomathiselviS)
© 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/arista/eos/eos_ospfv2_module.html