iMac не может разрешить DNS (или найти маршрут к хосту?) для некоторых сайтов, но Windows может?

1

В моей домашней сети у меня есть пара компьютеров на базе Windows, у которых нет известных проблем с DNS, но с моим OSX iMac у меня есть проблемы с разрешением нескольких случайных доменов. Некоторые домены, с которыми у меня проблемы:

  • ehow.com
  • about.com
  • nationalshoppingservice.com

Помимо просмотра файла / etc / hosts (который я считаю вполне подходящим), что я должен проверить на iMac на наличие проблем, связанных с DNS, или какие инструменты следует использовать, чтобы помочь диагностировать проблему, с которой я сталкиваюсь?

Используя команду dig, я получаю:

; <<>> DiG 9.4.3-P3 <<>> @4.2.2.2 www.nationalshoppingservice.com
; (1 server found)
;; global options:  printcmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3468
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.nationalshoppingservice.com. IN    A

;; ANSWER SECTION:
www.nationalshoppingservice.com. 14400 IN A 64.40.111.81

;; Query time: 86 msec
;; SERVER: 4.2.2.2#53(4.2.2.2)
;; WHEN: Tue Apr 12 18:22:42 2011
;; MSG SIZE  rcvd: 65

После того, как я попробовал некоторые из предложений, я считаю, что DNS - это не та проблема ... когда я пинговал на www.nationalshoppingservice.com, вот что я получил:

PING www.nationalshoppingservice.com (64.40.111.81): 56 data bytes
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host
ping: sendto: No route to host

Таким образом, похоже, что DNS разрешается, но маршрут к хосту не может быть найден? Что здесь происходит?

Уолли Аткинс
источник

Ответы:

3

Командная строка будет твоим другом. Во-первых, у вас может вообще не быть проблем с DNS. Вы должны определить это в первую очередь. Лучший инструмент для этой работы dig. Откройте терминал и введите

dig @4.2.2.2 ehow.com

Компоненты этой команды:

dig          :   the command
@4.2.2.2     :   this tells dig where to ask.  We are specifically asking a
                 known provider in this case Level3.  You could easily put
                 8.8.8.8 (Google) or any other provider here.
ehow.com     :   the domain you wish to query for.

Вы получите обратно вывод, как:

; <<>> DiG 9.7.2-P2 <<>> @4.2.2.2 ehow.com
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 43699
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;ehow.com.          IN  A

**;; ANSWER SECTION:
ehow.com.       118 IN  A   98.124.249.20**

;; Query time: 1 msec
;; SERVER: 4.2.2.2#53(4.2.2.2)
;; WHEN: Mon Apr 11 01:51:12 2011
;; MSG SIZE  rcvd: 42

РАЗДЕЛ ОТВЕТА является важной частью. Если вы получите ответ, значит, ваш iMac в порядке, и он может «получить» доступ к этому домену.

Следующим шагом является замена @ 4.2.2.2 на IP-адрес или имя хоста вашего обычного DNS-сервера. Обычно это предоставляется вашим провайдером. Если вы получите тот же ответ, то вы знаете, что DNS не является вашей проблемой, и вы можете начать искать в другом месте. Вам также нужно выполнить эти тесты несколько раз, чтобы убедиться, что вы получаете хорошее время отклика. Если вы когда-нибудь получите:

;; connection timed out; no servers could be reached

Тогда вы знаете, что не получаете ответ. Если это происходит с перерывами, вы можете заметить это больше на iMac по сравнению с вашими компьютерами Windows из-за кэширования. По своему опыту я обнаружил, что машины Windows кэшируют ответы DNS дольше, чем Mac.

Ketema
источник
3

Для устранения неполадок DNS на Mac OS X, вы должны использовать как традиционный Unix DNS поиска инструмент , как (выбрать один :) host, digи nslookup, так же как современный инструмент , который требует Mac OS X специфические интерфейсы DNS поиска, такие как dns-sd -Q.

API поиска DNS, которые вызывают большинство приложений Какао, маршрутизируются через mDNSResponderдемона, что означает, что если у ваших приложений с графическим интерфейсом возникают проблемы с поиском DNS, dns-sd -Qвероятно, покажет вам то же самое.

Традиционные средства поиска DNS Unix используют более традиционный код распознавателя DNS Unix, что означает, что они могут разрешать то, что приложения Cocoa не могут (и наоборот).

Если вы можете найти что-то с помощью, digно не с помощью dns-sd, то вы можете попытаться убить mDNSResponderдемона и позволить ему launchdавтоматически перезапустить его (я обнаружил, что HUPping mDNSResponder не всегда достаточно).

sudo killall mDNSResponder
Spiff
источник
1

У вас на iMac установлено какое-либо программное обеспечение для блокировки IP-адресов или аналогичные устройства?

Кроме того, попробуйте зайти в Настройки-> Сеть-> Дополнительно-> DNS и сбросить записи DNS; избавиться от посторонних.

Если это не сработает, попробуйте (временно) создать новую учетную запись в iMac или войдите в другую, чтобы узнать, можете ли вы получить доступ к веб-сайтам из них.

Vervious
источник
Никаких блокировок IP-адресов, о которых я знаю ...
Уолли Аткинс
0

Чтобы проверить что-то, вы можете перейти в «Настройки» -> «Сеть» -> «Дополнительно» -> DNS и добавить запись DNS для общедоступного DNS Google 8.8.8.8. Если это решит проблему, вам придется выяснить, какие настройки DHCP использует ваш маршрутизатор при раздаче IP-адресов и информации DNS. Если ваш маршрутизатор получает информацию DNS от вашего интернет-провайдера, то это может быть вашей проблемой, возможно, просто медленным ответом. Вам не нужно использовать настройки DNS вашего интернет-провайдера.

Я часто использую 8.8.8.8 для тестирования, но в основном использую Opendns для дополнительного контроля.

надеюсь, это поможет

lysdexic
источник