summaryrefslogtreecommitdiff
path: root/plugins/modules/vyos_ospfv2.py
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/modules/vyos_ospfv2.py')
-rw-r--r--plugins/modules/vyos_ospfv2.py2366
1 files changed, 1489 insertions, 877 deletions
diff --git a/plugins/modules/vyos_ospfv2.py b/plugins/modules/vyos_ospfv2.py
index 73528eb..866ed76 100644
--- a/plugins/modules/vyos_ospfv2.py
+++ b/plugins/modules/vyos_ospfv2.py
@@ -39,21 +39,24 @@ DOCUMENTATION = """
---
module: vyos_ospfv2
version_added: 2.10
-short_description: Manages attributes of OSPF IPv4 routes on VyOS network devices.
-description: This module manages attributes of OSPF IPv4 routes on VyOS network devices.
-author: Rohit Thakur (@rohitthakur2590)
+short_description: This resource module configures and manages attributes of OSPFv2 routes on VyOS network devices.
+description: This resource module configures and manages attributes of OSPFv2 routes on VyOS network devices.
+notes:
+ - Tested against VyOS 1.1.8 (helium).
+ - This module works with connection C(network_cli). See L(the VyOS OS Platform Options,../network/user_guide/platform_vyos.html).
+author:
+ - Rohit Thakur (@rohitthakur2590)
options:
config:
- description: A provided OSPF route configuration.
- type: list
- elements: dict
+ description: A provided OSPFv2 route configuration.
+ type: dict
suboptions:
- ospf_area:
- description: OSPF area.
+ areas:
+ description: OSPFv2 area.
type: list
elements: dict
suboptions:
- area:
+ area_id:
description: Configured to discard packets.
type: str
area_type:
@@ -61,12 +64,15 @@ options:
type: dict
suboptions:
normal:
- description: Normal OSPF area.
+ description: Normal OSPFv2 area.
type: bool
nssa:
- description: Nssa OSPF area.
+ description: Nssa OSPFv2 area.
type: dict
suboptions:
+ set:
+ description: Enabling nssa.
+ type: bool
default_cost:
description: Summary-default cost of nssa area.
type: int
@@ -78,9 +84,12 @@ options:
type: str
choices: ['always', 'candidate', 'never']
stub:
- description: Stub OSPF area.
+ description: Stub OSPFv2 area.
type: dict
suboptions:
+ set:
+ description: Enabling stub.
+ type: bool
default_cost:
description: Summary-default cost of stub area.
type: int
@@ -88,17 +97,17 @@ options:
description: Do not inject inter-area routes into stub.
type: bool
authentication:
- description: OSPF area authentication type.
+ description: OSPFv2 area authentication type.
type: str
choices: ['plaintext-password', 'md5']
network:
- description: OSPF network.
+ description: OSPFv2 network.
type: list
elements: dict
suboptions:
address:
required: True
- description: OSPF IPv4 network address.
+ description: OSPFv2 IPv4 network address.
type: str
range:
description: Summarize routes matching prefix (border routers only).
@@ -130,12 +139,13 @@ options:
description: virtual link address.
type: str
authentication:
- description: OSPF area authentication type.
+ description: OSPFv2 area authentication type.
type: dict
suboptions:
md5:
description: MD5 key id based authentication.
- type: dict
+ type: list
+ elements: dict
suboptions:
key_id:
description: MD5 key id.
@@ -163,7 +173,7 @@ options:
type: str
choices: ['detail']
max_metric:
- description: OSPF maximum/infinite-distance metric.
+ description: OSPFv2 maximum/infinite-distance metric.
type: dict
suboptions:
router_lsa:
@@ -180,7 +190,7 @@ options:
description: Time to advertise self as stub-router
type: int
auto_cost:
- description: Calculate OSPF interface cost according to bandwidth.
+ description: Calculate OSPFv2 interface cost according to bandwidth.
type: dict
suboptions:
reference_bandwidth:
@@ -198,10 +208,10 @@ options:
description: Always advertise default route.
type: bool
metric:
- description: OSPF default metric.
+ description: OSPFv2 default metric.
type: int
metric_type:
- description: OSPF Metric types for default routes.
+ description: OSPFv2 Metric types for default routes.
type: int
route_map:
description: Route map references.
@@ -214,10 +224,10 @@ options:
type: dict
suboptions:
global:
- description: Global OSPF administrative distance.
+ description: Global OSPFv2 administrative distance.
type: int
ospf:
- description: OSPF administrative distance.
+ description: OSPFv2 administrative distance.
type: dict
suboptions:
external:
@@ -255,11 +265,11 @@ options:
description: Neighbor priority.
type: int
parameters:
- descriptions: OSPF specific parameters.
+ descriptions: OSPFv2 specific parameters.
type: dict
suboptions:
abr_type:
- description: OSPF ABR Type.
+ description: OSPFv2 ABR Type.
type: str
choices: ['cisco', 'ibm', 'shortcut', 'standard']
opaque_lsa:
@@ -290,7 +300,7 @@ options:
description: Metric for redistribution routes.
type: int
metric_type:
- description: OSPF Metric types.
+ description: OSPFv2 Metric types.
type: int
route_map:
description: Route map references.
@@ -315,7 +325,7 @@ options:
type: dict
suboptions:
spf:
- description: OSPF SPF timers.
+ description: OSPFv2 SPF timers.
type: dict
suboptions:
delay:
@@ -327,6 +337,16 @@ options:
max_holdtime:
description: maximum hold time (sec).
type: int
+ running_config:
+ description:
+ - The module, by default, will connect to the remote device and retrieve the current
+ running-config to use as a base for comparing against the contents of source.
+ There are times when it is not desirable to have the task get the current running-config
+ for every task in a playbook. The I(running_config) argument allows the implementer
+ to pass in the configuration to use as the base config for comparison. This
+ value of this option should be the output received from device by executing
+ command C(show configuration commands | grep 'ospf')
+ type: str
state:
description:
- The state the configuration should be left in.
@@ -346,35 +366,66 @@ EXAMPLES = """
# Before state:
# -------------
#
-# vyos@192# run show configuration commands | grep ospf
+# vyos@vyos# run show configuration commands | grep ospf
+#
#
-- name: Merge the provided configuration with the existing running configuration
- vyos_ospf_routes:
+- name: Merge the provided configuration with the exisiting running configuration
+ vyos.vyos.vyos_ospfv2:
config:
- - afi: 'ipv4'
- ospf_area:
- - area: 0
- network: 192.168.0.0/24
- default_information:
- originate:
- always: true
- metric: 2
- metric_type: 10
- log_adjacency_changes: "details"
- parameters:
- router_id: 10.1.1.1
- redistribute:
- - route_type: 'connected'
- metric_type: 2
- route_map: 'CONNECT'
- - afi: 'ipv6'
- ospf_area:
- - area: 0.0.0.0
- range: 2001:db8:1::/64
- parameters:
- router-id 192.168.1.1
- redistribute:
- - route_type: 'connected'
+ log_adjacency_changes: 'detail'
+ max_metric:
+ router_lsa:
+ administrative: true
+ on_shutdown: 10
+ on_startup: 10
+ default_information:
+ originate:
+ always: true
+ metric: 10
+ metric_type: 2
+ route_map: 'ingress'
+ mpls_te:
+ enabled: true
+ router_address: '192.0.11.11'
+ auto_cost:
+ reference_bandwidth: 2
+ neighbor:
+ - neighbor_id: '192.0.11.12'
+ poll_interval: 10
+ priority: 2
+ redistribute:
+ - route_type: 'bgp'
+ metric: 10
+ metric_type: 2
+ passive_interface:
+ - 'eth1'
+ - 'eth2'
+ parameters:
+ router_id: '192.0.1.1'
+ opaque_lsa: true
+ rfc1583_compatibility: true
+ abr_type: 'cisco'
+ areas:
+ - area_id: '2'
+ area_type:
+ normal: true
+ authentication: "plaintext-password"
+ shortcut: 'enable'
+ - area_id: '3'
+ area_type:
+ nssa:
+ set: true
+ - area_id: '4'
+ area_type:
+ stub:
+ default_cost: 20
+ network:
+ - address: '192.0.2.0/24'
+ range:
+ - address: '192.0.3.0/24'
+ cost: 10
+ - address: '192.0.4.0/24'
+ cost: 12
state: merged
#
#
@@ -385,276 +436,432 @@ EXAMPLES = """
# before": []
#
# "commands": [
-# "set interfaces ethernet eth1 firewall in name 'INBOUND'",
-# "set protocols ospf area 0 network 192.168.0.0/24",
+# "set protocols ospf mpls-te enable",
+# "set protocols ospf mpls-te router-address '192.0.11.11'",
+# "set protocols ospf redistribute bgp",
+# "set protocols ospf redistribute bgp metric-type 2",
+# "set protocols ospf redistribute bgp metric 10",
+# "set protocols ospf default-information originate metric-type 2",
# "set protocols ospf default-information originate always",
# "set protocols ospf default-information originate metric 10",
-# "set protocols ospf default-information originate metric-type 2",
-# "set protocols ospf log-adjacency-changes",
-# "set protocols ospf parameters router-id 10.1.1.1",
-# "set protocols ospf redistribute connected metric-type 2",
-# "set protocols ospf redistribute connected route-map CONNECT",
-# "set protocols ospfv3 area 0.0.0.0 range 2001:db8:1::/64,
-# "set protocols ospfv3 parameters router-id 192.168.1.1,
-# "set protocols ospfv3 redistribute connected
+# "set protocols ospf default-information originate route-map ingress",
+# "set protocols ospf auto-cost reference-bandwidth '2'",
+# "set protocols ospf parameters router-id '192.0.1.1'",
+# "set protocols ospf parameters opaque-lsa",
+# "set protocols ospf parameters abr-type 'cisco'",
+# "set protocols ospf parameters rfc1583-compatibility",
+# "set protocols ospf passive-interface eth1",
+# "set protocols ospf passive-interface eth2",
+# "set protocols ospf max-metric router-lsa on-shutdown 10",
+# "set protocols ospf max-metric router-lsa administrative",
+# "set protocols ospf max-metric router-lsa on-startup 10",
+# "set protocols ospf log-adjacency-changes 'detail'",
+# "set protocols ospf neighbor 192.0.11.12 priority 2",
+# "set protocols ospf neighbor 192.0.11.12 poll-interval 10",
+# "set protocols ospf neighbor 192.0.11.12",
+# "set protocols ospf area '2'",
+# "set protocols ospf area 2 authentication plaintext-password",
+# "set protocols ospf area 2 shortcut enable",
+# "set protocols ospf area 2 area-type normal",
+# "set protocols ospf area '3'",
+# "set protocols ospf area 3 area-type nssa",
+# "set protocols ospf area 4 range 192.0.3.0/24 cost 10",
+# "set protocols ospf area 4 range 192.0.3.0/24",
+# "set protocols ospf area 4 range 192.0.4.0/24 cost 12",
+# "set protocols ospf area 4 range 192.0.4.0/24",
+# "set protocols ospf area 4 area-type stub default-cost 20",
+# "set protocols ospf area '4'",
+# "set protocols ospf area 4 network 192.0.2.0/24"
# ]
#
-# "after": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "connetced",
-# "metric_type": 2
-# "route_map": "CONNECT"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connetced",
-# }
-# ]
+# "after": {
+# "areas": [
+# {
+# "area_id": "2",
+# "area_type": {
+# "normal": true
+# },
+# "authentication": "plaintext-password",
+# "shortcut": "enable"
+# },
+# {
+# "area_id": "3",
+# "area_type": {
+# "nssa": {
+# "set": true
+# }
# }
-# ]
+# },
+# {
+# "area_id": "4",
+# "area_type": {
+# "stub": {
+# "default_cost": 20,
+# "set": true
+# }
+# },
+# "network": [
+# {
+# "address": "192.0.2.0/24"
+# }
+# ],
+# "range": [
+# {
+# "address": "192.0.3.0/24",
+# "cost": 10
+# },
+# {
+# "address": "192.0.4.0/24",
+# "cost": 12
+# }
+# ]
+# }
+# ],
+# "auto_cost": {
+# "reference_bandwidth": 2
+# },
+# "default_information": {
+# "originate": {
+# "always": true,
+# "metric": 10,
+# "metric_type": 2,
+# "route_map": "ingress"
+# }
+# },
+# "log_adjacency_changes": "detail",
+# "max_metric": {
+# "router_lsa": {
+# "administrative": true,
+# "on_shutdown": 10,
+# "on_startup": 10
+# }
+# },
+# "mpls_te": {
+# "enabled": true,
+# "router_address": "192.0.11.11"
+# },
+# "neighbor": [
+# {
+# "neighbor_id": "192.0.11.12",
+# "poll_interval": 10,
+# "priority": 2
+# }
+# ],
+# "parameters": {
+# "abr_type": "cisco",
+# "opaque_lsa": true,
+# "rfc1583_compatibility": true,
+# "router_id": "192.0.1.1"
+# },
+# "passive_interface": [
+# "eth2",
+# "eth1"
+# ],
+# "redistribute": [
+# {
+# "metric": 10,
+# "metric_type": 2,
+# "route_type": "bgp"
+# }
+# ]
+# }
#
# After state:
# -------------
#
-# vyos@vyos:~$ show configuration commands| grep firewall
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute connected metric-type 2
-# set protocols ospf redistribute connected route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:1::/64
-# set protocols ospfv3 parameters router-id 192.168.1.1
-# set protocols ospfv3 redistribute connected
+# vyos@192# run show configuration commands | grep ospf
+# set protocols ospf area 2 area-type 'normal'
+# set protocols ospf area 2 authentication 'plaintext-password'
+# set protocols ospf area 2 shortcut 'enable'
+# set protocols ospf area 3 area-type 'nssa'
+# set protocols ospf area 4 area-type stub default-cost '20'
+# set protocols ospf area 4 network '192.0.2.0/24'
+# set protocols ospf area 4 range 192.0.3.0/24 cost '10'
+# set protocols ospf area 4 range 192.0.4.0/24 cost '12'
+# set protocols ospf auto-cost reference-bandwidth '2'
+# set protocols ospf default-information originate 'always'
+# set protocols ospf default-information originate metric '10'
+# set protocols ospf default-information originate metric-type '2'
+# set protocols ospf default-information originate route-map 'ingress'
+# set protocols ospf log-adjacency-changes 'detail'
+# set protocols ospf max-metric router-lsa 'administrative'
+# set protocols ospf max-metric router-lsa on-shutdown '10'
+# set protocols ospf max-metric router-lsa on-startup '10'
+# set protocols ospf mpls-te 'enable'
+# set protocols ospf mpls-te router-address '192.0.11.11'
+# set protocols ospf neighbor 192.0.11.12 poll-interval '10'
+# set protocols ospf neighbor 192.0.11.12 priority '2'
+# set protocols ospf parameters abr-type 'cisco'
+# set protocols ospf parameters 'opaque-lsa'
+# set protocols ospf parameters 'rfc1583-compatibility'
+# set protocols ospf parameters router-id '192.0.1.1'
+# set protocols ospf passive-interface 'eth1'
+# set protocols ospf passive-interface 'eth2'
+# set protocols ospf redistribute bgp metric '10'
+# set protocols ospf redistribute bgp metric-type '2'
-# Using replaced
+# Using merged
#
# Before state:
# -------------
#
-# vyos@192# run show configuration commands | grep ospf
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute connected metric-type 2
-# set protocols ospf redistribute connected route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:1::/64
-# set protocols ospfv3 parameters router-id 192.168.1.1
-# set protocols ospfv3 redistribute connected
-#
-- name: Replace the provided configuration with the existing running configuration
- vyos_ospf_routes:
+# vyos@vyos# run show configuration commands | grep ospf
+#
+#
+- name: Merge the provided configuration to update exisiting running configuration
+ vyos.vyos.vyos_ospfv2:
config:
- - afi: 'ipv4'
- ospf_area:
- - area: 0
- network: 192.168.0.0/24
- area_type:
- normal: True
- default_information:
- originate:
- always: true
- metric: 2
- metric_type: 10
- log_adjacency_changes: "details"
- parameters:
- router_id: 10.1.1.1
- redistribute:
- - route_type: 'static'
- metric_type: 2
- route_map: 'STATIC'
- - afi: 'ipv6'
- ospf_area:
- - area: 0.0.0.0
- range: 2001:db8:1::/64
- parameters:
- router-id 192.168.1.1
- redistribute:
- - route_type: 'connected'
- state: replaced
+ areas:
+ - area_id: '2'
+ area_type:
+ normal: true
+ authentication: "plaintext-password"
+ shortcut: 'enable'
+ - area_id: '3'
+ area_type:
+ nssa:
+ set: false
+ - area_id: '4'
+ area_type:
+ stub:
+ default_cost: 20
+ network:
+ - address: '192.0.2.0/24'
+ - address: '192.0.22.0/24'
+ - address: '192.0.32.0/24'
+ state: merged
#
#
# -------------------------
# Module Execution Result
# -------------------------
#
-# before": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "connetced",
-# "metric_type": 2
-# "route_map": "CONNECT"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connetced",
-# }
-# ]
+# "before": {
+# "areas": [
+# {
+# "area_id": "2",
+# "area_type": {
+# "normal": true
+# },
+# "authentication": "plaintext-password",
+# "shortcut": "enable"
+# },
+# {
+# "area_id": "3",
+# "area_type": {
+# "nssa": {
+# "set": true
+# }
# }
-# ]
+# },
+# {
+# "area_id": "4",
+# "area_type": {
+# "stub": {
+# "default_cost": 20,
+# "set": true
+# }
+# },
+# "network": [
+# {
+# "address": "192.0.2.0/24"
+# }
+# ],
+# "range": [
+# {
+# "address": "192.0.3.0/24",
+# "cost": 10
+# },
+# {
+# "address": "192.0.4.0/24",
+# "cost": 12
+# }
+# ]
+# }
+# ],
+# "auto_cost": {
+# "reference_bandwidth": 2
+# },
+# "default_information": {
+# "originate": {
+# "always": true,
+# "metric": 10,
+# "metric_type": 2,
+# "route_map": "ingress"
+# }
+# },
+# "log_adjacency_changes": "detail",
+# "max_metric": {
+# "router_lsa": {
+# "administrative": true,
+# "on_shutdown": 10,
+# "on_startup": 10
+# }
+# },
+# "mpls_te": {
+# "enabled": true,
+# "router_address": "192.0.11.11"
+# },
+# "neighbor": [
+# {
+# "neighbor_id": "192.0.11.12",
+# "poll_interval": 10,
+# "priority": 2
+# }
+# ],
+# "parameters": {
+# "abr_type": "cisco",
+# "opaque_lsa": true,
+# "rfc1583_compatibility": true,
+# "router_id": "192.0.1.1"
+# },
+# "passive_interface": [
+# "eth2",
+# "eth1"
+# ],
+# "redistribute": [
+# {
+# "metric": 10,
+# "metric_type": 2,
+# "route_type": "bgp"
+# }
+# ]
+# }
#
# "commands": [
-# "delete protocols ospf redistribute connected",
-# "set protocols ospf area 0 area_type normal",
-# "set protocols ospf redistribute static metric-type 2",
-# "set protocols ospf redistribute static route-map CONNECT"
+# "delete protocols ospf area 4 area-type stub",
+# "set protocols ospf area 4 network 192.0.22.0/24"
+# "set protocols ospf area 4 network 192.0.32.0/24"
# ]
#
-# "after": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "area_type":
-# {
-# normal: true
-# }
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "static",
-# "metric_type": 2
-# "route_map": "STATIC"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connected",
-# }
-# ]
+# "after": {
+# "areas": [
+# {
+# "area_id": "2",
+# "area_type": {
+# "normal": true
+# },
+# "authentication": "plaintext-password",
+# "shortcut": "enable"
+# },
+# {
+# "area_id": "3",
+# "area_type": {
+# "nssa": {
+# "set": true
+# }
# }
-# ]
+# },
+# {
+# "area_id": "4",
+# },
+# "network": [
+# {
+# "address": "192.0.2.0/24"
+# },
+# {
+# "address": "192.0.22.0/24"
+# },
+# {
+# "address": "192.0.32.0/24"
+# }
+# ],
+# "range": [
+# {
+# "address": "192.0.3.0/24",
+# "cost": 10
+# },
+# {
+# "address": "192.0.4.0/24",
+# "cost": 12
+# }
+# ]
+# }
+# ],
+# "auto_cost": {
+# "reference_bandwidth": 2
+# },
+# "default_information": {
+# "originate": {
+# "always": true,
+# "metric": 10,
+# "metric_type": 2,
+# "route_map": "ingress"
+# }
+# },
+# "log_adjacency_changes": "detail",
+# "max_metric": {
+# "router_lsa": {
+# "administrative": true,
+# "on_shutdown": 10,
+# "on_startup": 10
+# }
+# },
+# "mpls_te": {
+# "enabled": true,
+# "router_address": "192.0.11.11"
+# },
+# "neighbor": [
+# {
+# "neighbor_id": "192.0.11.12",
+# "poll_interval": 10,
+# "priority": 2
+# }
+# ],
+# "parameters": {
+# "abr_type": "cisco",
+# "opaque_lsa": true,
+# "rfc1583_compatibility": true,
+# "router_id": "192.0.1.1"
+# },
+# "passive_interface": [
+# "eth2",
+# "eth1"
+# ],
+# "redistribute": [
+# {
+# "metric": 10,
+# "metric_type": 2,
+# "route_type": "bgp"
+# }
+# ]
+# }
#
# After state:
# -------------
#
-# vyos@vyos:~$ show configuration commands| grep firewall
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute static metric-type 2
-# set protocols ospf redistribute static route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:2::/64
-# set protocols ospfv3 parameters router-id 192.168.2.1
-# set protocols ospfv3 redistribute connected
+# vyos@192# run show configuration commands | grep ospf
+# set protocols ospf area 2 area-type 'normal'
+# set protocols ospf area 2 authentication 'plaintext-password'
+# set protocols ospf area 2 shortcut 'enable'
+# set protocols ospf area 3 area-type 'nssa'
+# set protocols ospf area 4 network '192.0.2.0/24'
+# set protocols ospf area 4 network '192.0.22.0/24'
+# set protocols ospf area 4 network '192.0.32.0/24'
+# set protocols ospf area 4 range 192.0.3.0/24 cost '10'
+# set protocols ospf area 4 range 192.0.4.0/24 cost '12'
+# set protocols ospf auto-cost reference-bandwidth '2'
+# set protocols ospf default-information originate 'always'
+# set protocols ospf default-information originate metric '10'
+# set protocols ospf default-information originate metric-type '2'
+# set protocols ospf default-information originate route-map 'ingress'
+# set protocols ospf log-adjacency-changes 'detail'
+# set protocols ospf max-metric router-lsa 'administrative'
+# set protocols ospf max-metric router-lsa on-shutdown '10'
+# set protocols ospf max-metric router-lsa on-startup '10'
+# set protocols ospf mpls-te 'enable'
+# set protocols ospf mpls-te router-address '192.0.11.11'
+# set protocols ospf neighbor 192.0.11.12 poll-interval '10'
+# set protocols ospf neighbor 192.0.11.12 priority '2'
+# set protocols ospf parameters abr-type 'cisco'
+# set protocols ospf parameters 'opaque-lsa'
+# set protocols ospf parameters 'rfc1583-compatibility'
+# set protocols ospf parameters router-id '192.0.1.1'
+# set protocols ospf passive-interface 'eth1'
+# set protocols ospf passive-interface 'eth2'
+# set protocols ospf redistribute bgp metric '10'
+# set protocols ospf redistribute bgp metric-type '2'
# Using replaced
@@ -663,47 +870,89 @@ EXAMPLES = """
# -------------
#
# vyos@192# run show configuration commands | grep ospf
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute connected metric-type 2
-# set protocols ospf redistribute connected route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:1::/64
-# set protocols ospfv3 parameters router-id 192.168.1.1
-# set protocols ospfv3 redistribute connected
-#
-- name: Replace the provided configuration with the existing running configuration
- vyos_ospf_routes:
+# set protocols ospf area 2 area-type 'normal'
+# set protocols ospf area 2 authentication 'plaintext-password'
+# set protocols ospf area 2 shortcut 'enable'
+# set protocols ospf area 3 area-type 'nssa'
+# set protocols ospf area 4 area-type stub default-cost '20'
+# set protocols ospf area 4 network '192.0.2.0/24'
+# set protocols ospf area 4 range 192.0.3.0/24 cost '10'
+# set protocols ospf area 4 range 192.0.4.0/24 cost '12'
+# set protocols ospf auto-cost reference-bandwidth '2'
+# set protocols ospf default-information originate 'always'
+# set protocols ospf default-information originate metric '10'
+# set protocols ospf default-information originate metric-type '2'
+# set protocols ospf default-information originate route-map 'ingress'
+# set protocols ospf log-adjacency-changes 'detail'
+# set protocols ospf max-metric router-lsa 'administrative'
+# set protocols ospf max-metric router-lsa on-shutdown '10'
+# set protocols ospf max-metric router-lsa on-startup '10'
+# set protocols ospf mpls-te 'enable'
+# set protocols ospf mpls-te router-address '192.0.11.11'
+# set protocols ospf neighbor 192.0.11.12 poll-interval '10'
+# set protocols ospf neighbor 192.0.11.12 priority '2'
+# set protocols ospf parameters abr-type 'cisco'
+# set protocols ospf parameters 'opaque-lsa'
+# set protocols ospf parameters 'rfc1583-compatibility'
+# set protocols ospf parameters router-id '192.0.1.1'
+# set protocols ospf passive-interface 'eth1'
+# set protocols ospf passive-interface 'eth2'
+# set protocols ospf redistribute bgp metric '10'
+# set protocols ospf redistribute bgp metric-type '2'
+#
+- name: Replace ospfv2 routes attributes configuration.
+ vyos.vyos.vyos_ospfv2:
config:
- - afi: 'ipv4'
- ospf_area:
- - area: 0
- network: 192.168.0.0/24
- area_type:
- normal: True
- default_information:
- originate:
- always: true
- metric: 2
- metric_type: 10
- log_adjacency_changes: "details"
- parameters:
- router_id: 10.1.1.1
- redistribute:
- - route_type: 'static'
- metric_type: 2
- route_map: 'STATIC'
- - afi: 'ipv6'
- ospf_area:
- - area: 0.0.0.0
- range: 2001:db8:1::/64
- parameters:
- router-id 192.168.1.1
- redistribute:
- - route_type: 'connected'
+ log_adjacency_changes: 'detail'
+ max_metric:
+ router_lsa:
+ administrative: true
+ on_shutdown: 10
+ on_startup: 10
+ default_information:
+ originate:
+ always: true
+ metric: 10
+ metric_type: 2
+ route_map: 'ingress'
+ mpls_te:
+ enabled: true
+ router_address: '192.0.22.22'
+ auto_cost:
+ reference_bandwidth: 2
+ neighbor:
+ - neighbor_id: '192.0.11.12'
+ poll_interval: 10
+ priority: 2
+ redistribute:
+ - route_type: 'bgp'
+ metric: 10
+ metric_type: 2
+ passive_interface:
+ - 'eth1'
+ parameters:
+ router_id: '192.0.1.1'
+ opaque_lsa: true
+ rfc1583_compatibility: true
+ abr_type: 'cisco'
+ areas:
+ - area_id: '2'
+ area_type:
+ normal: true
+ authentication: "plaintext-password"
+ shortcut: 'enable'
+ - area_id: '4'
+ area_type:
+ stub:
+ default_cost: 20
+ network:
+ - address: '192.0.2.0/24'
+ - address: '192.0.12.0/24'
+ - address: '192.0.22.0/24'
+ - address: '192.0.32.0/24'
+ range:
+ - address: '192.0.42.0/24'
+ cost: 10
state: replaced
#
#
@@ -711,608 +960,968 @@ EXAMPLES = """
# Module Execution Result
# -------------------------
#
-# before": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "connetced",
-# "metric_type": 2
-# "route_map": "CONNECT"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connetced",
-# }
-# ]
-# }
-# ]
-#
-# "commands": [
-# "delete protocols ospf redistribute connected",
-# "set protocols ospf area 0 area_type normal",
-# "set protocols ospf redistribute static metric-type 2",
-# "set protocols ospf redistribute static route-map CONNECT"
-# ]
-#
-# "after": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "area_type":
-# {
-# normal: true
-# }
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "static",
-# "metric_type": 2
-# "route_map": "STATIC"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connected",
-# }
-# ]
+# "before": {
+# "areas": [
+# {
+# "area_id": "2",
+# "area_type": {
+# "normal": true
+# },
+# "authentication": "plaintext-password",
+# "shortcut": "enable"
+# },
+# {
+# "area_id": "3",
+# "area_type": {
+# "nssa": {
+# "set": true
+# }
# }
+# },
+# {
+# "area_id": "4",
+# "area_type": {
+# "stub": {
+# "default_cost": 20,
+# "set": true
+# }
+# },
+# "network": [
+# {
+# "address": "192.0.2.0/24"
+# }
+# ],
+# "range": [
+# {
+# "address": "192.0.3.0/24",
+# "cost": 10
+# },
+# {
+# "address": "192.0.4.0/24",
+# "cost": 12
+# }
+# ]
+# }
+# ],
+# "auto_cost": {
+# "reference_bandwidth": 2
+# },
+# "default_information": {
+# "originate": {
+# "always": true,
+# "metric": 10,
+# "metric_type": 2,
+# "route_map": "ingress"
+# }
+# },
+# "log_adjacency_changes": "detail",
+# "max_metric": {
+# "router_lsa": {
+# "administrative": true,
+# "on_shutdown": 10,
+# "on_startup": 10
+# }
+# },
+# "mpls_te": {
+# "enabled": true,
+# "router_address": "192.0.11.11"
+# },
+# "neighbor": [
+# {
+# "neighbor_id": "192.0.11.12",
+# "poll_interval": 10,
+# "priority": 2
+# }
+# ],
+# "parameters": {
+# "abr_type": "cisco",
+# "opaque_lsa": true,
+# "rfc1583_compatibility": true,
+# "router_id": "192.0.1.1"
+# },
+# "passive_interface": [
+# "eth2",
+# "eth1"
+# ],
+# "redistribute": [
+# {
+# "metric": 10,
+# "metric_type": 2,
+# "route_type": "bgp"
+# }
+# ]
+# }
+#
+# "commands": [
+# "delete protocols ospf passive-interface eth2",
+# "delete protocols ospf area 3",
+# "delete protocols ospf area 4 range 192.0.3.0/24 cost",
+# "delete protocols ospf area 4 range 192.0.3.0/24",
+# "delete protocols ospf area 4 range 192.0.4.0/24 cost",
+# "delete protocols ospf area 4 range 192.0.4.0/24",
+# "set protocols ospf mpls-te router-address '192.0.22.22'",
+# "set protocols ospf area 4 range 192.0.42.0/24 cost 10",
+# "set protocols ospf area 4 range 192.0.42.0/24",
+# "set protocols ospf area 4 network 192.0.12.0/24",
+# "set protocols ospf area 4 network 192.0.22.0/24",
+# "set protocols ospf area 4 network 192.0.32.0/24"
# ]
#
+# "after": {
+# "areas": [
+# {
+# "area_id": "2",
+# "area_type": {
+# "normal": true
+# },
+# "authentication": "plaintext-password",
+# "shortcut": "enable"
+# },
+# {
+# "area_id": "4",
+# "area_type": {
+# "stub": {
+# "default_cost": 20,
+# "set": true
+# }
+# },
+# "network": [
+# {
+# "address": "192.0.12.0/24"
+# },
+# {
+# "address": "192.0.2.0/24"
+# },
+# {
+# "address": "192.0.22.0/24"
+# },
+# {
+# "address": "192.0.32.0/24"
+# }
+# ],
+# "range": [
+# {
+# "address": "192.0.42.0/24",
+# "cost": 10
+# }
+# ]
+# }
+# ],
+# "auto_cost": {
+# "reference_bandwidth": 2
+# },
+# "default_information": {
+# "originate": {
+# "always": true,
+# "metric": 10,
+# "metric_type": 2,
+# "route_map": "ingress"
+# }
+# },
+# "log_adjacency_changes": "detail",
+# "max_metric": {
+# "router_lsa": {
+# "administrative": true,
+# "on_shutdown": 10,
+# "on_startup": 10
+# }
+# },
+# "mpls_te": {
+# "enabled": true,
+# "router_address": "192.0.22.22"
+# },
+# "neighbor": [
+# {
+# "neighbor_id": "192.0.11.12",
+# "poll_interval": 10,
+# "priority": 2
+# }
+# ],
+# "parameters": {
+# "abr_type": "cisco",
+# "opaque_lsa": true,
+# "rfc1583_compatibility": true,
+# "router_id": "192.0.1.1"
+# },
+# "passive_interface": [
+# "eth1"
+# ],
+# "redistribute": [
+# {
+# "metric": 10,
+# "metric_type": 2,
+# "route_type": "bgp"
+# }
+# ]
+# }
+#
# After state:
# -------------
#
-# vyos@vyos:~$ show configuration commands| grep firewall
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute static metric-type 2
-# set protocols ospf redistribute static route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:2::/64
-# set protocols ospfv3 parameters router-id 192.168.2.1
-# set protocols ospfv3 redistribute connected
+# vyos@192# run show configuration commands | grep ospf
+# set protocols ospf area 2 area-type 'normal'
+# set protocols ospf area 2 authentication 'plaintext-password'
+# set protocols ospf area 2 shortcut 'enable'
+# set protocols ospf area 4 area-type stub default-cost '20'
+# set protocols ospf area 4 network '192.0.2.0/24'
+# set protocols ospf area 4 network '192.0.12.0/24'
+# set protocols ospf area 4 network '192.0.22.0/24'
+# set protocols ospf area 4 network '192.0.32.0/24'
+# set protocols ospf area 4 range 192.0.42.0/24 cost '10'
+# set protocols ospf auto-cost reference-bandwidth '2'
+# set protocols ospf default-information originate 'always'
+# set protocols ospf default-information originate metric '10'
+# set protocols ospf default-information originate metric-type '2'
+# set protocols ospf default-information originate route-map 'ingress'
+# set protocols ospf log-adjacency-changes 'detail'
+# set protocols ospf max-metric router-lsa 'administrative'
+# set protocols ospf max-metric router-lsa on-shutdown '10'
+# set protocols ospf max-metric router-lsa on-startup '10'
+# set protocols ospf mpls-te 'enable'
+# set protocols ospf mpls-te router-address '192.0.22.22'
+# set protocols ospf neighbor 192.0.11.12 poll-interval '10'
+# set protocols ospf neighbor 192.0.11.12 priority '2'
+# set protocols ospf parameters abr-type 'cisco'
+# set protocols ospf parameters 'opaque-lsa'
+# set protocols ospf parameters 'rfc1583-compatibility'
+# set protocols ospf parameters router-id '192.0.1.1'
+# set protocols ospf passive-interface 'eth1'
+# set protocols ospf redistribute bgp metric '10'
+# set protocols ospf redistribute bgp metric-type '2'
-# Using replaced
+# Using rendered
#
-# Before state:
-# -------------
#
-# vyos@192# run show configuration commands | grep ospf
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute connected metric-type 2
-# set protocols ospf redistribute connected route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:1::/64
-# set protocols ospfv3 parameters router-id 192.168.1.1
-# set protocols ospfv3 redistribute connected
-#
-- name: Replace the provided configuration with the existing running configuration
- vyos_ospf_routes:
+- name: Render the commands for provided configuration
+ vyos.vyos.vyos_ospfv2:
config:
- - afi: 'ipv4'
- ospf_area:
- - area: 0
- network: 192.168.0.0/24
- area_type:
- normal: True
- default_information:
- originate:
- always: true
- metric: 2
- metric_type: 10
- log_adjacency_changes: "details"
- parameters:
- router_id: 10.1.1.1
- redistribute:
- - route_type: 'static'
- metric_type: 2
- route_map: 'STATIC'
- - afi: 'ipv6'
- ospf_area:
- - area: 0.0.0.0
- range: 2001:db8:1::/64
- parameters:
- router-id 192.168.1.1
- redistribute:
- - route_type: 'connected'
- state: replaced
+ log_adjacency_changes: 'detail'
+ max_metric:
+ router_lsa:
+ administrative: true
+ on_shutdown: 10
+ on_startup: 10
+ default_information:
+ originate:
+ always: true
+ metric: 10
+ metric_type: 2
+ route_map: 'ingress'
+ mpls_te:
+ enabled: true
+ router_address: '192.0.11.11'
+ auto_cost:
+ reference_bandwidth: 2
+ neighbor:
+ - neighbor_id: '192.0.11.12'
+ poll_interval: 10
+ priority: 2
+ redistribute:
+ - route_type: 'bgp'
+ metric: 10
+ metric_type: 2
+ passive_interface:
+ - 'eth1'
+ - 'eth2'
+ parameters:
+ router_id: '192.0.1.1'
+ opaque_lsa: true
+ rfc1583_compatibility: true
+ abr_type: 'cisco'
+ areas:
+ - area_id: '2'
+ area_type:
+ normal: true
+ authentication: "plaintext-password"
+ shortcut: 'enable'
+ - area_id: '3'
+ area_type:
+ nssa:
+ set: true
+ - area_id: '4'
+ area_type:
+ stub:
+ default_cost: 20
+ network:
+ - address: '192.0.2.0/24'
+ range:
+ - address: '192.0.3.0/24'
+ cost: 10
+ - address: '192.0.4.0/24'
+ cost: 12
+ state: rendered
#
#
# -------------------------
# Module Execution Result
# -------------------------
#
-# before": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "connetced",
-# "metric_type": 2
-# "route_map": "CONNECT"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connetced",
-# }
-# ]
-# }
-# ]
#
-# "commands": [
-# "delete protocols ospf redistribute connected",
-# "set protocols ospf area 0 area_type normal",
-# "set protocols ospf redistribute static metric-type 2",
-# "set protocols ospf redistribute static route-map CONNECT"
+# "rendered": [
+# [
+# "set protocols ospf mpls-te enable",
+# "set protocols ospf mpls-te router-address '192.0.11.11'",
+# "set protocols ospf redistribute bgp",
+# "set protocols ospf redistribute bgp metric-type 2",
+# "set protocols ospf redistribute bgp metric 10",
+# "set protocols ospf default-information originate metric-type 2",
+# "set protocols ospf default-information originate always",
+# "set protocols ospf default-information originate metric 10",
+# "set protocols ospf default-information originate route-map ingress",
+# "set protocols ospf auto-cost reference-bandwidth '2'",
+# "set protocols ospf parameters router-id '192.0.1.1'",
+# "set protocols ospf parameters opaque-lsa",
+# "set protocols ospf parameters abr-type 'cisco'",
+# "set protocols ospf parameters rfc1583-compatibility",
+# "set protocols ospf passive-interface eth1",
+# "set protocols ospf passive-interface eth2",
+# "set protocols ospf max-metric router-lsa on-shutdown 10",
+# "set protocols ospf max-metric router-lsa administrative",
+# "set protocols ospf max-metric router-lsa on-startup 10",
+# "set protocols ospf log-adjacency-changes 'detail'",
+# "set protocols ospf neighbor 192.0.11.12 priority 2",
+# "set protocols ospf neighbor 192.0.11.12 poll-interval 10",
+# "set protocols ospf neighbor 192.0.11.12",
+# "set protocols ospf area '2'",
+# "set protocols ospf area 2 authentication plaintext-password",
+# "set protocols ospf area 2 shortcut enable",
+# "set protocols ospf area 2 area-type normal",
+# "set protocols ospf area '3'",
+# "set protocols ospf area 3 area-type nssa",
+# "set protocols ospf area 4 range 192.0.3.0/24 cost 10",
+# "set protocols ospf area 4 range 192.0.3.0/24",
+# "set protocols ospf area 4 range 192.0.4.0/24 cost 12",
+# "set protocols ospf area 4 range 192.0.4.0/24",
+# "set protocols ospf area 4 area-type stub default-cost 20",
+# "set protocols ospf area '4'",
+# "set protocols ospf area 4 network 192.0.2.0/24"
# ]
+
+
+# Using parsed
+#
+#
+- name: Render the commands for provided configuration
+ vyos.vyos.vyos_ospfv2:
+ running_config:
+ "set protocols ospf area 2 area-type 'normal'
+ set protocols ospf area 2 authentication 'plaintext-password'
+ set protocols ospf area 2 shortcut 'enable'
+ set protocols ospf area 3 area-type 'nssa'
+ set protocols ospf area 4 area-type stub default-cost '20'
+ set protocols ospf area 4 network '192.0.2.0/24'
+ set protocols ospf area 4 range 192.0.3.0/24 cost '10'
+ set protocols ospf area 4 range 192.0.4.0/24 cost '12'
+ set protocols ospf auto-cost reference-bandwidth '2'
+ set protocols ospf default-information originate 'always'
+ set protocols ospf default-information originate metric '10'
+ set protocols ospf default-information originate metric-type '2'
+ set protocols ospf default-information originate route-map 'ingress'
+ set protocols ospf log-adjacency-changes 'detail'
+ set protocols ospf max-metric router-lsa 'administrative'
+ set protocols ospf max-metric router-lsa on-shutdown '10'
+ set protocols ospf max-metric router-lsa on-startup '10'
+ set protocols ospf mpls-te 'enable'
+ set protocols ospf mpls-te router-address '192.0.11.11'
+ set protocols ospf neighbor 192.0.11.12 poll-interval '10'
+ set protocols ospf neighbor 192.0.11.12 priority '2'
+ set protocols ospf parameters abr-type 'cisco'
+ set protocols ospf parameters 'opaque-lsa'
+ set protocols ospf parameters 'rfc1583-compatibility'
+ set protocols ospf parameters router-id '192.0.1.1'
+ set protocols ospf passive-interface 'eth1'
+ set protocols ospf passive-interface 'eth2'
+ set protocols ospf redistribute bgp metric '10'
+ set protocols ospf redistribute bgp metric-type '2'"
+ state: parsed
#
-# "after": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "area_type":
-# {
-# normal: true
-# }
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "static",
-# "metric_type": 2
-# "route_map": "STATIC"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connected",
-# }
-# ]
-# }
-# ]
#
-# After state:
-# -------------
+# -------------------------
+# Module Execution Result
+# -------------------------
+#
#
-# vyos@vyos:~$ show configuration commands| grep firewall
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute static metric-type 2
-# set protocols ospf redistribute static route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:2::/64
-# set protocols ospfv3 parameters router-id 192.168.2.1
-# set protocols ospfv3 redistribute connected
+# "parsed": {
+# "areas": [
+# {
+# "area_id": "2",
+# "area_type": {
+# "normal": true
+# },
+# "authentication": "plaintext-password",
+# "shortcut": "enable"
+# },
+# {
+# "area_id": "3",
+# "area_type": {
+# "nssa": {
+# "set": true
+# }
+# }
+# },
+# {
+# "area_id": "4",
+# "area_type": {
+# "stub": {
+# "default_cost": 20,
+# "set": true
+# }
+# },
+# "network": [
+# {
+# "address": "192.0.2.0/24"
+# }
+# ],
+# "range": [
+# {
+# "address": "192.0.3.0/24",
+# "cost": 10
+# },
+# {
+# "address": "192.0.4.0/24",
+# "cost": 12
+# }
+# ]
+# }
+# ],
+# "auto_cost": {
+# "reference_bandwidth": 2
+# },
+# "default_information": {
+# "originate": {
+# "always": true,
+# "metric": 10,
+# "metric_type": 2,
+# "route_map": "ingress"
+# }
+# },
+# "log_adjacency_changes": "detail",
+# "max_metric": {
+# "router_lsa": {
+# "administrative": true,
+# "on_shutdown": 10,
+# "on_startup": 10
+# }
+# },
+# "mpls_te": {
+# "enabled": true,
+# "router_address": "192.0.11.11"
+# },
+# "neighbor": [
+# {
+# "neighbor_id": "192.0.11.12",
+# "poll_interval": 10,
+# "priority": 2
+# }
+# ],
+# "parameters": {
+# "abr_type": "cisco",
+# "opaque_lsa": true,
+# "rfc1583_compatibility": true,
+# "router_id": "192.0.1.1"
+# },
+# "passive_interface": [
+# "eth2",
+# "eth1"
+# ],
+# "redistribute": [
+# {
+# "metric": 10,
+# "metric_type": 2,
+# "route_type": "bgp"
+# }
+# ]
+# }
+# }
-# Using replaced
+# Using gathered
#
# Before state:
# -------------
#
# vyos@192# run show configuration commands | grep ospf
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute connected metric-type 2
-# set protocols ospf redistribute connected route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:1::/64
-# set protocols ospfv3 parameters router-id 192.168.1.1
-# set protocols ospfv3 redistribute connected
-#
-- name: Replace the provided configuration with the existing running configuration
- vyos_ospf_routes:
- config:
- - afi: 'ipv4'
- ospf_area:
- - area: 0
- network: 192.168.0.0/24
- area_type:
- normal: True
- default_information:
- originate:
- always: true
- metric: 2
- metric_type: 10
- log_adjacency_changes: "details"
- parameters:
- router_id: 10.1.1.1
- redistribute:
- - route_type: 'static'
- metric_type: 2
- route_map: 'STATIC'
- - afi: 'ipv6'
- ospf_area:
- - area: 0.0.0.0
- range: 2001:db8:1::/64
- parameters:
- router-id 192.168.1.1
- redistribute:
- - route_type: 'connected'
- state: replaced
+# set protocols ospf area 2 area-type 'normal'
+# set protocols ospf area 2 authentication 'plaintext-password'
+# set protocols ospf area 2 shortcut 'enable'
+# set protocols ospf area 3 area-type 'nssa'
+# set protocols ospf area 4 area-type stub default-cost '20'
+# set protocols ospf area 4 network '192.0.2.0/24'
+# set protocols ospf area 4 range 192.0.3.0/24 cost '10'
+# set protocols ospf area 4 range 192.0.4.0/24 cost '12'
+# set protocols ospf auto-cost reference-bandwidth '2'
+# set protocols ospf default-information originate 'always'
+# set protocols ospf default-information originate metric '10'
+# set protocols ospf default-information originate metric-type '2'
+# set protocols ospf default-information originate route-map 'ingress'
+# set protocols ospf log-adjacency-changes 'detail'
+# set protocols ospf max-metric router-lsa 'administrative'
+# set protocols ospf max-metric router-lsa on-shutdown '10'
+# set protocols ospf max-metric router-lsa on-startup '10'
+# set protocols ospf mpls-te 'enable'
+# set protocols ospf mpls-te router-address '192.0.11.11'
+# set protocols ospf neighbor 192.0.11.12 poll-interval '10'
+# set protocols ospf neighbor 192.0.11.12 priority '2'
+# set protocols ospf parameters abr-type 'cisco'
+# set protocols ospf parameters 'opaque-lsa'
+# set protocols ospf parameters 'rfc1583-compatibility'
+# set protocols ospf parameters router-id '192.0.1.1'
+# set protocols ospf passive-interface 'eth1'
+# set protocols ospf passive-interface 'eth2'
+# set protocols ospf redistribute bgp metric '10'
+# set protocols ospf redistribute bgp metric-type '2'
+#
+- name: Gather ospfv2 routes config with provided configurations
+ vyos.vyos.vyos_ospfv2:
+ config:
+ state: gathered
#
#
# -------------------------
# Module Execution Result
# -------------------------
#
-# before": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "connetced",
-# "metric_type": 2
-# "route_map": "CONNECT"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connetced",
-# }
-# ]
-# }
-# ]
-#
-# "commands": [
-# "delete protocols ospf redistribute connected",
-# "set protocols ospf area 0 area_type normal",
-# "set protocols ospf redistribute static metric-type 2",
-# "set protocols ospf redistribute static route-map CONNECT"
-# ]
-#
-# "after": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "area_type":
-# {
-# normal: true
-# }
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "static",
-# "metric_type": 2
-# "route_map": "STATIC"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connected",
-# }
-# ]
+# "gathered": {
+# "areas": [
+# {
+# "area_id": "2",
+# "area_type": {
+# "normal": true
+# },
+# "authentication": "plaintext-password",
+# "shortcut": "enable"
+# },
+# {
+# "area_id": "3",
+# "area_type": {
+# "nssa": {
+# "set": true
+# }
# }
-# ]
+# },
+# {
+# "area_id": "4",
+# "area_type": {
+# "stub": {
+# "default_cost": 20,
+# "set": true
+# }
+# },
+# "network": [
+# {
+# "address": "192.0.2.0/24"
+# }
+# ],
+# "range": [
+# {
+# "address": "192.0.3.0/24",
+# "cost": 10
+# },
+# {
+# "address": "192.0.4.0/24",
+# "cost": 12
+# }
+# ]
+# }
+# ],
+# "auto_cost": {
+# "reference_bandwidth": 2
+# },
+# "default_information": {
+# "originate": {
+# "always": true,
+# "metric": 10,
+# "metric_type": 2,
+# "route_map": "ingress"
+# }
+# },
+# "log_adjacency_changes": "detail",
+# "max_metric": {
+# "router_lsa": {
+# "administrative": true,
+# "on_shutdown": 10,
+# "on_startup": 10
+# }
+# },
+# "mpls_te": {
+# "enabled": true,
+# "router_address": "192.0.11.11"
+# },
+# "neighbor": [
+# {
+# "neighbor_id": "192.0.11.12",
+# "poll_interval": 10,
+# "priority": 2
+# }
+# ],
+# "parameters": {
+# "abr_type": "cisco",
+# "opaque_lsa": true,
+# "rfc1583_compatibility": true,
+# "router_id": "192.0.1.1"
+# },
+# "passive_interface": [
+# "eth2",
+# "eth1"
+# ],
+# "redistribute": [
+# {
+# "metric": 10,
+# "metric_type": 2,
+# "route_type": "bgp"
+# }
+# ]
+# }
#
# After state:
# -------------
#
-# vyos@vyos:~$ show configuration commands| grep firewall
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute static metric-type 2
-# set protocols ospf redistribute static route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:2::/64
-# set protocols ospfv3 parameters router-id 192.168.2.1
-# set protocols ospfv3 redistribute connected
+# vyos@192# run show configuration commands | grep ospf
+# set protocols ospf area 2 area-type 'normal'
+# set protocols ospf area 2 authentication 'plaintext-password'
+# set protocols ospf area 2 shortcut 'enable'
+# set protocols ospf area 3 area-type 'nssa'
+# set protocols ospf area 4 area-type stub default-cost '20'
+# set protocols ospf area 4 network '192.0.2.0/24'
+# set protocols ospf area 4 range 192.0.3.0/24 cost '10'
+# set protocols ospf area 4 range 192.0.4.0/24 cost '12'
+# set protocols ospf auto-cost reference-bandwidth '2'
+# set protocols ospf default-information originate 'always'
+# set protocols ospf default-information originate metric '10'
+# set protocols ospf default-information originate metric-type '2'
+# set protocols ospf default-information originate route-map 'ingress'
+# set protocols ospf log-adjacency-changes 'detail'
+# set protocols ospf max-metric router-lsa 'administrative'
+# set protocols ospf max-metric router-lsa on-shutdown '10'
+# set protocols ospf max-metric router-lsa on-startup '10'
+# set protocols ospf mpls-te 'enable'
+# set protocols ospf mpls-te router-address '192.0.11.11'
+# set protocols ospf neighbor 192.0.11.12 poll-interval '10'
+# set protocols ospf neighbor 192.0.11.12 priority '2'
+# set protocols ospf parameters abr-type 'cisco'
+# set protocols ospf parameters 'opaque-lsa'
+# set protocols ospf parameters 'rfc1583-compatibility'
+# set protocols ospf parameters router-id '192.0.1.1'
+# set protocols ospf passive-interface 'eth1'
+# set protocols ospf passive-interface 'eth2'
+# set protocols ospf redistribute bgp metric '10'
+# set protocols ospf redistribute bgp metric-type '2'
# Using deleted
#
-# Before state:
+# Before state
# -------------
#
# vyos@192# run show configuration commands | grep ospf
-# set protocols ospf area 0 network 192.168.0.0/24
-# set protocols ospf default-information originate always
-# set protocols ospf default-information originate metric 10
-# set protocols ospf default-information originate metric-type 2
-# set protocols ospf log-adjacency-changes details
-# set protocols ospf parameters router-id 10.1.1.1
-# set protocols ospf redistribute connected metric-type 2
-# set protocols ospf redistribute connected route-map CONNECT
-# set protocols ospfv3 area 0.0.0.0 range 2001:db8:1::/64
-# set protocols ospfv3 parameters router-id 192.168.1.1
-# set protocols ospfv3 redistribute connected
-#
-- name: Delete all the configuration
- vyos_ospf_routes:
+# set protocols ospf area 2 area-type 'normal'
+# set protocols ospf area 2 authentication 'plaintext-password'
+# set protocols ospf area 2 shortcut 'enable'
+# set protocols ospf area 3 area-type 'nssa'
+# set protocols ospf area 4 area-type stub default-cost '20'
+# set protocols ospf area 4 network '192.0.2.0/24'
+# set protocols ospf area 4 range 192.0.3.0/24 cost '10'
+# set protocols ospf area 4 range 192.0.4.0/24 cost '12'
+# set protocols ospf auto-cost reference-bandwidth '2'
+# set protocols ospf default-information originate 'always'
+# set protocols ospf default-information originate metric '10'
+# set protocols ospf default-information originate metric-type '2'
+# set protocols ospf default-information originate route-map 'ingress'
+# set protocols ospf log-adjacency-changes 'detail'
+# set protocols ospf max-metric router-lsa 'administrative'
+# set protocols ospf max-metric router-lsa on-shutdown '10'
+# set protocols ospf max-metric router-lsa on-startup '10'
+# set protocols ospf mpls-te 'enable'
+# set protocols ospf mpls-te router-address '192.0.11.11'
+# set protocols ospf neighbor 192.0.11.12 poll-interval '10'
+# set protocols ospf neighbor 192.0.11.12 priority '2'
+# set protocols ospf parameters abr-type 'cisco'
+# set protocols ospf parameters 'opaque-lsa'
+# set protocols ospf parameters 'rfc1583-compatibility'
+# set protocols ospf parameters router-id '192.0.1.1'
+# set protocols ospf passive-interface 'eth1'
+# set protocols ospf passive-interface 'eth2'
+# set protocols ospf redistribute bgp metric '10'
+# set protocols ospf redistribute bgp metric-type '2'
+#
+- name: Delete single attributes of ospfv2 routes.
+ vyos.vyos.vyos_ospfv2:
config:
+ log_adjacency_changes: 'detail'
+ max_metric:
+ default_information:
+ mpls_te:
+ neighbor:
+ redistribute:
+ parameters:
+ passive_interface:
+ areas:
state: deleted
#
#
-# -------------------------
-# Module Execution Result
-# -------------------------
-#
-# before": [
-# {
-# {
-# "afi": "ipv4",
-# "ospf_area":[
-# {
-# "area": "0",
-# "network": "192.168.0.0/24"
-# }
-# ],
-# "default_information":
-# {
-# "originate":
-# {
-# always: true,
-# metric: 2,
-# metric_type: 10
-# }
-# },
-# "log_adjacency_changes": "details"
-# "parameters":
-# {
-# "router_id": "10.1.1.1"
-# },
-# "redistribute":[
-# {
-# "route_type": "connetced",
-# "metric_type": 2
-# "route_map": "CONNECT"
-# }
-# ]
-# },
-# {
-# "afi": "ipv6",
-# "ospf_area":[
-# {
-# "area": "0.0.0.0",
-# }
-# ],
-# "range": "2001:db8:1::/64",
-# "parameters":
-# {
-# "router_id": "192.168.1.1"
-# },
-# "redistribute":
-# [
-# {
-# "route_type": "connetced",
-# }
-# ]
+# ------------------------
+# Module Execution Results
+# ------------------------
+#
+# "before": {
+# "areas": [
+# {
+# "area_id": "2",
+# "area_type": {
+# "normal": true
+# },
+# "authentication": "plaintext-password",
+# "shortcut": "enable"
+# },
+# {
+# "area_id": "3",
+# "area_type": {
+# "nssa": {
+# "set": true
+# }
# }
-# ]
-#
-# "commands": [
-# "delete protocols ospf",
-# "delete protocols ospfv3",
+# },
+# {
+# "area_id": "4",
+# "area_type": {
+# "stub": {
+# "default_cost": 20,
+# "set": true
+# }
+# },
+# "network": [
+# {
+# "address": "192.0.2.0/24"
+# }
+# ],
+# "range": [
+# {
+# "address": "192.0.3.0/24",
+# "cost": 10
+# },
+# {
+# "address": "192.0.4.0/24",
+# "cost": 12
+# }
+# ]
+# }
+# ],
+# "auto_cost": {
+# "reference_bandwidth": 2
+# },
+# "default_information": {
+# "originate": {
+# "always": true,
+# "metric": 10,
+# "metric_type": 2,
+# "route_map": "ingress"
+# }
+# },
+# "log_adjacency_changes": "detail",
+# "max_metric": {
+# "router_lsa": {
+# "administrative": true,
+# "on_shutdown": 10,
+# "on_startup": 10
+# }
+# },
+# "mpls_te": {
+# "enabled": true,
+# "router_address": "192.0.11.11"
+# },
+# "neighbor": [
+# {
+# "neighbor_id": "192.0.11.12",
+# "poll_interval": 10,
+# "priority": 2
+# }
+# ],
+# "parameters": {
+# "abr_type": "cisco",
+# "opaque_lsa": true,
+# "rfc1583_compatibility": true,
+# "router_id": "192.0.1.1"
+# },
+# "passive_interface": [
+# "eth2",
+# "eth1"
+# ],
+# "redistribute": [
+# {
+# "metric": 10,
+# "metric_type": 2,
+# "route_type": "bgp"
+# }
+# ]
+# }
+# "commands": [
+# "delete protocols ospf mpls-te",
+# "delete protocols ospf redistribute",
+# "delete protocols ospf auto-cost",
+# "delete protocols ospf passive-interface",
+# "delete protocols ospf parameters",
+# "delete protocols ospf default-information",
+# "delete protocols ospf max-metric",
+# "delete protocols ospf log-adjacency-changes",
+# "delete protocols ospf neighbor",
+# "delete protocols ospf area 2",
+# "delete protocols ospf area 3",
+# "delete protocols ospf area 4",
+# "delete protocols ospf area"
# ]
#
# "after": []
+# After state
+# ------------
+# vyos@192# run show configuration commands | grep ospf
+
+
+# Using deleted
#
-# After state:
+# Before state
# -------------
#
-# vyos@vyos:~$ show configuration commands| grep firewall
+# vyos@192# run show configuration commands | grep ospf
+# set protocols ospf area 2 area-type 'normal'
+# set protocols ospf area 2 authentication 'plaintext-password'
+# set protocols ospf area 2 shortcut 'enable'
+# set protocols ospf area 3 area-type 'nssa'
+# set protocols ospf area 4 area-type stub default-cost '20'
+# set protocols ospf area 4 network '192.0.2.0/24'
+# set protocols ospf area 4 range 192.0.3.0/24 cost '10'
+# set protocols ospf area 4 range 192.0.4.0/24 cost '12'
+# set protocols ospf auto-cost reference-bandwidth '2'
+# set protocols ospf default-information originate 'always'
+# set protocols ospf default-information originate metric '10'
+# set protocols ospf default-information originate metric-type '2'
+# set protocols ospf default-information originate route-map 'ingress'
+# set protocols ospf log-adjacency-changes 'detail'
+# set protocols ospf max-metric router-lsa 'administrative'
+# set protocols ospf max-metric router-lsa on-shutdown '10'
+# set protocols ospf max-metric router-lsa on-startup '10'
+# set protocols ospf mpls-te 'enable'
+# set protocols ospf mpls-te router-address '192.0.11.11'
+# set protocols ospf neighbor 192.0.11.12 poll-interval '10'
+# set protocols ospf neighbor 192.0.11.12 priority '2'
+# set protocols ospf parameters abr-type 'cisco'
+# set protocols ospf parameters 'opaque-lsa'
+# set protocols ospf parameters 'rfc1583-compatibility'
+# set protocols ospf parameters router-id '192.0.1.1'
+# set protocols ospf passive-interface 'eth1'
+# set protocols ospf passive-interface 'eth2'
+# set protocols ospf redistribute bgp metric '10'
+# set protocols ospf redistribute bgp metric-type '2'
+#
+- name: Delete attributes of ospfv2 routes.
+ vyos.vyos.vyos_ospfv2:
+ config:
+ state: deleted
+#
+#
+# ------------------------
+# Module Execution Results
+# ------------------------
+#
+# "before": {
+# "areas": [
+# {
+# "area_id": "2",
+# "area_type": {
+# "normal": true
+# },
+# "authentication": "plaintext-password",
+# "shortcut": "enable"
+# },
+# {
+# "area_id": "3",
+# "area_type": {
+# "nssa": {
+# "set": true
+# }
+# }
+# },
+# {
+# "area_id": "4",
+# "area_type": {
+# "stub": {
+# "default_cost": 20,
+# "set": true
+# }
+# },
+# "network": [
+# {
+# "address": "192.0.2.0/24"
+# }
+# ],
+# "range": [
+# {
+# "address": "192.0.3.0/24",
+# "cost": 10
+# },
+# {
+# "address": "192.0.4.0/24",
+# "cost": 12
+# }
+# ]
+# }
+# ],
+# "auto_cost": {
+# "reference_bandwidth": 2
+# },
+# "default_information": {
+# "originate": {
+# "always": true,
+# "metric": 10,
+# "metric_type": 2,
+# "route_map": "ingress"
+# }
+# },
+# "log_adjacency_changes": "detail",
+# "max_metric": {
+# "router_lsa": {
+# "administrative": true,
+# "on_shutdown": 10,
+# "on_startup": 10
+# }
+# },
+# "mpls_te": {
+# "enabled": true,
+# "router_address": "192.0.11.11"
+# },
+# "neighbor": [
+# {
+# "neighbor_id": "192.0.11.12",
+# "poll_interval": 10,
+# "priority": 2
+# }
+# ],
+# "parameters": {
+# "abr_type": "cisco",
+# "opaque_lsa": true,
+# "rfc1583_compatibility": true,
+# "router_id": "192.0.1.1"
+# },
+# "passive_interface": [
+# "eth2",
+# "eth1"
+# ],
+# "redistribute": [
+# {
+# "metric": 10,
+# "metric_type": 2,
+# "route_type": "bgp"
+# }
+# ]
+# }
+# "commands": [
+# "delete protocols ospf"
+# ]
+#
+# "after": []
+# After state
+# ------------
+# vyos@192# run show configuration commands | grep ospf
"""
@@ -1320,12 +1929,14 @@ RETURN = """
before:
description: The configuration prior to the model invocation.
returned: always
+ type: dict
sample: >
The configuration returned will always be in the same format
of the parameters above.
after:
description: The resulting configuration model invocation.
returned: when changed
+ type: dict
sample: >
The configuration returned will always be in the same format
of the parameters above.
@@ -1333,7 +1944,8 @@ commands:
description: The set of commands pushed to the remote device.
returned: always
type: list
- sample: ['command 1', 'command 2', 'command 3']
+ sample: ['set protocols ospf parameters router-id 192.0.1.1',
+ 'set protocols ospf passive-interface 'eth1']
"""