fortios_router_ospf6 – Configure IPv6 OSPF in Fortinet’s FortiOS and FortiGate

New in version 2.8.

Synopsis

  • This module is able to configure a FortiGate or FortiOS (FOS) device by allowing the user to set and modify router feature and ospf6 category. Examples include all parameters and values need to be adjusted to datasources before usage. Tested with FOS v6.0.5

Requirements

The below requirements are needed on the host that executes this module.

  • fortiosapi>=0.9.8

Parameters

Parameter Choices/Defaults Comments
host
string
FortiOS or FortiGate IP address.
https
boolean
    Choices:
  • no
  • yes ←
Indicates if the requests towards FortiGate must use HTTPS protocol.
password
string
Default:
""
FortiOS or FortiGate password.
router_ospf6
dictionary
Default:
null
Configure IPv6 OSPF.
abr_type
string
    Choices:
  • cisco
  • ibm
  • standard
Area border router type.
area
list
OSPF6 area configuration.
default_cost
integer
Summary default cost of stub or NSSA area.
id
string / required
Area entry IP address.
nssa_default_information_originate
string
    Choices:
  • enable
  • disable
Enable/disable originate type 7 default into NSSA area.
nssa_default_information_originate_metric
integer
OSPFv3 default metric.
nssa_default_information_originate_metric_type
string
    Choices:
  • 1
  • 2
OSPFv3 metric type for default routes.
nssa_redistribution
string
    Choices:
  • enable
  • disable
Enable/disable redistribute into NSSA area.
nssa_translator_role
string
    Choices:
  • candidate
  • never
  • always
NSSA translator role type.
range
list
OSPF6 area range configuration.
advertise
string
    Choices:
  • disable
  • enable
Enable/disable advertise status.
id
integer / required
Range entry ID.
prefix6
string
IPv6 prefix.
stub_type
string
    Choices:
  • no-summary
  • summary
Stub summary setting.
type
string
    Choices:
  • regular
  • nssa
  • stub
Area type setting.
virtual_link
list
OSPF6 virtual link configuration.
dead_interval
integer
Dead interval.
hello_interval
integer
Hello interval.
name
string / required
Virtual link entry name.
peer
string
A.B.C.D, peer router ID.
retransmit_interval
integer
Retransmit interval.
transmit_delay
integer
Transmit delay.
auto_cost_ref_bandwidth
integer
Reference bandwidth in terms of megabits per second.
bfd
string
    Choices:
  • enable
  • disable
Enable/disable Bidirectional Forwarding Detection (BFD).
default_information_metric
integer
Default information metric.
default_information_metric_type
string
    Choices:
  • 1
  • 2
Default information metric type.
default_information_originate
string
    Choices:
  • enable
  • always
  • disable
Enable/disable generation of default route.
default_information_route_map
string
Default information route map. Source router.route-map.name.
default_metric
integer
Default metric of redistribute routes.
log_neighbour_changes
string
    Choices:
  • enable
  • disable
Enable logging of OSPFv3 neighbour's changes
ospf6_interface
list
OSPF6 interface configuration.
area_id
string
A.B.C.D, in IPv4 address format.
bfd
string
    Choices:
  • global
  • enable
  • disable
Enable/disable Bidirectional Forwarding Detection (BFD).
cost
integer
Cost of the interface, value range from 0 to 65535, 0 means auto-cost.
dead_interval
integer
Dead interval.
hello_interval
integer
Hello interval.
interface
string
Configuration interface name. Source system.interface.name.
mtu
integer
MTU for OSPFv3 packets.
mtu_ignore
string
    Choices:
  • enable
  • disable
Enable/disable ignoring MTU field in DBD packets.
name
string / required
Interface entry name.
neighbor
list
OSPFv3 neighbors are used when OSPFv3 runs on non-broadcast media
cost
integer
Cost of the interface, value range from 0 to 65535, 0 means auto-cost.
ip6
string / required
IPv6 link local address of the neighbor.
poll_interval
integer
Poll interval time in seconds.
priority
integer
priority
network_type
string
    Choices:
  • broadcast
  • point-to-point
  • non-broadcast
  • point-to-multipoint
  • point-to-multipoint-non-broadcast
Network type.
priority
integer
priority
retransmit_interval
integer
Retransmit interval.
status
string
    Choices:
  • disable
  • enable
Enable/disable OSPF6 routing on this interface.
transmit_delay
integer
Transmit delay.
passive_interface
list
Passive interface configuration.
name
string / required
Passive interface name. Source system.interface.name.
redistribute
list
Redistribute configuration.
metric
integer
Redistribute metric setting.
metric_type
string
    Choices:
  • 1
  • 2
Metric type.
name
string / required
Redistribute name.
routemap
string
Route map name. Source router.route-map.name.
status
string
    Choices:
  • enable
  • disable
status
router_id
string
A.B.C.D, in IPv4 address format.
spf_timers
string
SPF calculation frequency.
summary_address
list
IPv6 address summary configuration.
advertise
string
    Choices:
  • disable
  • enable
Enable/disable advertise status.
id
integer / required
Summary address entry ID.
prefix6
string
IPv6 prefix.
tag
integer
Tag value.
ssl_verify
boolean
added in 2.9
    Choices:
  • no
  • yes ←
Ensures FortiGate certificate must be verified by a proper CA.
username
string
FortiOS or FortiGate username.
vdom
string
Default:
"root"
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.

Notes

Note

  • Requires fortiosapi library developed by Fortinet
  • Run as a local_action in your playbook

Examples

- hosts: localhost
  vars:
   host: "192.168.122.40"
   username: "admin"
   password: ""
   vdom: "root"
   ssl_verify: "False"
  tasks:
  - name: Configure IPv6 OSPF.
    fortios_router_ospf6:
      host:  "{{ host }}"
      username: "{{ username }}"
      password: "{{ password }}"
      vdom:  "{{ vdom }}"
      https: "False"
      router_ospf6:
        abr_type: "cisco"
        area:
         -
            default_cost: "5"
            id:  "6"
            nssa_default_information_originate: "enable"
            nssa_default_information_originate_metric: "8"
            nssa_default_information_originate_metric_type: "1"
            nssa_redistribution: "enable"
            nssa_translator_role: "candidate"
            range:
             -
                advertise: "disable"
                id:  "14"
                prefix6: "<your_own_value>"
            stub_type: "no-summary"
            type: "regular"
            virtual_link:
             -
                dead_interval: "19"
                hello_interval: "20"
                name: "default_name_21"
                peer: "<your_own_value>"
                retransmit_interval: "23"
                transmit_delay: "24"
        auto_cost_ref_bandwidth: "25"
        bfd: "enable"
        default_information_metric: "27"
        default_information_metric_type: "1"
        default_information_originate: "enable"
        default_information_route_map: "<your_own_value> (source router.route-map.name)"
        default_metric: "31"
        log_neighbour_changes: "enable"
        ospf6_interface:
         -
            area_id: "<your_own_value>"
            bfd: "global"
            cost: "36"
            dead_interval: "37"
            hello_interval: "38"
            interface: "<your_own_value> (source system.interface.name)"
            mtu: "40"
            mtu_ignore: "enable"
            name: "default_name_42"
            neighbor:
             -
                cost: "44"
                ip6: "<your_own_value>"
                poll_interval: "46"
                priority: "47"
            network_type: "broadcast"
            priority: "49"
            retransmit_interval: "50"
            status: "disable"
            transmit_delay: "52"
        passive_interface:
         -
            name: "default_name_54 (source system.interface.name)"
        redistribute:
         -
            metric: "56"
            metric_type: "1"
            name: "default_name_58"
            routemap: "<your_own_value> (source router.route-map.name)"
            status: "enable"
        router_id: "<your_own_value>"
        spf_timers: "<your_own_value>"
        summary_address:
         -
            advertise: "disable"
            id:  "65"
            prefix6: "<your_own_value>"
            tag: "67"

Return Values

Common return values are documented here, the following are the fields unique to this module:

Key Returned Description
build
string
always
Build number of the fortigate image

Sample:
1547
http_method
string
always
Last method used to provision the content into FortiGate

Sample:
PUT
http_status
string
always
Last result given by FortiGate on last operation applied

Sample:
200
mkey
string
success
Master key (id) used in the last call to FortiGate

Sample:
id
name
string
always
Name of the table used to fulfill the request

Sample:
urlfilter
path
string
always
Path of the table used to fulfill the request

Sample:
webfilter
revision
string
always
Internal revision number

Sample:
17.0.2.10658
serial
string
always
Serial number of the unit

Sample:
FGVMEVYYQT3AB5352
status
string
always
Indication of the operation's result

Sample:
success
vdom
string
always
Virtual domain used

Sample:
root
version
string
always
Version of the FortiGate

Sample:
v5.6.3


Status

Authors

  • Miguel Angel Munoz (@mamunozgonzalez)
  • Nicolas Thomas (@thomnico)

Hint

If you notice any issues in this documentation, you can edit this document to improve it.