arista.eos.eos_ospf_interfaces – OSPF Interfaces Resource Module.¶
Note
This plugin is part of the arista.eos collection (version 1.3.0).
To install it use: ansible-galaxy collection install arista.eos
.
To use it in a playbook, specify: arista.eos.eos_ospf_interfaces
.
New in version 1.1.0: of arista.eos
Synopsis¶
This module manages OSPF configuration of interfaces on devices running Arista EOS.
Note
This module has a corresponding action plugin.
Parameters¶
Examples¶
# Using merged
# Before state
# veos(config)#show running-config | section interface | ospf
# veos(config)#
- name: Merge provided configuration with device configuration
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
address_family:
- afi: "ipv4"
area:
area_id: "0.0.0.50"
cost: 500
mtu_ignore: True
- afi: "ipv6"
dead_interval: 44
ip_params:
- afi: "ipv6"
mtu_ignore: True
network: "point-to-point"
state: merged
# After State
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ip ospf cost 500
# ip ospf mtu-ignore
# ip ospf area 0.0.0.50
# ospfv3 dead-interval 44
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# veos(config)#
#
#
# Module Execution:
#
# "after": [
# {
# "name": "Ethernet1"
# },
# {
# "name": "Ethernet2"
# },
# {
# "name": "Management1"
# },
# {
# "address_family": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.50"
# },
# "cost": 500,
# "mtu_ignore": True
# },
# {
# "afi": "ipv6",
# "dead_interval": 44,
# "ip_params": [
# {
# "afi": "ipv6",
# "mtu_ignore": True,
# "network": "point-to-point"
# }
# ]
# }
# ],
# "name": "Vlan1"
# }
# ],
# "before": [
# {
# "name": "Ethernet1"
# },
# {
# "name": "Ethernet2"
# },
# {
# "name": "Management1"
# }
# ],
# "changed": True,
# "commands": [
# "interface Vlan1",
# "ip ospf area 0.0.0.50",
# "ip ospf cost 500",
# "ip ospf mtu-ignore",
# "ospfv3 dead-interval 44",
# "ospfv3 ipv6 mtu-ignore",
# "ospfv3 ipv6 network point-to-point"
# ],
#
# Using replaced
#---------------
# Before State:
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ip ospf cost 500
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ip ospf area 0.0.0.50
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 dead-interval 44
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
# veos(config)#
- name: Replace device configuration with provided configuration
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
address_family:
- afi: "ipv6"
cost: 44
bfd: True
ip_params:
- afi: "ipv6"
mtu_ignore: True
network: "point-to-point"
dead_interval: 56
state: replaced
# After State:
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ospfv3 bfd
# ospfv3 cost 44
# no ospfv3 ipv6 passive-interface
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
# veos(config)#
#
# Module Execution:
#
# "after": [
# {
# "name": "Ethernet1"
# },
# {
# "name": "Ethernet2"
# },
# {
# "name": "Management1"
# },
# {
# "address_family": [
# {
# "afi": "ipv6",
# "bfd": True,
# "cost": 44,
# "ip_params": [
# {
# "afi": "ipv6",
# "mtu_ignore": True,
# "network": "point-to-point"
# }
# ]
# }
# ],
# "name": "Vlan1"
# },
# {
# "address_family": [
# {
# "afi": "ipv6",
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.6"
# },
# "hello_interval": 45,
# "retransmit_interval": 100
# }
# ]
# }
# ],
# "name": "Vlan2"
# }
# ],
# "before": [
# {
# "name": "Ethernet1"
# },
# {
# "name": "Ethernet2"
# },
# {
# "name": "Management1"
# },
# {
# "address_family": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.50"
# },
# "cost": 500,
# "dead_interval": 29,
# "hello_interval": 66,
# "mtu_ignore": True
# },
# {
# "afi": "ipv6",
# "cost": 106,
# "dead_interval": 44,
# "hello_interval": 77,
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.5"
# },
# "priority": 45
# },
# {
# "afi": "ipv6",
# "mtu_ignore": True,
# "network": "point-to-point",
# "passive_interface": True,
# "retransmit_interval": 115
# }
# ],
# "transmit_delay": 100
# }
# ],
# "name": "Vlan1"
# },
# {
# "address_family": [
# {
# "afi": "ipv6",
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.6"
# },
# "hello_interval": 45,
# "retransmit_interval": 100
# }
# ]
# }
# ],
# "name": "Vlan2"
# }
# ],
# "changed": True,
# "commands": [
# "interface Vlan1",
# "no ip ospf cost 500",
# "no ip ospf dead-interval 29",
# "no ip ospf hello-interval 66",
# "no ip ospf mtu-ignore",
# "no ip ospf area 0.0.0.50",
# "ospfv3 cost 44",
# "ospfv3 bfd",
# "ospfv3 authentication ipsec spi 30 md5 passphrase 7 7hl8FV3lZ6H1mAKpjL47hQ==",
# "no ospfv3 ipv4 priority 45",
# "no ospfv3 ipv4 area 0.0.0.5",
# "ospfv3 ipv6 dead-interval 56",
# "no ospfv3 ipv6 passive-interface",
# "no ospfv3 ipv6 retransmit-interval 115",
# "no ospfv3 hello-interval 77",
# "no ospfv3 dead-interval 44",
# "no ospfv3 transmit-delay 100"
# ],
#
# Using overidden:
# ----------------
# Before State:
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ospfv3 bfd
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
# veos(config)#
- name: Override device configuration with provided configuration
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
address_family:
- afi: "ipv6"
cost: 44
bfd: True
ip_params:
- afi: "ipv6"
mtu_ignore: True
network: "point-to-point"
dead_interval: 56
state: overridden
# After State:
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ospfv3 bfd
# ospfv3 cost 44
# no ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# veos(config)#
#
#
# Module Execution:
#
# "after": [
# {
# "name": "Ethernet1"
# },
# {
# "name": "Ethernet2"
# },
# {
# "name": "Management1"
# },
# {
# "address_family": [
# {
# "afi": "ipv6",
# "bfd": True,
# "cost": 44,
# "ip_params": [
# {
# "afi": "ipv6",
# "dead_interval": 56,
# "mtu_ignore": True,
# "network": "point-to-point"
# }
# ]
# }
# ],
# "name": "Vlan1"
# },
# {
# "name": "Vlan2"
# }
# ],
# "before": [
# {
# "name": "Ethernet1"
# },
# {
# "name": "Ethernet2"
# },
# {
# "name": "Management1"
# },
# {
# "address_family": [
# {
# "afi": "ipv4",
# "dead_interval": 29,
# "hello_interval": 66,
# "mtu_ignore": True
# },
# {
# "afi": "ipv6",
# "bfd": True,
# "cost": 106,
# "hello_interval": 77,
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.5"
# },
# "priority": 45
# },
# {
# "afi": "ipv6",
# "dead_interval": 56,
# "mtu_ignore": True,
# "network": "point-to-point",
# "passive_interface": True,
# "retransmit_interval": 115
# }
# ],
# "transmit_delay": 100
# }
# ],
# "name": "Vlan1"
# },
# {
# "address_family": [
# {
# "afi": "ipv6",
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.6"
# },
# "hello_interval": 45,
# "retransmit_interval": 100
# }
# ]
# }
# ],
# "name": "Vlan2"
# }
# ],
# "changed": True,
# "commands": [
# "interface Vlan2",
# "no ospfv3 ipv4 hello-interval 45",
# "no ospfv3 ipv4 retransmit-interval 100",
# "no ospfv3 ipv4 area 0.0.0.6",
# "interface Vlan1",
# "no ip ospf dead-interval 29",
# "no ip ospf hello-interval 66",
# "no ip ospf mtu-ignore",
# "ospfv3 cost 44",
# "ospfv3 authentication ipsec spi 30 md5 passphrase 7 7hl8FV3lZ6H1mAKpjL47hQ==",
# "no ospfv3 ipv4 priority 45",
# "no ospfv3 ipv4 area 0.0.0.5",
# "no ospfv3 ipv6 passive-interface",
# "no ospfv3 ipv6 retransmit-interval 115",
# "no ospfv3 hello-interval 77",
# "no ospfv3 transmit-delay 100"
# ],
#
# Using deleted:
#--------------
# before State:
# veos(config)#show running-config | section interface | ospf
# interface Vlan1
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ospfv3 bfd
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
# veos(config)#
- name: Delete device configuration
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
state: deleted
# After State:
# veos#show running-config | section interface | ospf
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
#
# Module Execution:
#
# "after": [
# {
# "name": "Ethernet1"
# },
# {
# "name": "Ethernet2"
# },
# {
# "name": "Management1"
# },
# {
# "name": "Vlan1"
# },
# {
# "address_family": [
# {
# "afi": "ipv6",
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.6"
# },
# "hello_interval": 45,
# "retransmit_interval": 100
# }
# ]
# }
# ],
# "name": "Vlan2"
# }
# ],
# "before": [
# {
# "name": "Ethernet1"
# },
# {
# "name": "Ethernet2"
# },
# {
# "name": "Management1"
# },
# {
# "address_family": [
# {
# "afi": "ipv4",
# "dead_interval": 29,
# "hello_interval": 66,
# "mtu_ignore": True
# },
# {
# "afi": "ipv6",
# "bfd": True,
# "cost": 106,
# "hello_interval": 77,
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.5"
# },
# "priority": 45
# },
# {
# "afi": "ipv6",
# "dead_interval": 56,
# "mtu_ignore": True,
# "network": "point-to-point",
# "passive_interface": True,
# "retransmit_interval": 115
# }
# ],
# "transmit_delay": 100
# }
# ],
# "name": "Vlan1"
# },
# {
# "address_family": [
# {
# "afi": "ipv6",
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.6"
# },
# "hello_interval": 45,
# "retransmit_interval": 100
# }
# ]
# }
# ],
# "name": "Vlan2"
# }
# ],
# "changed": True,
# "commands": [
# "interface Vlan1",
# "no ip ospf dead-interval 29",
# "no ip ospf hello-interval 66",
# "no ip ospf mtu-ignore",
# "no ospfv3 bfd",
# "no ospfv3 cost 106",
# "no ospfv3 hello-interval 77",
# "no ospfv3 transmit-delay 100",
# "no ospfv3 ipv4 priority 45",
# "no ospfv3 ipv4 area 0.0.0.5",
# "no ospfv3 ipv6 passive-interface",
# "no ospfv3 ipv6 dead-interval 56",
# "no ospfv3 ipv6 retransmit-interval 115",
# "no ospfv3 ipv6 network point-to-point",
# "no ospfv3 ipv6 mtu-ignore"
# ],
#
# Using parsed:
# ------------
# parsed.cfg:
# ----------
# interface Vlan1
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ip ospf cost 500
# ospfv3 bfd
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
#
- name: parse configs
arista.eos.eos_ospf_interfaces:
running_config: "{{ lookup('file', './parsed.cfg') }}"
state: parsed
# Module Execution:
# "parsed": [
# {
# "address_family": [
# {
# "afi": "ipv4",
# "cost": 500,
# "dead_interval": 29,
# "hello_interval": 66,
# "mtu_ignore": True
# },
# {
# "afi": "ipv6",
# "bfd": True,
# "cost": 106,
# "hello_interval": 77,
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.5"
# },
# "priority": 45
# },
# {
# "afi": "ipv6",
# "dead_interval": 56,
# "mtu_ignore": True,
# "network": "point-to-point",
# "passive_interface": True,
# "retransmit_interval": 115
# }
# ],
# "transmit_delay": 100
# }
# ],
# "name": "Vlan1"
# },
# {
# "address_family": [
# {
# "afi": "ipv6",
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.6"
# },
# "hello_interval": 45,
# "retransmit_interval": 100
# }
# ]
# }
# ],
# "name": "Vlan2"
# }
# ]
# Using gathered:
# Device COnfig:
# veos#show running-config | section interface | ospf
# interface Vlan1
# ip ospf cost 500
# ip ospf dead-interval 29
# ip ospf hello-interval 66
# ip ospf mtu-ignore
# ip ospf area 0.0.0.50
# ospfv3 cost 106
# ospfv3 hello-interval 77
# ospfv3 transmit-delay 100
# ospfv3 ipv4 priority 45
# ospfv3 ipv4 area 0.0.0.5
# ospfv3 ipv6 passive-interface
# ospfv3 ipv6 dead-interval 56
# ospfv3 ipv6 retransmit-interval 115
# ospfv3 ipv6 network point-to-point
# ospfv3 ipv6 mtu-ignore
# !
# interface Vlan2
# ospfv3 ipv4 hello-interval 45
# ospfv3 ipv4 retransmit-interval 100
# ospfv3 ipv4 area 0.0.0.6
# veos#
- name: gather configs
arista.eos.eos_ospf_interfaces:
state: gathered
# Module Execution:
#
# "gathered": [
# {
# "name": "Ethernet1"
# },
# {
# "name": "Ethernet2"
# },
# {
# "name": "Management1"
# },
# {
# "address_family": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.50"
# },
# "cost": 500,
# "dead_interval": 29,
# "hello_interval": 66,
# "mtu_ignore": True
# },
# {
# "afi": "ipv6",
# "cost": 106,
# "hello_interval": 77,
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.5"
# },
# "priority": 45
# },
# {
# "afi": "ipv6",
# "dead_interval": 56,
# "mtu_ignore": True,
# "network": "point-to-point",
# "passive_interface": True,
# "retransmit_interval": 115
# }
# ],
# "transmit_delay": 100
# }
# ],
# "name": "Vlan1"
# },
# {
# "address_family": [
# {
# "afi": "ipv6",
# "ip_params": [
# {
# "afi": "ipv4",
# "area": {
# "area_id": "0.0.0.6"
# },
# "hello_interval": 45,
# "retransmit_interval": 100
# }
# ]
# }
# ],
# "name": "Vlan2"
# }
# ],
#
# Using rendered:
# --------------
- name: Render provided configuration
arista.eos.eos_ospf_interfaces:
config:
- name: "Vlan1"
address_family:
- afi: "ipv4"
dead_interval: 29
mtu_ignore: True
hello_interval: 66
- afi: "ipv6"
hello_interval: 77
cost : 106
transmit_delay: 100
ip_params:
- afi: "ipv6"
retransmit_interval: 115
dead_interval: 56
passive_interface: True
- afi: "ipv4"
area:
area_id: "0.0.0.5"
priority: 45
- name: "Vlan2"
address_family:
- afi: "ipv6"
ip_params:
- afi: "ipv4"
area:
area_id: "0.0.0.6"
hello_interval: 45
retransmit_interval: 100
- afi: "ipv4"
message_digest_key:
key_id: 200
encryption: 7
key: "hkdfhtu=="
state: rendered
# Module Execution:
#
# "rendered": [
# "interface Vlan1",
# "ip ospf dead-interval 29",
# "ip ospf mtu-ignore",
# "ip ospf hello-interval 66",
# "ospfv3 hello-interval 77",
# "ospfv3 cost 106",
# "ospfv3 transmit-delay 100",
# "ospfv3 ipv4 area 0.0.0.5",
# "ospfv3 ipv4 priority 45",
# "ospfv3 ipv6 retransmit-interval 115",
# "ospfv3 ipv6 dead-interval 56",
# "ospfv3 ipv6 passive-interface",
# "interface Vlan2",
# "ip ospf message-digest-key 200 md5 7 hkdfhtu==",
# "ospfv3 ipv4 area 0.0.0.6",
# "ospfv3 ipv4 hello-interval 45",
# "ospfv3 ipv4 retransmit-interval 100"
# ]
#
Authors¶
Gomathi Selvi Srinivasan (@GomathiselviS)