fortinet.fortios.fortios_router_ospf module – Configure OSPF in Fortinet’s FortiOS and FortiGate.
Note
This module is part of the fortinet.fortios collection (version 2.1.6).
You might already have this collection installed if you are using the ansible
package.
It is not included in ansible-core
.
To check whether it is installed, run ansible-galaxy collection list
.
To install it, use: ansible-galaxy collection install fortinet.fortios
.
To use it in a playbook, specify: fortinet.fortios.fortios_router_ospf
.
New in version 2.0.0: of fortinet.fortios
Synopsis
This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify router feature and ospf category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.0.0
Requirements
The below requirements are needed on the host that executes this module.
ansible>=2.9.0
Parameters
Parameter |
Comments |
---|---|
Token-based authentication. Generated from GUI of Fortigate. |
|
Enable/Disable logging for task. Choices:
|
|
Member attribute path to operate on. Delimited by a slash character if there are more than one attribute. Parameter marked with member_path is legitimate for doing member operation. |
|
Add or delete a member under specified attribute path. When member_state is specified, the state option is ignored. Choices:
|
|
Configure OSPF. |
|
Area border router type. Choices:
|
|
OSPF area configuration. |
|
Authentication type. Choices:
|
|
Comment. |
|
Summary default cost of stub or NSSA area. |
|
OSPF area filter-list configuration. |
|
Direction. Choices:
|
|
Filter list entry ID. |
|
Access-list or prefix-list name. Source router.access-list.name router.prefix-list.name. |
|
Area entry IP address. |
|
Redistribute, advertise, or do not originate Type-7 default route into NSSA area. Choices:
|
|
OSPF default metric. |
|
OSPF metric type for default routes. Choices:
|
|
Enable/disable redistribute into NSSA area. Choices:
|
|
NSSA translator role type. Choices:
|
|
OSPF area range configuration. |
|
Enable/disable advertise status. Choices:
|
|
Range entry ID. |
|
Prefix. |
|
Substitute prefix. |
|
Enable/disable substitute status. Choices:
|
|
Enable/disable shortcut option. Choices:
|
|
Stub summary setting. Choices:
|
|
Area type setting. Choices:
|
|
OSPF virtual link configuration. |
|
Authentication type. Choices:
|
|
Authentication key. |
|
Dead interval. |
|
Hello interval. |
|
Message-digest key-chain name. Source router.key-chain.name. |
|
MD5 key. |
|
Authentication MD5 key-chain name. Source router.key-chain.name. |
|
MD5 key. |
|
Key ID (1 - 255). |
|
Password for the key. |
|
Virtual link entry name. |
|
Peer IP. |
|
Retransmit interval. |
|
Transmit delay. |
|
Reference bandwidth in terms of megabits per second. |
|
Bidirectional Forwarding Detection (BFD). Choices:
|
|
Enable/disable database overflow. Choices:
|
|
Database overflow maximum LSAs. |
|
Database overflow time to recover (sec). |
|
Default information metric. |
|
Default information metric type. Choices:
|
|
Enable/disable generation of default route. Choices:
|
|
Default information route map. Source router.route-map.name. |
|
Default metric of redistribute routes. |
|
Distance of the route. |
|
Administrative external distance. |
|
Administrative inter-area distance. |
|
Administrative intra-area distance. |
|
Distribute list configuration. |
|
Access list name. Source router.access-list.name. |
|
Distribute list entry ID. |
|
Protocol type. Choices:
|
|
Filter incoming routes. Source router.access-list.name router.prefix-list.name. |
|
Filter incoming external routes by route-map. Source router.route-map.name. |
|
Log of OSPF neighbor changes. Choices:
|
|
OSPF neighbor configuration are used when OSPF runs on non-broadcast media. |
|
Cost of the interface, value range from 0 to 65535, 0 means auto-cost. |
|
Neighbor entry ID. |
|
Interface IP address of the neighbor. |
|
Poll interval time in seconds. |
|
Priority. |
|
OSPF network configuration. |
|
Attach the network to area. |
|
Comment. |
|
Network entry ID. |
|
Prefix. |
|
OSPF interface configuration. |
|
Authentication type. Choices:
|
|
Authentication key. |
|
Bidirectional Forwarding Detection (BFD). Choices:
|
|
Comment. |
|
Cost of the interface, value range from 0 to 65535, 0 means auto-cost. |
|
Enable/disable control of flooding out LSAs. Choices:
|
|
Dead interval. |
|
Hello interval. |
|
Number of hello packets within dead interval. |
|
Configuration interface name. Source system.interface.name. |
|
IP address. |
|
Message-digest key-chain name. Source router.key-chain.name. |
|
MD5 key. |
|
Authentication MD5 key-chain name. Source router.key-chain.name. |
|
MD5 key. |
|
Key ID (1 - 255). |
|
Password for the key. |
|
MTU for database description packets. |
|
Enable/disable ignore MTU. Choices:
|
|
Interface entry name. |
|
Network type. Choices:
|
|
Prefix length. |
|
Priority. |
|
Graceful restart neighbor resynchronization timeout. |
|
Retransmit interval. |
|
Enable/disable status. Choices:
|
|
Transmit delay. |
|
Passive interface configuration. |
|
Passive interface name. Source system.interface.name. |
|
Redistribute configuration. |
|
Redistribute metric setting. |
|
Metric type. Choices:
|
|
Redistribute name. |
|
Route map name. Source router.route-map.name. |
|
Status. Choices:
|
|
Tag value. |
|
OSPF restart mode (graceful or LLS). Choices:
|
|
Graceful restart period. |
|
Enable/disable RFC1583 compatibility. Choices:
|
|
Router ID. |
|
SPF calculation frequency. |
|
IP address summary configuration. |
|
Enable/disable advertise status. Choices:
|
|
Summary address entry ID. |
|
Prefix. |
|
Tag value. |
|
Virtual domain, among those defined previously. A vdom is a virtual instance of the FortiGate that can be configured and used as a different unit. Default: “root” |
Examples
- hosts: fortigates
collections:
- fortinet.fortios
connection: httpapi
vars:
vdom: "root"
ansible_httpapi_use_ssl: yes
ansible_httpapi_validate_certs: no
ansible_httpapi_port: 443
tasks:
- name: Configure OSPF.
fortios_router_ospf:
vdom: "{{ vdom }}"
router_ospf:
abr_type: "cisco"
area:
-
authentication: "none"
comments: "<your_own_value>"
default_cost: "7"
filter_list:
-
direction: "in"
id: "10"
list: "<your_own_value> (source router.access-list.name router.prefix-list.name)"
id: "12"
nssa_default_information_originate: "enable"
nssa_default_information_originate_metric: "14"
nssa_default_information_originate_metric_type: "1"
nssa_redistribution: "enable"
nssa_translator_role: "candidate"
range:
-
advertise: "disable"
id: "20"
prefix: "<your_own_value>"
substitute: "<your_own_value>"
substitute_status: "enable"
shortcut: "disable"
stub_type: "no-summary"
type: "regular"
virtual_link:
-
authentication: "none"
authentication_key: "<your_own_value>"
dead_interval: "30"
hello_interval: "31"
keychain: "<your_own_value> (source router.key-chain.name)"
md5_key: "<your_own_value>"
md5_keychain: "<your_own_value> (source router.key-chain.name)"
md5_keys:
-
id: "36"
key_string: "<your_own_value>"
name: "default_name_38"
peer: "<your_own_value>"
retransmit_interval: "40"
transmit_delay: "41"
auto_cost_ref_bandwidth: "42"
bfd: "enable"
database_overflow: "enable"
database_overflow_max_lsas: "45"
database_overflow_time_to_recover: "46"
default_information_metric: "47"
default_information_metric_type: "1"
default_information_originate: "enable"
default_information_route_map: "<your_own_value> (source router.route-map.name)"
default_metric: "51"
distance: "52"
distance_external: "53"
distance_inter_area: "54"
distance_intra_area: "55"
distribute_list:
-
access_list: "<your_own_value> (source router.access-list.name)"
id: "58"
protocol: "connected"
distribute_list_in: "<your_own_value> (source router.access-list.name router.prefix-list.name)"
distribute_route_map_in: "<your_own_value> (source router.route-map.name)"
log_neighbour_changes: "enable"
neighbor:
-
cost: "64"
id: "65"
ip: "<your_own_value>"
poll_interval: "67"
priority: "68"
network:
-
area: "<your_own_value>"
comments: "<your_own_value>"
id: "72"
prefix: "<your_own_value>"
ospf_interface:
-
authentication: "none"
authentication_key: "<your_own_value>"
bfd: "global"
comments: "<your_own_value>"
cost: "79"
database_filter_out: "enable"
dead_interval: "81"
hello_interval: "82"
hello_multiplier: "83"
interface: "<your_own_value> (source system.interface.name)"
ip: "<your_own_value>"
keychain: "<your_own_value> (source router.key-chain.name)"
md5_key: "<your_own_value>"
md5_keychain: "<your_own_value> (source router.key-chain.name)"
md5_keys:
-
id: "90"
key_string: "<your_own_value>"
mtu: "92"
mtu_ignore: "enable"
name: "default_name_94"
network_type: "broadcast"
prefix_length: "96"
priority: "97"
resync_timeout: "98"
retransmit_interval: "99"
status: "disable"
transmit_delay: "101"
passive_interface:
-
name: "default_name_103 (source system.interface.name)"
redistribute:
-
metric: "105"
metric_type: "1"
name: "default_name_107"
routemap: "<your_own_value> (source router.route-map.name)"
status: "enable"
tag: "110"
restart_mode: "none"
restart_period: "112"
rfc1583_compatible: "enable"
router_id: "<your_own_value>"
spf_timers: "<your_own_value>"
summary_address:
-
advertise: "disable"
id: "118"
prefix: "<your_own_value>"
tag: "120"
Return Values
Common return values are documented here, the following are the fields unique to this module:
Key |
Description |
---|---|
Build number of the fortigate image Returned: always Sample: “1547” |
|
Last method used to provision the content into FortiGate Returned: always Sample: “PUT” |
|
Last result given by FortiGate on last operation applied Returned: always Sample: “200” |
|
Master key (id) used in the last call to FortiGate Returned: success Sample: “id” |
|
Name of the table used to fulfill the request Returned: always Sample: “urlfilter” |
|
Path of the table used to fulfill the request Returned: always Sample: “webfilter” |
|
Internal revision number Returned: always Sample: “17.0.2.10658” |
|
Serial number of the unit Returned: always Sample: “FGVMEVYYQT3AB5352” |
|
Indication of the operation’s result Returned: always Sample: “success” |
|
Virtual domain used Returned: always Sample: “root” |
|
Version of the FortiGate Returned: always Sample: “v5.6.3” |
Authors
Link Zheng (@chillancezen)
Jie Xue (@JieX19)
Hongbin Lu (@fgtdev-hblu)
Frank Shen (@frankshen01)
Miguel Angel Munoz (@mamunozgonzalez)
Nicolas Thomas (@thomnico)