Friday, 30 September. 2005
Если в /etc/resolv.conf отключаю name сервера host задумывается...
Что не так?
getaddrinfo() смотрит в /etc/hosts, вместе с gethostbyname() и аналогами.
Если непонятно, прошу прочитать и понять следующее. gethostbyname,
gethostbyaddr, getaddrinfo, getnameinfo - функции для доступа к NETDB.
NETDB ограничивается для хостов трансляцией имени в адрес и обратно
(функции DNS, такие, как получение MX, ей недоступны). NETDB настраивается
переключателем (/etc/host.conf или /etc/nsswitch.conf) на следующие
источники: hosts (/etc/hosts), YP/NIS, DNS в произвольном составе и порядке,
возможны и другие источники при наличии соответствующих модулей для NSS.
Программа для задавания вопросов NETDB мне неизвестна (может, плохо искал),
пользуюсь ping.
DNS, в отличие от NETDB, имеет другой комплект функций запроса (res_[n]query,
res_[n]search и так далее). Утилиты host, dig, nslookup, входящие в BIND,
используют только эти функции и не используют описанные выше функции
запросов к NETDB. Вы, по-видимому, не чувствуете разницы между NETDB
и DNS. Это всё-таки надо понимать, когда настраиваете сеть.
-netch-
|