fortinet.fortios.fortios_system_dns 模块 – 在 Fortinet 的 FortiOS 和 FortiGate 中配置 DNS。

注意

此模块是 fortinet.fortios 集合 (版本 2.3.8) 的一部分。

如果您使用的是 ansible 包,则可能已安装此集合。它不包含在 ansible-core 中。要检查它是否已安装,请运行 ansible-galaxy collection list

要安装它,请使用:ansible-galaxy collection install fortinet.fortios。您需要其他要求才能使用此模块,有关详细信息,请参阅 要求

要在 playbook 中使用它,请指定:fortinet.fortios.fortios_system_dns

fortinet.fortios 2.0.0 中的新增功能

概要

  • 此模块能够通过允许用户设置和修改系统功能和 dns 类别来配置 FortiGate 或 FortiOS (FOS) 设备。示例包括所有参数,在使用前需要将值调整到数据源。已在 FOS v6.0.0 上测试。

要求

执行此模块的主机需要以下要求。

  • ansible>=2.15

参数

参数

注释

access_token

字符串

基于令牌的身份验证。从 FortiGate 的 GUI 生成。

enable_log

布尔值

启用/禁用任务的日志记录。

选项

  • false ← (默认)

  • true

member_path

字符串

要操作的成员属性路径。

如果有多个属性,则用斜杠字符分隔。

标有 member_path 的参数对于执行成员操作是合法的。

member_state

字符串

在指定的属性路径下添加或删除成员。

指定 member_state 时,将忽略 state 选项。

选项

  • "present"

  • "absent"

system_dns

字典

配置 DNS。

alt_primary

字符串

备用主 DNS 服务器。这不用作故障转移 DNS 服务器。

alt_secondary

字符串

备用辅助 DNS 服务器。这不用作故障转移 DNS 服务器。

cache_notfound_responses

字符串

当记录不在缓存中时,启用/禁用 DNS 服务器的响应。

选项

  • "disable"

  • "enable"

dns_cache_limit

整数

DNS 缓存中的最大记录数。

dns_cache_ttl

整数

DNS 缓存保留信息的持续时间(秒)。

dns_over_tls

字符串

启用/禁用/强制执行 DNS over TLS。

选项

  • "disable"

  • "enable"

  • "enforce"

domain

列表 / 元素=字典

主机名查找的搜索后缀列表。

domain

字符串 / 必需

用空格分隔的 DNS 搜索域名列表(最多 8 个域名)。

fqdn_cache_ttl

整数

FQDN 缓存生存时间(秒)(0-86400)。

fqdn_max_refresh

整数

FQDN 缓存最大刷新时间(秒)(3600-86400)。

fqdn_min_refresh

整数

FQDN 缓存最小刷新时间(秒)(10-3600)。

hostname_limit

整数

主机名表条目的数量限制 (0-50000)。

hostname_ttl

整数

主机名表条目的 TTL (60-86400)。

interface

字符串

指定到达服务器的出站接口。源 system.interface.name。

interface_select_method

字符串

指定如何选择到达服务器的出站接口。

选项

  • "auto"

  • "sdwan"

  • "specify"

ip6_primary

字符串

主 DNS 服务器 IPv6 地址。

ip6_secondary

字符串

辅助 DNS 服务器 IPv6 地址。

log

字符串

本地 DNS 日志设置。

选项

  • "disable"

  • "error"

  • "all"

primary

字符串

主 DNS 服务器 IP 地址。

protocol

列表 / 元素=字符串

DNS 传输协议。

选项

  • "cleartext"

  • "dot"

  • "doh"

retry

整数

重试次数 (0-5)。

root_servers

列表 / 元素=字符串

配置最多两个首选服务器,这些服务器提供 DNS 根区域。

secondary

字符串

辅助 DNS 服务器 IP 地址。

server_hostname

列表 / 元素=字典

DNS 服务器主机名列表。

hostname

字符串 / 必需

用空格分隔的 DNS 服务器主机名列表(最多 4 个域名)。

server_select_method

字符串

指定如何优先考虑已配置的服务器。

选项

  • "least-rtt"

  • "failover"

source_ip

字符串

DNS 服务器用作其源 IP 的 IP 地址。

ssl_certificate

字符串

SSL 连接的本地证书名称。源 certificate.local.name。

timeout

整数

DNS 查询超时间隔(秒)(1-10)。

vdom

字符串

虚拟域,在先前定义的虚拟域中。vdom 是 FortiGate 的虚拟实例,可以将其配置并用作不同的单元。

默认值: "root"

注释

注意

  • 旧版 fortiosapi 已弃用,httpapi 是运行 playbook 的首选方法。

示例

- name: Configure DNS.
  fortinet.fortios.fortios_system_dns:
      vdom: "{{ vdom }}"
      system_dns:
          alt_primary: "<your_own_value>"
          alt_secondary: "<your_own_value>"
          cache_notfound_responses: "disable"
          dns_cache_limit: "5000"
          dns_cache_ttl: "1800"
          dns_over_tls: "disable"
          domain:
              -
                  domain: "<your_own_value>"
          fqdn_cache_ttl: "0"
          fqdn_max_refresh: "3600"
          fqdn_min_refresh: "60"
          hostname_limit: "5000"
          hostname_ttl: "86400"
          interface: "<your_own_value> (source system.interface.name)"
          interface_select_method: "auto"
          ip6_primary: "<your_own_value>"
          ip6_secondary: "<your_own_value>"
          log: "disable"
          primary: "<your_own_value>"
          protocol: "cleartext"
          retry: "2"
          root_servers: "<your_own_value>"
          secondary: "<your_own_value>"
          server_hostname:
              -
                  hostname: "myhostname"
          server_select_method: "least-rtt"
          source_ip: "84.230.14.43"
          ssl_certificate: "<your_own_value> (source certificate.local.name)"
          timeout: "5"

返回值

常见的返回值已记录在 此处,以下是此模块特有的字段。

描述

build

字符串

FortiGate 镜像的构建编号

返回: 始终

示例: "1547"

http_method

字符串

上次用于将内容置备到 FortiGate 的方法

返回: 始终

示例: "PUT"

http_status

字符串

FortiGate 上次操作返回的最后结果

返回: 始终

示例: "200"

mkey

字符串

上次调用 FortiGate 时使用的主密钥 (ID)

返回: 成功

示例: "id"

name

字符串

用于完成请求的表名

返回: 始终

示例: "urlfilter"

path

字符串

用于完成请求的表路径

返回: 始终

示例: "webfilter"

revision

字符串

内部修订号

返回: 始终

示例: "17.0.2.10658"

serial

字符串

设备序列号

返回: 始终

示例: "FGVMEVYYQT3AB5352"

status

字符串

操作结果指示

返回: 始终

示例: "success"

vdom

字符串

使用的虚拟域

返回: 始终

示例: "root"

version

字符串

FortiGate 版本

返回: 始终

示例: "v5.6.3"

作者

  • 郑链 (@chillancezen)

  • 薛杰 (@JieX19)

  • 卢洪滨 (@fgtdev-hblu)

  • 沈方 (@frankshen01)

  • 米格尔·安赫尔·穆诺斯 (@mamunozgonzalez)

  • 尼古拉斯·托马斯 (@thomnico)