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

WGET не может разрешить хост

У меня две машины в одной подсети, на которых запущен Debian 5.0. Они используют один и тот же DNS (/etc/resolv.conf), они направляют на тот же шлюз (#route) и имеют одинаковые настройки iptables (#iptables -L). Я могу пинговать с них обоих, как на IP-адреса, так и на имена хостов. Я могу запустить #host www.google.com и получить одинаковые результаты для них обоих. Но проблема в том, что на одном из них я не могу скручиваться или скручиваться.

Итак, на машине 1 все в порядке, но на машине 2 (с теми же настройками, что и на машине 1) я не могу wget или curl.

Я получаю следующую ошибку:

# wget google.com
--2009-10-20 16:38:36--  http://google.com/
Resolving google.com... failed: Name or service not known.
wget: unable to resolve host address `google.com'

Но на машине 1 нет проблем с wget или curl и возвращением:

# wget google.com
--2009-10-20 16:43:55--  http://google.com/
Resolving google.com... 74.125.53.100, 74.125.45.100, 74.125.67.100
Connecting to google.com|74.125.53.100|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
...
Saving to: `index.html.3'

И т.п.

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

Проверьте свои /etc/nsswitch.conf файл (или любой другой эквивалент в Debian, если это не так).

host и nslookup всегда выполните поиск в DNS.

Однако другие приложения сначала будут искать в NSS другие системы именования (например, /etc/hosts, Шекелей и т. Д.). Если что-то еще настроено, но не работает, это может помешать приложению попытаться использовать DNS.

Спасибо за ответы, ребята!

Это был файл nsswitch.conf. Я настроил LDAP из учебника, который сказал мне использовать эту строку в хостах:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

Когда я изменил его на это:

hosts: files dns mdns4_minimal [NOTFOUND=return] mdns4

Работает без проблем. Итак, я предполагаю, что конфигурационный файл nsswitch заставлял его возвращать null, если он не найден в файлах или mdns4_minimal, верно?

Спасибо за вашу помощь!

У меня была такая же проблема, но рядом с изменением /etc/nsswitch.conf:

hosts: files dns mdns4_minimal [NOTFOUND=return] mdns4

Мне также пришлось изменить серверы имен:

+ Изменить /etc/resolv.conf поэтому он указывает на серверы имен Google. Те, что добавлены менеджером сети, у меня не работают.

# RED 2013-03-31
nameserver 8.8.8.8
nameserver 8.8.4.4

Первое, что нужно попробовать - это проверить, правильно ли работает DNS.

# host google.com
google.com has address 74.125.67.100
google.com has address 74.125.45.100
google.com has address 74.125.53.100

Если вы не получили этого ответа, проверьте /etc/resolv.conf и найдите серверы имен, перечисленные в этом файле. Можете ли вы пинговать каждого из них?

Попробуйте запросить каждый из них по отдельности:

# host google.com 12.34.56.78

Можете ли вы разрешить другой хост?

Может быть, на машине с ошибкой настроен недействительный прокси? Попробуй это:

# wget --no-proxy google.com