fortinet.fortios.fortios_system_dns_database (1.1.7) — module

Configure DNS databases in Fortinet's FortiOS and FortiGate.

| "added in version" 2.9 of fortinet.fortios"

Authors: Link Zheng (@chillancezen), Jie Xue (@JieX19), Hongbin Lu (@fgtdev-hblu), Frank Shen (@frankshen01), Miguel Angel Munoz (@mamunozgonzalez), Nicolas Thomas (@thomnico)

preview | supported by community

Install collection

Install with ansible-galaxy collection install fortinet.fortios:==1.1.7


Add to requirements.yml

  collections:
    - name: fortinet.fortios
      version: 1.1.7

Description

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


Requirements

Usage examples

  • Success
    Steampunk Spotter scan finished with no errors, warnings or hints.
- 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 DNS databases.
    fortios_system_dns_database:
      vdom:  "{{ vdom }}"
      state: "present"
      access_token: "<your_own_value>"
      system_dns_database:
        allow_transfer: "<your_own_value>"
        authoritative: "enable"
        contact: "<your_own_value>"
        dns_entry:
         -
            canonical_name: "<your_own_value>"
            hostname: "myhostname"
            id:  "9"
            ip: "<your_own_value>"
            ipv6: "<your_own_value>"
            preference: "12"
            status: "enable"
            ttl: "14"
            type: "A"
        domain: "<your_own_value>"
        forwarder: "<your_own_value>"
        ip_master: "<your_own_value>"
        name: "default_name_19"
        primary_name: "<your_own_value>"
        rr_max: "21"
        source_ip: "84.230.14.43"
        status: "enable"
        ttl: "24"
        type: "master"
        view: "shadow"

Inputs

    
vdom:
    default: root
    description:
    - 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.
    type: str

state:
    choices:
    - present
    - absent
    description:
    - Indicates whether to create or remove the object.
    required: true
    type: str

access_token:
    description:
    - Token-based authentication. Generated from GUI of Fortigate.
    required: false
    type: str

system_dns_database:
    default: null
    description:
    - Configure DNS databases.
    suboptions:
      allow_transfer:
        description:
        - DNS zone transfer IP address list.
        type: str
      authoritative:
        choices:
        - enable
        - disable
        description:
        - Enable/disable authoritative zone.
        type: str
      contact:
        description:
        - Email address of the administrator for this zone.  You can specify only the
          username (e.g. admin) or full email address (e.g. admin@test .com)   When using
          a simple username, the domain of the email will be this zone.
        type: str
      dns_entry:
        description:
        - DNS entry.
        suboptions:
          canonical_name:
            description:
            - Canonical name of the host.
            type: str
          hostname:
            description:
            - Name of the host.
            type: str
          id:
            description:
            - DNS entry ID.
            required: true
            type: int
          ip:
            description:
            - IPv4 address of the host.
            type: str
          ipv6:
            description:
            - IPv6 address of the host.
            type: str
          preference:
            description:
            - DNS entry preference, 0 is the highest preference (0 - 65535)
            type: int
          status:
            choices:
            - enable
            - disable
            description:
            - Enable/disable resource record status.
            type: str
          ttl:
            description:
            - Time-to-live for this entry (0 to 2147483647 sec).
            type: int
          type:
            choices:
            - A
            - NS
            - CNAME
            - MX
            - AAAA
            - PTR
            - PTR_V6
            description:
            - Resource record type.
            type: str
        type: list
      domain:
        description:
        - Domain name.
        type: str
      forwarder:
        description:
        - DNS zone forwarder IP address list.
        type: str
      ip_master:
        description:
        - IP address of master DNS server. Entries in this master DNS server and imported
          into the DNS zone.
        type: str
      name:
        description:
        - Zone name.
        required: true
        type: str
      primary_name:
        description:
        - Domain name of the default DNS server for this zone.
        type: str
      rr_max:
        description:
        - Maximum number of resource records (10 - 65536, 0 means infinite).
        type: int
      source_ip:
        description:
        - Source IP for forwarding to DNS server.
        type: str
      status:
        choices:
        - enable
        - disable
        description:
        - Enable/disable this DNS zone.
        type: str
      ttl:
        description:
        - Default time-to-live value for the entries of this DNS zone (0 - 2147483647
          sec).
        type: int
      type:
        choices:
        - master
        - slave
        description:
        - Zone type (master to manage entries directly, slave to import entries from other
          zones).
        type: str
      view:
        choices:
        - shadow
        - public
        description:
        - Zone view (public to serve public clients, shadow to serve internal clients).
        type: str
    type: dict

Outputs

build:
  description: Build number of the fortigate image
  returned: always
  sample: '1547'
  type: str
http_method:
  description: Last method used to provision the content into FortiGate
  returned: always
  sample: PUT
  type: str
http_status:
  description: Last result given by FortiGate on last operation applied
  returned: always
  sample: '200'
  type: str
mkey:
  description: Master key (id) used in the last call to FortiGate
  returned: success
  sample: id
  type: str
name:
  description: Name of the table used to fulfill the request
  returned: always
  sample: urlfilter
  type: str
path:
  description: Path of the table used to fulfill the request
  returned: always
  sample: webfilter
  type: str
revision:
  description: Internal revision number
  returned: always
  sample: 17.0.2.10658
  type: str
serial:
  description: Serial number of the unit
  returned: always
  sample: FGVMEVYYQT3AB5352
  type: str
status:
  description: Indication of the operation's result
  returned: always
  sample: success
  type: str
vdom:
  description: Virtual domain used
  returned: always
  sample: root
  type: str
version:
  description: Version of the FortiGate
  returned: always
  sample: v5.6.3
  type: str