Spec-Zone.ru › Ansible 2.5

dig - запрос DNS с помощью библиотеки dnspython

Новое в версии 1.9.

  • Синопсис
    • Требования
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус
    • Автор

Синопсис

  • Запрос dig выполняет запросы к серверам DNS для получения записей DNS для определенного имени (FQDN — полное доменное имя). Таким образом можно получить любые записи DNS.
  • Существует несколько различных синтаксисов для указания того, какая запись должна быть получена и для какого имени. Также можно явно указать сервер(ы) DNS для выполнения запросов.
  • В простейшем случае плагин dig lookup может использоваться для получения IP-адреса IPv4 (запись DNS A) связанного с FQDN.
  • Помимо записи A (по умолчанию) можно также указать другой тип записи, который необходимо запросить. Это можно сделать, передав дополнительный параметр формата qtype=TYPE в запрос dig или добавив /TYPE к запрошенному FQDN.
  • Если для запрошенной записи ассоциировано несколько значений, результаты будут возвращены в виде списка, разделённого запятыми. В таких случаях можно передать опцию wantlist=True в плагин, что приведет к возвращению значений записи в виде списка, по которому можно будет итерироваться позже.
  • По умолчанию запрос будет полагаться на сервера DNS, настроенные в системе, для выполнения запроса. Также можно явно указать сервера DNS для запроса, используя обозначение @DNS_SERVER_1,DNS_SERVER_2,...,DNS_SERVER_N. Это необходимо передать в качестве дополнительного параметра в запрос.

Требования

Ниже перечислены требования, необходимые на локальном узле-мастере, на котором выполняется этот запрос.

  • dnspython (библиотека Python, http://www.dnspython.org/)

Параметры

Параметр Варианты/Значения по умолчанию Настройка Комментарии
_terms
домен(ы) для запроса
flat Значение по умолчанию:
1
Если 0, каждая запись возвращается как словарь; в противном случае — строка
qtype
    Варианты:
  • A ←
  • ALL
  • AAAA
  • CNAME
  • DNAME
  • DLV
  • DNSKEY
  • DS
  • HINFO
  • LOC
  • MX
  • NAPTR
  • NS
  • NSEC3PARAM
  • PTR
  • RP
  • RRSIG
  • SOA
  • SPF
  • SRV
  • SSHFP
  • TLSA
  • TXT
тип записи для запроса

Примечания

Примечание

  • ALL — это не запись сама по себе, а просто список полей, доступных для любых результатов запроса в виде словаря.
  • Хотя плагин «dig» поддерживает всё, что поддерживает dnspython «из коробки», только часть из них может быть преобразована в словарь.
  • Если вам нужно получить запись AAAA (IPv6-адрес), вы должны явно указать тип записи. Синтаксис указания типа записи показан в примерах ниже.
  • Конечная точка в большинстве примеров — это необязательный элемент, но указана для полноты и правильности.

Примеры

- name: Simple A record (IPV4 address) lookup for example.com
  debug: msg="{{ lookup('dig', 'example.com.')}}"

- name: "The TXT record for example.org."
  debug: msg="{{ lookup('dig', 'example.org.', 'qtype=TXT') }}"

- name: "The TXT record for example.org, alternative syntax."
  debug: msg="{{ lookup('dig', 'example.org./TXT') }}"

- name: use in a loop
  debug: msg="MX record for gmail.com {{ item }}"
  with_items: "{{ lookup('dig', 'gmail.com./MX', wantlist=True) }}"

- debug: msg="Reverse DNS for 192.0.2.5 is {{ lookup('dig', '192.0.2.5/PTR') }}"
- debug: msg="Reverse DNS for 192.0.2.5 is {{ lookup('dig', '5.2.0.192.in-addr.arpa./PTR') }}"
- debug: msg="Reverse DNS for 192.0.2.5 is {{ lookup('dig', '5.2.0.192.in-addr.arpa.', 'qtype=PTR') }}"
- debug: msg="Querying 198.51.100.23 for IPv4 address for example.com. produces {{ lookup('dig', 'example.com', '@198.51.100.23') }}"

- debug: msg="XMPP service for gmail.com. is available at {{ item.target }} on port {{ item.port }}"
  with_items: "{{ lookup('dig', '_xmpp-server._tcp.gmail.com./SRV', 'flat=0', wantlist=True) }}"

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

Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого запроса:

Ключ Возвращаемое значение Описание
_list
список составленных строк или словарей с ключом и значением. Если словарь, поля показывают возвращаемые ключи в зависимости от типа запроса



Статус

Автор

  • Jan-Piet Mens (@jpmens) <jpmens(at)gmail.com>

Подсказка

Если вы заметили какие-либо проблемы в этой документации, вы можете отредактировать этот документ для его улучшения.

© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.5/plugins/lookup/dig.html

Spec-Zone.ru

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