cisco.nxos.nxos_ospfv2 – OSPFv2 resource module
cisco.nxos.nxos_ospfv2 – OSPFv2 resource module
Note
This plugin is part of the cisco.nxos collection (version 1.4.0).
To install it use: ansible-galaxy collection install cisco.nxos
.
To use it in a playbook, specify: cisco.nxos.nxos_ospfv2
.
New in version 1.0.0: of cisco.nxos
Synopsis
- This module manages OSPFv2 configuration on devices running Cisco NX-OS.
Parameters
Parameter | Choices/Defaults | Comments | |||||||
---|---|---|---|---|---|---|---|---|---|
config dictionary |
A list of OSPF process configuration. | ||||||||
processes list / elements=dictionary |
A list of OSPF instances' configurations. | ||||||||
areas list / elements=dictionary |
Configure properties of OSPF Areas. | ||||||||
area_id string / required |
The Area ID as an integer or IP Address. | ||||||||
authentication dictionary |
Authentication settings for the Area. | ||||||||
message_digest boolean |
|
Use message-digest authentication. | |||||||
set boolean |
|
Set authentication for the area. | |||||||
default_cost integer |
Specify the default cost for default summary LSA. | ||||||||
filter_list list / elements=dictionary |
Filter prefixes between OSPF areas. | ||||||||
direction string / required |
|
The direction to apply the route map. | |||||||
route_map string / required |
The Route-map name. | ||||||||
nssa dictionary |
NSSA settings for the area. | ||||||||
default_information_originate boolean |
|
Originate Type-7 default LSA into NSSA area. | |||||||
no_redistribution boolean |
|
Do not send redistributed LSAs into NSSA area. | |||||||
no_summary boolean |
|
Do not send summary LSAs into NSSA area. | |||||||
set boolean |
|
Configure area as NSSA. | |||||||
translate dictionary |
Translate LSA. | ||||||||
type7 dictionary |
Translate from Type 7 to Type 5. | ||||||||
always boolean |
|
Always translate LSAs | |||||||
never boolean |
|
Never translate LSAs | |||||||
supress_fa boolean |
|
Suppress forwarding address in translated LSAs. | |||||||
ranges list / elements=dictionary |
Configure an address range for the area. | ||||||||
cost integer |
Cost to use for the range. | ||||||||
not_advertise boolean |
|
Suppress advertising the specified range. | |||||||
prefix string / required |
IP in Prefix format (x.x.x.x/len) | ||||||||
stub dictionary |
Settings for configuring the area as a stub. | ||||||||
no_summary boolean |
|
Prevent ABR from sending summary LSAs into stub area. | |||||||
set boolean |
|
Configure the area as a stub. | |||||||
auto_cost dictionary |
Calculate OSPF cost according to bandwidth. | ||||||||
reference_bandwidth integer / required |
Reference bandwidth used to assign OSPF cost. | ||||||||
unit string / required |
|
Specify in which unit the reference bandwidth is specified. | |||||||
bfd boolean |
|
Enable BFD on all OSPF interfaces. | |||||||
default_information dictionary |
Control distribution of default routes. | ||||||||
originate dictionary |
Distribute a default route. | ||||||||
always boolean |
|
Always advertise a default route. | |||||||
route_map string |
Policy to control distribution of default routes | ||||||||
set boolean |
|
Enable distribution of default route. | |||||||
default_metric integer |
Specify default metric for redistributed routes. | ||||||||
distance integer |
Configure the OSPF administrative distance. | ||||||||
flush_routes boolean |
|
Flush routes on a non-graceful controlled restart. | |||||||
graceful_restart dictionary |
Configure graceful restart. | ||||||||
grace_period integer |
Configure maximum interval to restart gracefully. | ||||||||
helper_disable boolean |
|
Enable/Disable helper mode. | |||||||
set boolean |
|
Enable graceful-restart. | |||||||
isolate boolean |
|
Isolate this router from OSPF perspective. | |||||||
log_adjacency_changes dictionary |
Log changes in adjacency state. | ||||||||
detail boolean |
|
Notify all state changes. | |||||||
log boolean |
|
Enable/disable logging changes in adjacency state. | |||||||
max_lsa dictionary |
Feature to limit the number of non-self-originated LSAs. | ||||||||
ignore_count integer |
Set count on how many times adjacencies can be suppressed. | ||||||||
ignore_time integer |
Set time during which all adjacencies are suppressed. | ||||||||
max_non_self_generated_lsa integer / required |
Set the maximum number of non self-generated LSAs. | ||||||||
reset_time integer |
Set number of minutes after which ignore-count is reset to zero. | ||||||||
threshold integer |
Threshold value (%) at which to generate a warning message. | ||||||||
warning_only boolean |
|
Log a warning message when limit is exceeded. | |||||||
max_metric dictionary |
Maximize the cost metric. | ||||||||
router_lsa dictionary |
Router LSA configuration. | ||||||||
external_lsa dictionary |
External LSA configuration. | ||||||||
max_metric_value integer |
Set max metric value for external LSAs. | ||||||||
set boolean |
|
Set external-lsa attribute. | |||||||
include_stub boolean |
|
Advertise Max metric for Stub links as well. | |||||||
on_startup dictionary |
Effective only at startup. | ||||||||
set boolean |
|
Set on-startup attribute. | |||||||
wait_for_bgp_asn integer |
ASN of BGP to wait for. | ||||||||
wait_period integer |
Wait period in seconds after startup. | ||||||||
set boolean |
|
Set router-lsa attribute. | |||||||
summary_lsa dictionary |
Summary LSAs configuration. | ||||||||
max_metric_value integer |
Max metric value for summary LSAs. | ||||||||
set boolean |
|
Set summary-lsa attribute. | |||||||
maximum_paths integer |
Maximum paths per destination. | ||||||||
mpls dictionary |
OSPF MPLS configuration settings. | ||||||||
traffic_eng dictionary |
OSPF MPLS Traffic Engineering commands. | ||||||||
areas list / elements=dictionary |
List of Area IDs. | ||||||||
area_id string |
Area Id as an integer or ip address. | ||||||||
multicast_intact boolean |
|
MPLS TE multicast support. | |||||||
router_id string |
Router ID associated with TE. | ||||||||
name_lookup boolean |
|
Display OSPF router ids as DNS names. | |||||||
passive_interface dictionary |
Suppress routing updates on the interface. | ||||||||
default boolean |
|
Interfaces passive by default. | |||||||
process_id string / required |
The OSPF process tag. | ||||||||
redistribute list / elements=dictionary |
Redistribute information from another routing protocol. | ||||||||
id string |
The identifier for the protocol specified. | ||||||||
protocol string / required |
|
The name of the protocol. | |||||||
route_map string / required |
The route map policy to constrain redistribution. | ||||||||
rfc1583compatibility boolean |
|
Configure 1583 compatibility for external path preferences. | |||||||
router_id string |
Set OSPF process router-id. | ||||||||
shutdown boolean |
|
Shutdown the OSPF protocol instance. | |||||||
summary_address list / elements=dictionary |
Configure route summarization for redistribution. | ||||||||
not_advertise boolean |
|
Supress advertising the specified summary. | |||||||
prefix string / required |
IP prefix in format x.x.x.x/ml. | ||||||||
tag integer |
A 32-bit tag value. | ||||||||
table_map dictionary |
Policy for filtering/modifying OSPF routes before sending them to RIB. | ||||||||
filter boolean |
|
Block the OSPF routes from being sent to RIB. | |||||||
name string / required |
The Route Map name. | ||||||||
timers dictionary |
Configure timer related constants. | ||||||||
lsa_arrival integer |
Mimimum interval between arrival of a LSA. | ||||||||
lsa_group_pacing integer |
LSA group refresh/maxage interval. | ||||||||
throttle dictionary |
Configure throttle related constants. | ||||||||
lsa dictionary |
Set rate-limiting for LSA generation. | ||||||||
hold_interval integer |
The hold interval. | ||||||||
max_interval integer |
The max interval. | ||||||||
start_interval integer |
The start interval. | ||||||||
spf dictionary |
Set OSPF SPF timers. | ||||||||
initial_spf_delay integer |
Initial SPF schedule delay in milliseconds. | ||||||||
max_wait_time integer |
Maximum wait time between SPF calculations. | ||||||||
min_hold_time integer |
Minimum hold time between SPF calculations. | ||||||||
vrfs list / elements=dictionary |
Configure VRF specific OSPF settings. | ||||||||
areas list / elements=dictionary |
Configure properties of OSPF Areas. | ||||||||
area_id string / required |
The Area ID as an integer or IP Address. | ||||||||
authentication dictionary |
Authentication settings for the Area. | ||||||||
message_digest boolean |
|
Use message-digest authentication. | |||||||
set boolean |
|
Set authentication for the area. | |||||||
default_cost integer |
Specify the default cost for default summary LSA. | ||||||||
filter_list list / elements=dictionary |
Filter prefixes between OSPF areas. | ||||||||
direction string / required |
|
The direction to apply the route map. | |||||||
route_map string / required |
The Route-map name. | ||||||||
nssa dictionary |
NSSA settings for the area. | ||||||||
default_information_originate boolean |
|
Originate Type-7 default LSA into NSSA area. | |||||||
no_redistribution boolean |
|
Do not send redistributed LSAs into NSSA area. | |||||||
no_summary boolean |
|
Do not send summary LSAs into NSSA area. | |||||||
set boolean |
|
Configure area as NSSA. | |||||||
translate dictionary |
Translate LSA. | ||||||||
type7 dictionary |
Translate from Type 7 to Type 5. | ||||||||
always boolean |
|
Always translate LSAs | |||||||
never boolean |
|
Never translate LSAs | |||||||
supress_fa boolean |
|
Suppress forwarding address in translated LSAs. | |||||||
ranges list / elements=dictionary |
Configure an address range for the area. | ||||||||
cost integer |
Cost to use for the range. | ||||||||
not_advertise boolean |
|
Suppress advertising the specified range. | |||||||
prefix string / required |
IP in Prefix format (x.x.x.x/len) | ||||||||
stub dictionary |
Settings for configuring the area as a stub. | ||||||||
no_summary boolean |
|
Prevent ABR from sending summary LSAs into stub area. | |||||||
set boolean |
|
Configure the area as a stub. | |||||||
auto_cost dictionary |
Calculate OSPF cost according to bandwidth. | ||||||||
reference_bandwidth integer / required |
Reference bandwidth used to assign OSPF cost. | ||||||||
unit string / required |
|
Specify in which unit the reference bandwidth is specified. | |||||||
bfd boolean |
|
Enable BFD on all OSPF interfaces. | |||||||
capability dictionary |
OSPF capability settings. | ||||||||
vrf_lite dictionary |
Enable VRF-lite capability settings. | ||||||||
evpn boolean |
|
Ethernet VPN. | |||||||
set boolean |
|
Enable VRF-lite support. | |||||||
default_information dictionary |
Control distribution of default routes. | ||||||||
originate dictionary |
Distribute a default route. | ||||||||
always boolean |
|
Always advertise a default route. | |||||||
route_map string |
Policy to control distribution of default routes | ||||||||
set boolean |
|
Enable distribution of default route. | |||||||
default_metric integer |
Specify default metric for redistributed routes. | ||||||||
distance integer |
Configure the OSPF administrative distance. | ||||||||
down_bit_ignore boolean |
|
Configure a PE router to ignore the DN bit for network summary, external and NSSA external LSA. | |||||||
graceful_restart dictionary |
Configure graceful restart. | ||||||||
grace_period integer |
Configure maximum interval to restart gracefully. | ||||||||
helper_disable boolean |
|
Enable/Disable helper mode. | |||||||
set boolean |
|
Enable graceful-restart. | |||||||
log_adjacency_changes dictionary |
Log changes in adjacency state. | ||||||||
detail boolean |
|
Notify all state changes. | |||||||
log boolean |
|
Enable/disable logging changes in adjacency state. | |||||||
max_lsa dictionary |
Feature to limit the number of non-self-originated LSAs. | ||||||||
ignore_count integer |
Set count on how many times adjacencies can be suppressed. | ||||||||
ignore_time integer |
Set time during which all adjacencies are suppressed. | ||||||||
max_non_self_generated_lsa integer / required |
Set the maximum number of non self-generated LSAs. | ||||||||
reset_time integer |
Set number of minutes after which ignore-count is reset to zero. | ||||||||
threshold integer |
Threshold value (%) at which to generate a warning message. | ||||||||
warning_only boolean |
|
Log a warning message when limit is exceeded. | |||||||
max_metric dictionary |
Maximize the cost metric. | ||||||||
router_lsa dictionary |
Router LSA configuration. | ||||||||
external_lsa dictionary |
External LSA configuration. | ||||||||
max_metric_value integer |
Set max metric value for external LSAs. | ||||||||
set boolean |
|
Set external-lsa attribute. | |||||||
include_stub boolean |
|
Advertise Max metric for Stub links as well. | |||||||
on_startup dictionary |
Effective only at startup. | ||||||||
set boolean |
|
Set on-startup attribute. | |||||||
wait_for_bgp_asn integer |
ASN of BGP to wait for. | ||||||||
wait_period integer |
Wait period in seconds after startup. | ||||||||
set boolean |
|
Set router-lsa attribute. | |||||||
summary_lsa dictionary |
Summary LSAs configuration. | ||||||||
max_metric_value integer |
Max metric value for summary LSAs. | ||||||||
set boolean |
|
Set summary-lsa attribute. | |||||||
maximum_paths integer |
Maximum paths per destination. | ||||||||
name_lookup boolean |
|
Display OSPF router ids as DNS names. | |||||||
passive_interface dictionary |
Suppress routing updates on the interface. | ||||||||
default boolean |
|
Interfaces passive by default. | |||||||
redistribute list / elements=dictionary |
Redistribute information from another routing protocol. | ||||||||
id string |
The identifier for the protocol specified. | ||||||||
protocol string / required |
|
The name of the protocol. | |||||||
route_map string / required |
The route map policy to constrain redistribution. | ||||||||
rfc1583compatibility boolean |
|
Configure 1583 compatibility for external path preferences. | |||||||
router_id string |
Set OSPF process router-id. | ||||||||
shutdown boolean |
|
Shutdown the OSPF protocol instance. | |||||||
summary_address list / elements=dictionary |
Configure route summarization for redistribution. | ||||||||
not_advertise boolean |
|
Supress advertising the specified summary. | |||||||
prefix string / required |
IP prefix in format x.x.x.x/ml. | ||||||||
tag integer |
A 32-bit tag value. | ||||||||
table_map dictionary |
Policy for filtering/modifying OSPF routes before sending them to RIB. | ||||||||
filter boolean |
|
Block the OSPF routes from being sent to RIB. | |||||||
name string / required |
The Route Map name. | ||||||||
timers dictionary |
Configure timer related constants. | ||||||||
lsa_arrival integer |
Mimimum interval between arrival of a LSA. | ||||||||
lsa_group_pacing integer |
LSA group refresh/maxage interval. | ||||||||
throttle dictionary |
Configure throttle related constants. | ||||||||
lsa dictionary |
Set rate-limiting for LSA generation. | ||||||||
hold_interval integer |
The hold interval. | ||||||||
max_interval integer |
The max interval. | ||||||||
start_interval integer |
The start interval. | ||||||||
spf dictionary |
Set OSPF SPF timers. | ||||||||
initial_spf_delay integer |
Initial SPF schedule delay in milliseconds. | ||||||||
max_wait_time integer |
Maximum wait time between SPF calculations. | ||||||||
min_hold_time integer |
Minimum hold time between SPF calculations. | ||||||||
vrf string / required |
Name/Identifier of the VRF. | ||||||||
running_config string |
This option is used only with state parsed. The value of this option should be the output received from the NX-OS device by executing the command show running-config | section "^router ospf .*". The state parsed reads the configuration from | ||||||||
state string |
|
The state the configuration should be left in. |
Notes
Note
- Tested against NX-OS 7.0(3)I5(1).
- This module works with connection
network_cli
andhttpapi
.
Examples
# Using merged
# Before state:
# -------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# nxos-9k-rdo#
- name: Merge the provided configuration with the exisiting running configuration
cisco.nxos.nxos_ospfv2:
config:
processes:
- process_id: 100
router_id: 203.0.113.20
- process_id: 102
router_id: 198.51.100.1
areas:
- area_id: 0.0.0.100
filter_list:
- route_map: rmap_1
direction: in
- route_map: rmap_2
direction: out
ranges:
- prefix: 198.51.100.64/27
not_advertise: true
- prefix: 198.51.100.96/27
cost: 120
- area_id: 0.0.0.101
authentication:
message_digest: true
redistribute:
- protocol: eigrp
id: 120
route_map: rmap_1
- protocol: direct
route_map: ospf102-direct-connect
vrfs:
- vrf: zone1
router_id: 198.51.100.129
redistribute:
- protocol: static
route_map: zone1-static-connect
summary_address:
- prefix: 198.51.100.128/27
tag: 121
- prefix: 198.51.100.160/27
areas:
- area_id: 0.0.0.102
nssa:
default_information_originate: true
no_summary: true
- area_id: 0.0.0.103
nssa:
no_summary: true
translate:
type7:
always: true
- vrf: zone2
auto_cost:
reference_bandwidth: 45
unit: Gbps
state: merged
# Task output
# -------------
# before: {}
#
# commands:
# - router ospf 102
# - router-id 198.51.100.1
# - redistribute eigrp 120 route-map rmap_1
# - redistribute direct route-map ospf102-direct-connect
# - area 0.0.0.100 filter-list route-map rmap_1 in
# - area 0.0.0.100 filter-list route-map rmap_2 out
# - area 0.0.0.100 range 198.51.100.64/27 not-advertise
# - area 0.0.0.100 range 198.51.100.96/27 cost 120
# - area 0.0.0.101 authentication message-digest
# - vrf zone1
# - router-id 198.51.100.129
# - summary-address 198.51.100.128/27 tag 121
# - summary-address 198.51.100.160/27
# - redistribute static route-map zone1-static-connect
# - area 0.0.0.102 nssa no-summary default-information-originate
# - area 0.0.0.103 nssa no-summary
# - area 0.0.0.103 nssa translate type7 always
# - vrf zone2
# - auto-cost reference-bandwidth 45 Gbps
# - router ospf 100
# - router-id 203.0.113.20
#
# after:
# processes:
# - process_id: "100"
# router_id: 203.0.113.20
# - areas:
# - area_id: 0.0.0.100
# filter_list:
# - direction: out
# route_map: rmap_2
# - direction: in
# route_map: rmap_1
# ranges:
# - not_advertise: true
# prefix: 198.51.100.64/27
# - cost: 120
# prefix: 198.51.100.96/27
# - area_id: 0.0.0.101
# authentication:
# message_digest: true
# process_id: "102"
# redistribute:
# - protocol: direct
# route_map: ospf102-direct-connect
# - id: "120"
# protocol: eigrp
# route_map: rmap_1
# router_id: 198.51.100.1
# vrfs:
# - areas:
# - area_id: 0.0.0.102
# nssa:
# default_information_originate: true
# no_summary: true
# - area_id: 0.0.0.103
# nssa:
# no_summary: true
# translate:
# type7:
# always: true
# redistribute:
# - protocol: static
# route_map: zone1-static-connect
# router_id: 198.51.100.129
# vrf: zone1
# - auto_cost:
# reference_bandwidth: 45
# unit: Gbps
# vrf: zone2
#
# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
# router-id 203.0.113.20
# router ospf 102
# router-id 198.51.100.1
# redistribute direct route-map ospf102-direct-connect
# redistribute eigrp 120 route-map rmap_1
# area 0.0.0.100 filter-list route-map rmap_2 out
# area 0.0.0.100 filter-list route-map rmap_1 in
# area 0.0.0.100 range 198.51.100.64/27 not-advertise
# area 0.0.0.100 range 198.51.100.96/27 cost 120
# area 0.0.0.101 authentication message-digest
# vrf zone1
# router-id 198.51.100.129
# area 0.0.0.102 nssa no-summary default-information-originate
# area 0.0.0.103 nssa no-summary
# area 0.0.0.103 nssa translate type7 always
# redistribute static route-map zone1-static-connect
# summary-address 198.51.100.128/27 tag 121
# summary-address 198.51.100.160/27
# vrf zone2
# auto-cost reference-bandwidth 45 Gbps
# Using replaced
# Before state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
# router-id 203.0.113.20
# router ospf 102
# router-id 198.51.100.1
# redistribute direct route-map ospf102-direct-connect
# redistribute eigrp 120 route-map rmap_1
# area 0.0.0.100 filter-list route-map rmap_2 out
# area 0.0.0.100 filter-list route-map rmap_1 in
# area 0.0.0.100 range 198.51.100.64/27 not-advertise
# area 0.0.0.100 range 198.51.100.96/27 cost 120
# area 0.0.0.101 authentication message-digest
# vrf zone1
# router-id 198.51.100.129
# area 0.0.0.102 nssa no-summary default-information-originate
# area 0.0.0.103 nssa no-summary
# area 0.0.0.103 nssa translate type7 always
# redistribute static route-map zone1-static-connect
# summary-address 198.51.100.128/27 tag 121
# summary-address 198.51.100.160/27
# vrf zone2
# auto-cost reference-bandwidth 45 Gbps
- name: Replace device configurations of listed OSPF processes with provided configurations
cisco.nxos.nxos_ospfv2:
config:
processes:
- process_id: 102
router_id: 198.51.100.1
areas:
- area_id: 0.0.0.100
filter_list:
- route_map: rmap_8
direction: in
ranges:
- prefix: 198.51.100.64/27
not_advertise: true
- area_id: 0.0.0.101
stub:
no_summary: true
redistribute:
- protocol: eigrp
id: 130
route_map: rmap_1
- protocol: direct
route_map: ospf102-direct-connect
vrfs:
- vrf: zone1
router_id: 198.51.100.129
redistribute:
- protocol: bgp
id: 65563
route_map: zone1-bgp-connect
areas:
- area_id: 0.0.0.102
nssa:
default_information_originate: true
no_summary: true
state: replaced
# Task output
# -------------
# before:
# processes:
# - process_id: "100"
# router_id: 203.0.113.20
# - areas:
# - area_id: 0.0.0.100
# filter_list:
# - direction: out
# route_map: rmap_2
# - direction: in
# route_map: rmap_1
# ranges:
# - not_advertise: true
# prefix: 198.51.100.64/27
# - cost: 120
# prefix: 198.51.100.96/27
# - area_id: 0.0.0.101
# authentication:
# message_digest: true
# process_id: "102"
# redistribute:
# - protocol: direct
# route_map: ospf102-direct-connect
# - id: "120"
# protocol: eigrp
# route_map: rmap_1
# router_id: 198.51.100.1
# vrfs:
# - areas:
# - area_id: 0.0.0.102
# nssa:
# default_information_originate: true
# no_summary: true
# - area_id: 0.0.0.103
# nssa:
# no_summary: true
# translate:
# type7:
# always: true
# redistribute:
# - protocol: static
# route_map: zone1-static-connect
# router_id: 198.51.100.129
# vrf: zone1
# - auto_cost:
# reference_bandwidth: 45
# unit: Gbps
# vrf: zone2
#
# commands:
# - router ospf 102
# - redistribute eigrp 130 route-map rmap_1
# - no redistribute eigrp 120 route-map rmap_1
# - area 0.0.0.100 filter-list route-map rmap_8 in
# - no area 0.0.0.100 filter-list route-map rmap_2 out
# - no area 0.0.0.100 range 198.51.100.96/27
# - no area 0.0.0.101 authentication
# - area 0.0.0.101 stub no-summary
# - vrf zone1
# - no summary-address 198.51.100.128/27 tag 121
# - no summary-address 198.51.100.160/27
# - redistribute bgp 65563 route-map zone1-bgp-connect
# - no redistribute static route-map zone1-static-connect
# - no area 0.0.0.103 nssa
# - no area 0.0.0.103 nssa translate type7 always
# - no vrf zone2
#
# after:
# processes:
# - process_id: "100"
# router_id: 203.0.113.20
# - areas:
# - area_id: 0.0.0.101
# stub:
# no_summary: true
# - area_id: 0.0.0.100
# filter_list:
# - direction: in
# route_map: rmap_8
# ranges:
# - not_advertise: true
# prefix: 198.51.100.64/27
# process_id: "102"
# redistribute:
# - protocol: direct
# route_map: ospf102-direct-connect
# - id: "130"
# protocol: eigrp
# route_map: rmap_1
# router_id: 198.51.100.1
# vrfs:
# - areas:
# - area_id: 0.0.0.102
# nssa:
# default_information_originate: true
# no_summary: true
# redistribute:
# - id: "65563"
# protocol: bgp
# route_map: zone1-bgp-connect
# router_id: 198.51.100.129
# vrf: zone1
# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
# router-id 203.0.113.20
# router ospf 102
# router-id 198.51.100.1
# area 0.0.0.101 stub no-summary
# redistribute direct route-map ospf102-direct-connect
# redistribute eigrp 130 route-map rmap_1
# area 0.0.0.100 filter-list route-map rmap_8 in
# area 0.0.0.100 range 198.51.100.64/27 not-advertise
# vrf zone1
# router-id 198.51.100.129
# area 0.0.0.102 nssa no-summary default-information-originate
# redistribute bgp 65563 route-map zone1-bgp-connect
# Using overridden
# Before state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
# router-id 203.0.113.20
# router ospf 102
# router-id 198.51.100.1
# redistribute direct route-map ospf102-direct-connect
# redistribute eigrp 120 route-map rmap_1
# area 0.0.0.100 filter-list route-map rmap_2 out
# area 0.0.0.100 filter-list route-map rmap_1 in
# area 0.0.0.100 range 198.51.100.64/27 not-advertise
# area 0.0.0.100 range 198.51.100.96/27 cost 120
# area 0.0.0.101 authentication message-digest
# vrf zone1
# router-id 198.51.100.129
# area 0.0.0.102 nssa no-summary default-information-originate
# area 0.0.0.103 nssa no-summary
# area 0.0.0.103 nssa translate type7 always
# redistribute static route-map zone1-static-connect
# summary-address 198.51.100.128/27 tag 121
# summary-address 198.51.100.160/27
# vrf zone2
# auto-cost reference-bandwidth 45 Gbps
- name: Overridde all OSPF configuration with provided configuration
cisco.nxos.nxos_ospfv2:
config:
processes:
- process_id: 104
router_id: 203.0.113.20
- process_id: 102
router_id: 198.51.100.1
shutdown: true
state: overridden
# Task output
# -------------
# before:
# processes:
# - process_id: "100"
# router_id: 203.0.113.20
# - areas:
# - area_id: 0.0.0.100
# filter_list:
# - direction: out
# route_map: rmap_2
# - direction: in
# route_map: rmap_1
# ranges:
# - not_advertise: true
# prefix: 198.51.100.64/27
# - cost: 120
# prefix: 198.51.100.96/27
# - area_id: 0.0.0.101
# authentication:
# message_digest: true
# process_id: "102"
# redistribute:
# - protocol: direct
# route_map: ospf102-direct-connect
# - id: "120"
# protocol: eigrp
# route_map: rmap_1
# router_id: 198.51.100.1
# vrfs:
# - areas:
# - area_id: 0.0.0.102
# nssa:
# default_information_originate: true
# no_summary: true
# - area_id: 0.0.0.103
# nssa:
# no_summary: true
# translate:
# type7:
# always: true
# redistribute:
# - protocol: static
# route_map: zone1-static-connect
# router_id: 198.51.100.129
# vrf: zone1
# - auto_cost:
# reference_bandwidth: 45
# unit: Gbps
# vrf: zone2
#
# commands:
# - no router ospf 100
# - router ospf 104
# - router-id 203.0.113.20
# - router ospf 102
# - shutdown
# - no redistribute direct route-map ospf102-direct-connect
# - no redistribute eigrp 120 route-map rmap_1
# - no area 0.0.0.100 filter-list route-map rmap_2 out
# - no area 0.0.0.100 filter-list route-map rmap_1 in
# - no area 0.0.0.100 range 198.51.100.64/27
# - no area 0.0.0.100 range 198.51.100.96/27
# - no area 0.0.0.101 authentication
# - no vrf zone1
# - no vrf zone2
#
# after:
# processes:
# - process_id: "102"
# router_id: 198.51.100.1
# shutdown: true
# - process_id: "104"
# router_id: 203.0.113.20
# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 102
# router-id 198.51.100.1
# shutdown
# router ospf 104
# router-id 203.0.113.20
# Using deleted to delete a single OSPF process
# Before state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
# router-id 203.0.113.20
# router ospf 102
# router-id 198.51.100.1
# redistribute direct route-map ospf102-direct-connect
# redistribute eigrp 120 route-map rmap_1
# area 0.0.0.100 filter-list route-map rmap_2 out
# area 0.0.0.100 filter-list route-map rmap_1 in
# area 0.0.0.100 range 198.51.100.64/27 not-advertise
# area 0.0.0.100 range 198.51.100.96/27 cost 120
# area 0.0.0.101 authentication message-digest
# vrf zone1
# router-id 198.51.100.129
# area 0.0.0.102 nssa no-summary default-information-originate
# area 0.0.0.103 nssa no-summary
# area 0.0.0.103 nssa translate type7 always
# redistribute static route-map zone1-static-connect
# summary-address 198.51.100.128/27 tag 121
# summary-address 198.51.100.160/27
# vrf zone2
# auto-cost reference-bandwidth 45 Gbps
- name: Delete a single OSPF process
cisco.nxos.nxos_ospfv2:
config:
processes:
- process_id: 102
state: deleted
# Task output
# -------------
# before:
# processes:
# - process_id: "100"
# router_id: 203.0.113.20
# - areas:
# - area_id: 0.0.0.100
# filter_list:
# - direction: out
# route_map: rmap_2
# - direction: in
# route_map: rmap_1
# ranges:
# - not_advertise: true
# prefix: 198.51.100.64/27
# - cost: 120
# prefix: 198.51.100.96/27
# - area_id: 0.0.0.101
# authentication:
# message_digest: true
# process_id: "102"
# redistribute:
# - protocol: direct
# route_map: ospf102-direct-connect
# - id: "120"
# protocol: eigrp
# route_map: rmap_1
# router_id: 198.51.100.1
# vrfs:
# - areas:
# - area_id: 0.0.0.102
# nssa:
# default_information_originate: true
# no_summary: true
# - area_id: 0.0.0.103
# nssa:
# no_summary: true
# translate:
# type7:
# always: true
# redistribute:
# - protocol: static
# route_map: zone1-static-connect
# router_id: 198.51.100.129
# vrf: zone1
# - auto_cost:
# reference_bandwidth: 45
# unit: Gbps
# vrf: zone2
#
# commands:
# - no router ospf 102
#
# after:
# processes:
# - process_id: "100"
# router_id: 203.0.113.20
# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
# router-id 203.0.113.20
# Using deleted all OSPF processes from the device
# Before state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# router ospf 100
# router-id 203.0.113.20
# router ospf 102
# router-id 198.51.100.1
# redistribute direct route-map ospf102-direct-connect
# redistribute eigrp 120 route-map rmap_1
# area 0.0.0.100 filter-list route-map rmap_2 out
# area 0.0.0.100 filter-list route-map rmap_1 in
# area 0.0.0.100 range 198.51.100.64/27 not-advertise
# area 0.0.0.100 range 198.51.100.96/27 cost 120
# area 0.0.0.101 authentication message-digest
# vrf zone1
# router-id 198.51.100.129
# area 0.0.0.102 nssa no-summary default-information-originate
# area 0.0.0.103 nssa no-summary
# area 0.0.0.103 nssa translate type7 always
# redistribute static route-map zone1-static-connect
# summary-address 198.51.100.128/27 tag 121
# summary-address 198.51.100.160/27
# vrf zone2
# auto-cost reference-bandwidth 45 Gbps
- name: Delete all OSPF processes from the device
cisco.nxos.nxos_ospfv2:
state: deleted
# Task output
# -------------
# before:
# processes:
# - process_id: "100"
# router_id: 203.0.113.20
# - areas:
# - area_id: 0.0.0.100
# filter_list:
# - direction: out
# route_map: rmap_2
# - direction: in
# route_map: rmap_1
# ranges:
# - not_advertise: true
# prefix: 198.51.100.64/27
# - cost: 120
# prefix: 198.51.100.96/27
# - area_id: 0.0.0.101
# authentication:
# message_digest: true
# process_id: "102"
# redistribute:
# - protocol: direct
# route_map: ospf102-direct-connect
# - id: "120"
# protocol: eigrp
# route_map: rmap_1
# router_id: 198.51.100.1
# vrfs:
# - areas:
# - area_id: 0.0.0.102
# nssa:
# default_information_originate: true
# no_summary: true
# - area_id: 0.0.0.103
# nssa:
# no_summary: true
# translate:
# type7:
# always: true
# redistribute:
# - protocol: static
# route_map: zone1-static-connect
# router_id: 198.51.100.129
# vrf: zone1
# - auto_cost:
# reference_bandwidth: 45
# unit: Gbps
# vrf: zone2
#
# commands:
# - no router ospf 100
# - no router ospf 102
#
# after: {}
# After state:
# ------------
# nxos-9k-rdo# sh running-config | section "^router ospf .*"
# nxos-9k-rdo#
# Using rendered
- name: Render platform specific configuration lines (without connecting to the device)
cisco.nxos.nxos_ospfv2:
config:
processes:
- process_id: 100
router_id: 203.0.113.20
- process_id: 102
router_id: 198.51.100.1
areas:
- area_id: 0.0.0.100
filter_list:
- route_map: rmap_1
direction: in
- route_map: rmap_2
direction: out
ranges:
- prefix: 198.51.100.64/27
not_advertise: true
- prefix: 198.51.100.96/27
cost: 120
- area_id: 0.0.0.101
authentication:
message_digest: true
redistribute:
- protocol: eigrp
id: 120
route_map: rmap_1
- protocol: direct
route_map: ospf102-direct-connect
vrfs:
- vrf: zone1
router_id: 198.51.100.129
redistribute:
- protocol: static
route_map: zone1-static-connect
summary_address:
- prefix: 198.51.100.128/27
tag: 121
- prefix: 198.51.100.160/27
areas:
- area_id: 0.0.0.102
nssa:
default_information_originate: true
no_summary: true
- area_id: 0.0.0.103
nssa:
no_summary: true
translate:
type7:
always: true
- vrf: zone2
auto_cost:
reference_bandwidth: 45
unit: Gbps
state: rendered
# Task Output (redacted)
# -----------------------
# rendered:
# - router ospf 100
# - router-id 203.0.113.20
# - router ospf 102
# - router-id 198.51.100.1
# - redistribute eigrp 120 route-map rmap_1
# - redistribute direct route-map ospf102-direct-connect
# - area 0.0.0.100 filter-list route-map rmap_1 in
# - area 0.0.0.100 filter-list route-map rmap_2 out
# - area 0.0.0.100 range 198.51.100.64/27 not-advertise
# - area 0.0.0.100 range 198.51.100.96/27 cost 120
# - area 0.0.0.101 authentication message-digest
# - vrf zone1
# - router-id 198.51.100.129
# - summary-address 198.51.100.128/27 tag 121
# - summary-address 198.51.100.160/27
# - redistribute static route-map zone1-static-connect
# - area 0.0.0.102 nssa no-summary default-information-originate
# - area 0.0.0.103 nssa no-summary
# - area 0.0.0.103 nssa translate type7 always
# - vrf zone2
# - auto-cost reference-bandwidth 45 Gbps
# Using parsed
# parsed.cfg
# ------------
# router ospf 100
# router-id 192.0.100.1
# area 0.0.0.101 nssa no-summary no-redistribution
# area 0.0.0.102 stub no-summary
# redistribute direct route-map ospf-direct-connect
# redistribute eigrp 120 route-map rmap_1
# area 0.0.0.100 filter-list route-map rmap_2 out
# area 0.0.0.100 filter-list route-map rmap_1 in
# area 0.0.0.100 range 192.0.2.0/24 not-advertise
# area 0.0.0.100 range 192.0.3.0/24 cost 120
# area 0.0.0.100 authentication message-digest
# vrf zone1
# router-id 192.0.100.2
# area 0.0.100.1 nssa no-summary no-redistribution
# redistribute static route-map zone1-direct-connect
# summary-address 10.0.0.0/24 tag 120
# summary-address 11.0.0.0/24 not-advertise
# vrf zone2
# auto-cost reference-bandwidth 45 Gbps
# down-bit-ignore
# capability vrf-lite evpn
# shutdown
# router ospf 102
# router-id 198.54.100.1
# shutdown
# vrf zone2
# summary-address 192.0.8.0/24 tag 120
# vrf zone4
# shutdown
- name: Parse externally provided OSPFv2 config
cisco.nxos.nxos_ospfv2:
running_config: "{{ lookup('file', 'ospfv2.cfg') }}"
state: parsed
# Task output (redacted)
# -----------------------
# parsed:
# processes:
# - process_id: "100"
# areas:
# - area_id: 0.0.0.101
# nssa:
# no_redistribution: true
# no_summary: true
# - area_id: 0.0.0.102
# stub:
# no_summary: true
# - area_id: 0.0.0.100
# authentication:
# message_digest: true
# filter_list:
# - direction: out
# route_map: rmap_2
# - direction: in
# route_map: rmap_1
# ranges:
# - not_advertise: true
# prefix: 192.0.2.0/24
# - cost: 120
# prefix: 192.0.3.0/24
# redistribute:
# - protocol: direct
# route_map: ospf-direct-connect
# - id: "120"
# protocol: eigrp
# route_map: rmap_1
# router_id: 192.0.100.1
# vrfs:
# - vrf: zone1
# areas:
# - area_id: 0.0.100.1
# nssa:
# no_redistribution: true
# no_summary: true
# redistribute:
# - protocol: static
# route_map: zone1-direct-connect
# router_id: 192.0.100.2
# summary_address:
# - prefix: 10.0.0.0/24
# tag: 120
# - not_advertise: true
# prefix: 11.0.0.0/24
# - vrf: zone2
# auto_cost:
# reference_bandwidth: 45
# unit: Gbps
# capability:
# vrf_lite:
# evpn: true
# down_bit_ignore: true
# shutdown: true
# - process_id: "102"
# router_id: 198.54.100.1
# shutdown: true
# vrfs:
# - vrf: zone2
# summary_address:
# - prefix: 192.0.8.0/24
# tag: 120
# - vrf: zone4
# shutdown: true
# Using gathered
- name: Gather OSPFv2 facts using gathered
cisco.nxos.nxos_ospfv2:
state: gathered
# Task output (redacted)
# -----------------------
# gathered:
# processes:
# - process_id: "102"
# areas:
# - area_id: 0.0.0.101
# stub:
# no_summary: true
# - area_id: 0.0.0.100
# filter_list:
# - direction: in
# route_map: rmap_8
# ranges:
# - not_advertise: true
# prefix: 198.51.100.64/27
# redistribute:
# - protocol: direct
# route_map: ospf102-direct-connect
# - id: "130"
# protocol: eigrp
# route_map: rmap_1
# router_id: 198.51.100.1
# vrfs:
# - vrf: zone1
# areas:
# - area_id: 0.0.0.102
# nssa:
# default_information_originate: true
# no_summary: true
# redistribute:
# - id: "65563"
# protocol: bgp
# route_map: zone1-bgp-connect
# router_id: 198.51.100.129
#
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key | Returned | Description |
---|---|---|
after dictionary |
when changed |
The resulting configuration model invocation.
Sample: The configuration returned will always be in the same format of the parameters above. |
before dictionary |
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 102', 'router-id 198.54.100.1', 'router ospf 100', 'router-id 192.0.100.1', 'redistribute eigrp 120 route-map rmap_1', 'redistribute direct route-map ospf-direct-connect', 'area 0.0.0.100 filter-list route-map rmap_1 in', 'area 0.0.0.100 filter-list route-map rmap_2 out', 'area 0.0.0.100 range 192.0.2.0/24 not-advertise', 'area 0.0.0.100 range 192.0.3.0/24 cost 120', 'vrf zone1', 'router-id 192.0.100.2', 'summary-address 10.0.0.0/24 tag 121', 'summary-address 11.0.0.0/24', 'redistribute static route-map zone1-direct-connect', 'vrf zone2', 'auto-cost reference-bandwidth 45 Gbps', 'capability vrf-lite evpn'] |
Authors
- Nilashish Chakraborty (@NilashishC)
© 2012–2018 Michael DeHaan
© 2018–2021 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.11/collections/cisco/nxos/nxos_ospfv2_module.html