Spec-Zone.ru › Ansible

community.dns.lookup_as_dict поиск – Поиск записей DNS как словарей

Примечание

Этот плагин поиска является частью коллекции community.dns (версия 3.0.5).

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

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

Чтобы использовать его в книге задач, укажите: community.dns.lookup_as_dict.

Новое в community.dns 2.6.0

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

Описание

  • Поиск записей DNS и возврат их в виде интерпретированных словарей.

Требования

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

  • dnspython >= 1.15.0 (возможно, работают и более старые версии)
  • ipaddress (в Python 2.7 при использовании server)

Термины

Параметр

Комментарии

Термины

список / элементы=строка / обязательно

Имя(на) домена для запроса.

Ключевые параметры

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

Параметр

Комментарии

nxdomain_handling

строка

Как обрабатывать ошибки NXDOMAIN. Они появляются, если запрашивается неизвестное имя домена.

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

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

Варианты:

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

query_retry

целое число

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

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

query_timeout

число с плавающей точкой

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

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

search

булево

добавлен в community.dns 3.0.0

Если false, входной параметр предполагается абсолютным именем домена.

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

Обратите внимание, что это поведение изменилось в community.dns 3.0.0. В community.dns 2.x.y, search=false был единственным доступным вариантом.

Варианты:

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

server

список / элементы=строка

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

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

servfail_retries

целое число

Как часто повторять попытки при ошибках SERVFAIL.

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

type

строка

Тип записи, который нужно получить.

Варианты:

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

Примечания

Примечание

  • При совместном использовании ключевых и позиционных параметров позиционные параметры должны быть указаны до ключевых параметров: lookup('community.dns.lookup_as_dict', term1, term2, key1=value1, key2=value2) и query('community.dns.lookup_as_dict', term1, term2, key1=value1, key2=value2)
  • Обратите внимание, что при использовании этого плагина поиска с lookup(), если результат — список из одного элемента, Ansible просто возвращает один элемент без списка. Поскольку это поведение может быть неожиданным и вызывать проблемы, лучше использовать query() вместо lookup(). См. примеры и также Принудительное возвращение списков в результатах поиска в документации Ansible.

Примеры

- name: Look up A (IPv4) records for example.org as a list of dictionaries
  ansible.builtin.debug:
    msg: "{{ query('community.dns.lookup_as_dict', 'example.org.') }}"

- name: Look up AAAA (IPv6) records for example.org as a list of IPv6 addresses
  ansible.builtin.debug:
    msg: "{{ query('community.dns.lookup_as_dict', 'example.org.', type='AAAA' ) | map(attribute='address') }}"

- name: Look up TXT records for ansible.com as a list of strings
  ansible.builtin.debug:
    msg: "{{ query('community.dns.lookup_as_dict', 'ansible.com.', type='TXT' ) | map(attribute='value') }}"

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

Ключ

Описание

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

list / elements=dictionary

Записи типа type для всех запрошенных DNS-имен.

Если в _terms запрашивается несколько DNS-имен, результирующие списки конкатенируются.

В зависимости от type, возвращаются разные поля.

Для type=TXT и type=SPF, также конкатенированное значение возвращается как _result[].value.

Возвращено: success

Пример: [{"address": "127.0.0.1"}]

address

string

IPv4 или IPv6 адрес.

Возвращено: если type=A или type=AAAA

algorithm

integer

Идентификатор алгоритма.

Возвращено: если type=DNSKEY или type=DS или type=NSEC3 или type=NSEC3PARAM или type=RRSIG или type=SSHFP

altitude

float

Высота.

Возвращено: если type=LOC

cert

string

Сертификат.

Возвращено: если type=TLSA

cpu

string

Процессор.

Возвращено: если type=HINFO

digest

string

Хеш.

Возвращено: если type=DS

digest_type

integer

Тип хеша.

Возвращено: если type=DS

exchange

string

Сервер обмена.

Возвращено: если type=MX

expiration

integer

Unix метка времени истечения срока действия.

Возвращено: если type=RRSIG

expire

integer

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

Возвращено: если type=SOA

fingerprint

string

Отпечаток.

Возвращено: если type=SSHFP

flags

integer

Флаги.

На самом деле это тип string для type=NAPTR.

Возвращено: если type=CAA или type=DNSKEY или type=NAPTR или type=NSEC3 или type=NSEC3PARAM

fp_type

integer

Тип отпечатка.

Возвращено: если type=SSHFP

horizontal_precision

float

Горизонтальная точность местоположения.

Возвращено: если type=LOC

inception

integer

Unix метка времени создания.

Возвращено: если type=RRSIG

iterations

integer

Количество итераций.

Возвращено: если type=NSEC3 или type=NSEC3PARAM

key

string

Ключ.

Возвращено: если type=DNSKEY

key_tag

integer

Тег ключа.

Возвращено: если type=DS или type=RRSIG

labels

integer

Метки.

Возвращено: если type=RRSIG

latitude

list / elements=integer

Широта местоположения.

Возвращается: if type=LOC

longitude

list / elements=integer

Долгота местоположения.

Возвращается: if type=LOC

mbox

string

Почтовый ящик.

Возвращается: if type=RP

minimum

integer

Используется для вычисления TTL для целей отрицательного кэширования.

Возвращается: if type=SOA

mname

string

Основной первичный сервер имен для этой зоны.

Возвращается: if type=SOA

mtype

integer

Тип mtype.

Возвращается: if type=TLSA

next

string

Следующее значение.

Возвращается: if type=NSEC or type=NSEC3

order

integer

Значение порядка.

Возвращается: if type=NAPTR

original_ttl

integer

Исходный TTL.

Возвращается: if type=RRSIG

os

string

Операционная система.

Возвращается: if type=HINFO

port

integer

Порт.

Возвращается: if type=SRV

preference

integer

Значение предпочтения для этой записи.

Возвращается: if type=MX or type=NAPTR

priority

integer

Приоритетное значение для этой записи.

Возвращается: if type=SRV

protocol

integer

Протокол.

Возвращается: if type=DNSKEY

refresh

integer

Количество секунд, после которых вторичные серверы имен должны запрашивать основной сервер имен для записи SOA, чтобы обнаружить изменения в зоне.

Возвращается: if type=SOA

regexp

string

Регулярное выражение.

Возвращается: if type=NAPTR

replacement

string

Замена.

Возвращается: if type=NAPTR

retry

integer

Количество секунд, после которых вторичные серверы имен должны повторить попытку запросить серийный номер у основного сервера имен, если основной сервер имен не отвечает.

Возвращается: if type=SOA

rname

string

Электронный адрес администратора, ответственного за эту зону.

Возвращается: if type=SOA

salt

string

Соль.

Возвращается: if type=NSEC3 or type=NSEC3PARAM

selector

integer

Селектор.

Возвращается: if type=TLSA

serial

integer

Серийный номер для этой зоны.

Возвращается: if type=SOA

сервис

строка

Сервис.

Возвращается: если type=NAPTR

подпись

строка

Подпись.

Возвращается: если type=RRSIG

подписант

строка

Подписант.

Возвращается: если type=RRSIG

размер

вещественное число

Размер местоположения.

Возвращается: если type=LOC

строки

список / элементы=строка

Список строк для этой записи.

См. _result[].value для объединённого результата.

Возвращается: если type=SPF или type=TXT

тег

строка

Тег.

Возвращается: если type=CAA

цель

строка

Цель.

Возвращается: если type=CNAME или type=DNAME или type=NS или type=PTR или type=SRV

TXT

строка

Значение TXT.

Возвращается: если type=RP

тип_покрытия

строка

Покрытый тип.

Возвращается: если type=RRSIG

использование

целое число

Флаг использования.

Возвращается: если type=TLSA

значение

строка

Значение.

Для type=SPF или type=TXT, это конкатенация _result[].strings

Возвращается: если type=CAA или type=SPF или type=TXT

вертикальная_точность

вещественное число

Вертикальная точность местоположения.

Возвращается: если type=LOC

вес

целое число

Вес сервиса.

Возвращается: если type=SRV

windows

строка

Windows.

Возвращается: если type=NSEC или type=NSEC3

Авторы

  • Felix Fontein (@felixfontein)

Подсказка

Элементы конфигурации для каждого типа имеют порядок приоритетов от низкого к высокому. Например, переменная, расположенная ниже в списке, переопределит переменную, расположенную выше.

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

  • Трекер задач
  • Репозиторий (источники)
  • Задать вопрос (DNS)
  • Отправить отчет об ошибке
  • Запросить функцию
  • Связь

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

Spec-Zone.ru

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