Назад | Перейти на главную страницу

Используются ли поисковые домены из resolv.conf только для запросов A / AAAA?

Предоставленные пользователем поисковые домены из resolv.conf используются только для запросов A / AAAA?

Используются ли они для каких-либо других целей?

Прежде всего, это библиотека распознавателя ОС, которая реализует фактическую поиск функциональность, то есть ее использование зависит от того, какие библиотеки ОС (или других) фактически используются, и программному обеспечению сервера имен вообще не нужно об этом знать.

То есть, когда приложение ищет имя, вызывая стандартный getaddrinfo, gethostbyname (не рекомендуется) и т. д., библиотека преобразователя будет выполнять отдельные поиски различных вариантов указанного имени по мере необходимости.

Сейчас, getaddrinfo и gethostbyname (когда они вообще в конечном итоге используют DNS, библиотека преобразователя может быть настроена для использования других источников) специально ищет записи адресов (A / AAAA), поэтому вопрос сводится к тому, использует ли другой код библиотеки преобразователя поиск или если его использование ограничено этими довольно узкими целевыми функциями.

Поскольку существует множество переменных (например, какие функции поиска DNS фактически использует данное приложение?), Краткий ответ на вопрос - «это зависит от обстоятельств».

Беглый взгляд на другие функции, представленные в старой библиотеке libc resolv, приложении, которое использует res_query / res_nquery функции НЕ будут искать, в то время как приложение, использующее res_search / res_nsearch буду искать.

Видеть man resolv.conf. Местный domain (и, возможно, другие домены, указанные в search) добавляется к имени хоста в запросе каждый раз, когда это не полное доменное имя.

Зная это, вы можете легко проверить, работает ли это для других типов RR или нет. Вы можете проверить это с любой существующей записью, например TXT для селектора DKIM и т. д. Предположим, у нас есть Отпечаток SSH SSHFP запись для someserver.example.com:

nslookup
> set domain=example.com
> set type=SSHFP
> someserver

В этом примере мы действительно получили бы ответ на someserver.example.com SSHFP (вместо обработки someserver как полное доменное имя), демонстрируя, как работает на любом типе RR.

Обратите внимание, что вы можете проверить это только с помощью nslookup который использует resolv.conf в качестве файла начальной конфигурации. Альтернатива dig всегда обрабатывает все запросы как FQDN, т.е.

dig someserver SSHFP

;; QUESTION SECTION:
;someserver.        IN  SSHFP