Spec-Zone.ru › Ansible

community.dns.lookup_rfc8427 lookup – поиск записей DNS и возврат в формате JSON RFC 8427

Примечание

Этот плагин поиска входит в коллекцию community.dns (версия 3.5.5).

Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.

Чтобы установить её, используйте: ansible-galaxy collection install community.dns. Для использования этого плагина поиска требуются дополнительные компоненты; подробности см. в разделе Требования.

Чтобы использовать его в плейбуке, укажите: community.dns.lookup_rfc8427.

Добавлено в community.dns 3.4.0

  • Краткое описание
  • Требования
  • Параметры
  • Именованные параметры
  • Примечания
  • Примеры
  • Возвращаемое значение

Краткое описание

  • Выполняет поиск записей DNS и возвращает их в формате JSON сообщений DNS RFC 8427.
  • RFC 8427 определяет стандартизированный формат представления сообщений DNS в JSON.

Требования

Следующие требования необходимы на локальном управляющем узле, выполняющем этот поиск.

  • dnspython >= 1.15.0 (возможно, подойдут и более старые версии)

Параметры

Параметр

Комментарии

Terms

list / elements=string / обязательный

Имя или имена доменов для запроса.

Именованные параметры

В этом разделе описаны именованные параметры поиска. В следующих примерах это значения key1=value1, key2=value2 и т. д.: lookup('community.dns.lookup_rfc8427', key1=value1, key2=value2, ...) и query('community.dns.lookup_rfc8427', key1=value1, key2=value2, ...)

Параметр

Комментарии

nxdomain_handling

string

Способ обработки ошибок NXDOMAIN. Такие ошибки возникают при запросе неизвестного доменного имени.

empty (по умолчанию) возвращает пустой результат для этого доменного имени. Это означает, что для соответствующего доменного имени в _result ничего не добавляется.

fail приводит к сбою поиска.

Возможные значения:

  • "empty" ← (по умолчанию)
  • "fail"

query_retry

integer

Количество повторных попыток при тайм-ауте DNS-запроса.

По умолчанию: 3

query_timeout

float

Тайм-аут для каждого DNS-запроса в секундах.

По умолчанию: 10.0

search

boolean

Если задано значение false, входные данные считаются абсолютным доменным именем.

Если задано значение true, входные данные считаются относительным доменным именем, если они не оканчиваются на .; для относительных имён будет использоваться список поиска, настроенный в конфигурации системного резолвера, и к относительным именам может добавляться домен резолвера.

Возможные значения:

  • false
  • true ← (по умолчанию)

server

list / elements=string

DNS-сервер или серверы для поиска результата. Необходимо указать список из одного или нескольких IP-адресов.

По умолчанию используется стандартный системный резолвер.

servfail_retries

integer

Количество повторных попыток при ошибках SERVFAIL.

По умолчанию: 0

type

string

Тип записи для получения.

Поддержка HTTPS и SVCB добавлена в community.dns 3.4.0.

Возможные значения:

  • "A" ← (по умолчанию)
  • "AAAA"
  • "CAA"
  • "CNAME"
  • "DNAME"
  • "DNSKEY"
  • "DS"
  • "HINFO"
  • "HTTPS"
  • "LOC"
  • "MX"
  • "NAPTR"
  • "NS"
  • "NSEC"
  • "NSEC3"
  • "NSEC3PARAM"
  • "PTR"
  • "RP"
  • "RRSIG"
  • "SOA"
  • "SPF"
  • "SRV"
  • "SSHFP"
  • "SVCB"
  • "TLSA"
  • "TXT"

Примечания

Примечание

  • При совместном использовании именованных и позиционных параметров позиционные параметры необходимо указывать перед именованными: lookup('community.dns.lookup_rfc8427', term1, term2, key1=value1, key2=value2) и query('community.dns.lookup_rfc8427', term1, term2, key1=value1, key2=value2)
  • Этот плагин возвращает сообщения DNS в формате JSON RFC 8427, который включает разделы Header, Question, Answer, Authority и Additional.
  • Обратите внимание: при использовании этого плагина поиска с lookup(), если результат представляет собой список из одного элемента, Ansible возвращает этот элемент отдельно, а не в виде списка. Такое поведение может быть неожиданным и приводить к проблемам, поэтому лучше использовать query() вместо lookup(). См. примеры, а также раздел Принудительный возврат списков при поиске в документации Ansible.

Примеры

- name: Look up A (IPv4) records for example.org in RFC 8427 JSON format
  ansible.builtin.debug:
    msg: "{{ query('community.dns.lookup_rfc8427', 'example.org.') }}"

- name: Look up AAAA (IPv6) records for example.org in RFC 8427 JSON format
  ansible.builtin.debug:
    msg: "{{ query('community.dns.lookup_rfc8427', 'example.org.', type='AAAA' ) }}"

- name: Get complete DNS message for MX records
  ansible.builtin.debug:
    msg: "{{ query('community.dns.lookup_rfc8427', 'example.org.', type='MX' ) }}"

Возвращаемое значение

Ключ

Описание

Возвращаемое значение

list / elements=dictionary

Сообщения DNS в формате JSON RFC 8427 для всех запрошенных имён DNS.

Каждый элемент в _terms соответствует одному элементу этого списка.

Возвращается: при успешном выполнении

Пример: [{"Additional": [], "Answer": [{"TTL": 3600, "class": 1, "data": "93.184.216.34", "name": "example.org.", "type": 1}], "Authority": [], "Header": {"AA": false, "AD": false, "ANCOUNT": 1, "ARCOUNT": 0, "CD": false, "ID": 12345, "NSCOUNT": 0, "Opcode": 0, "QDCOUNT": 1, "QR": true, "RA": true, "RD": true, "Rcode": 0, "TC": false}, "Question": [{"class": 1, "name": "example.org.", "type": 1}]}]

Авторы

  • Felix Fontein (@felixfontein)
  • Vasiliy Kiryanov (@vasiliyk)

Ссылки на коллекцию

  • Отслеживание проблем
  • Репозиторий (исходный код)
  • Запросить помощь (DNS)
  • Сообщить об ошибке
  • Предложить новую функцию
  • Связь

© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/dns/lookup_rfc8427_lookup.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API