Как отладить разрешение имен DNS? (nslookup работает, а telnet - нет)

10

Я пытаюсь подключиться к веб-сайту:

http://superuser.com.sixxs.org

я могу пинговать адрес:

C:\Users\Ian>ping /6 superuser.com.sixxs.org

Pinging ipv6.nginx.sixxs.net [2001:838:2:1::30:67] with 32 bytes of data:
Reply from 2001:838:2:1::30:67: time=257ms
Reply from 2001:838:2:1::30:67: time=176ms
Reply from 2001:838:2:1::30:67: time=161ms
Reply from 2001:838:2:1::30:67: time=164ms

Ping statistics for 2001:838:2:1::30:67:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 161ms, Maximum = 257ms, Average = 189ms

Но ни пинг :

C:\Users\Ian>ping supersuer.com.sixxs.org
Ping request could not find host supersuer.com.sixxs.org.
  Please check the name and try again.

Но я не могу перейти к нему (в Chrome или т. Е. ):

введите описание изображения здесь

не могу я телнет к нему

C:\Users\Ian>telnet superuser.com.sixxs.org 80
Connecting To superuser.com.sixxs.org...Could not open connection to the host,
  on port 80: Connect failed

Но nslookupрешает имя нормально, с авторитетной записью и всем!

Сначала мы сбрасываем dns, на тот случай, если кто-то захочет предположить, что это связано с кэшированием dns:

C:\Users\Ian>ipconfig /flushdns

Windows IP Configuration

Successfully flushed the DNS Resolver Cache.

А теперь вернемся к поиску:

C:\Users\Ian>nslookup superuser.com.sixxs.org
Server:  solo.avatopia.com
Address:  10.0.0.98

Non-authoritative answer:
Name:    ipv6.nginx.sixxs.net
Addresses:  2001:838:2:1:2a0:24ff:feab:3b53
          2001:960:800::2
          2001:1af8:4050::2
          2620:0:6b0:a:250:56ff:fe99:78f7
          2001:838:2:1::30:67
Aliases:  superuser.com.sixxs.org

Все эти адреса работают:

  • Я могу pingих
  • Я могу telnetпортировать 80 на них
  • Я могу просматривать в Chrome (например http://[2001:838:2:1::30:67]) к ним

Имя даже разрешается, когда я вручную вызываю функцию Windows API GetAddrInfo .

Почему , как я могу диагностировать , что ping, telnet, Chromeи Internet Explorerделают неправильно?

Примечание : Wireshark теперь помогает, потому что dns server ( solo.avatopia.com) находится на другой стороне зашифрованной ссылки vpn; и WireShark отказывается расшифровывать зашифрованный трафик vpn.

Ян Бойд
источник
В вашем примере пинга есть опечатка.
Гарри Джонстон
Что произойдет, если вы попытаетесь пропинговать, telnet или перейти к каноническому имени ipv6.nginx.sixxs.net?
Гарри Джонстон
@HarryJohnston Где pingопечатка? я не вижу этого ...
Ян Бойд
1
@HarryJohnston Ohhhh, pingнужен /6параметр; он не понимает, что если он может разрешить только адрес ipv6, ему нужно отправить пакет IPMP IPv6.
Ян Бойд
глупый вопрос, а настроен ли сам веб-сервер для работы на ipv6? это работает на ipv4 или других известных системах с поддержкой ipv6? Вы пытались подключиться к ipv6 эквиваленту localhost?
подмастерье Компьютерщик

Ответы:

2

Разрешение DNS не означает автоматически достижимость HTTP; в вашем случае это на самом деле является частью проблемы.

sixxs.orgотвечает на все DNS-запросы с помощью CNAMEдо ipv6.nginx.sixxs.net. Например, iamuglyочевидно, что не может быть реальным сайтом, так как нет домена верхнего уровня.

[mpenning@Bucksnort ~]$ dig +short iamugly.sixxs.org
ipv6.nginx.sixxs.net.
[mpenning@Bucksnort ~]$ dig +short google.com.sixxs.org
ipv6.nginx.sixxs.net.
[mpenning@Bucksnort ~]$ dig google.com.sixxs.org

; <<>> DiG 9.7.3 <<>> google.com.sixxs.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 22229
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;google.com.sixxs.org.          IN      A

;; ANSWER SECTION:
google.com.sixxs.org.   3553    IN      CNAME   ipv6.nginx.sixxs.net.

;; AUTHORITY SECTION:
sixxs.net.              3316    IN      SOA     ns.paphosting.net. hostmaster.sixxs.net. 2012010601 86400 7200 1209600 86400

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Mon May 28 15:39:58 2012
;; MSG SIZE  rcvd: 133

[mpenning@Bucksnort ~]$

ipv6.nginx.sixxs.netэто просто HTTP-прокси, который перенаправляет трафик, поэтому, если его прокси работает, он может telnetвыполнять проверку связи, и вы можете на него ...

[mpenning@Bucksnort ~]$ telnet superuser.com.sixxs.org 80
Trying 2620:0:6b0:a:250:56ff:fe99:78f7...
Connected to ipv6.nginx.sixxs.net.
Escape character is '^]'.
^]
telnet> quit
Connection closed.
[mpenning@Bucksnort ~]$

После того, как вы перейдете к superuser.com.sixxs.org, sixxs.netперенаправит вас через, ipv6gate.sixxs.netи они переписывают html-контент Super User, отправив все ссылки на странице через foo.sixxs.org.

введите описание изображения здесь

Что-то мешает вам пройти sixxs.org, и это, вероятно, происходит от vpn-сервера, брандмауэра или прозрачного http-прокси в другом месте вашего пути.

Майк Пеннингтон
источник
1

Вот мое предположение о том, что происходит.

(Первоначально я собирался опубликовать это как комментарий, но он слишком длинный, поэтому я опубликую его как ответ и предоставлю это себе и / или другим, чтобы решить, если это правильно.)

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

Я попробовал произвольный GUID и да 0937c1fa-15dc-4a3a-837c-b9ada0953a7e.sixxs.org разрешается (и по тем же ip-адресам, что и superuser.com.sixxs.org)

Это означает, что им будет отправлен весь трафик на 0937c1fa-15dc-4a3a-837c-b9ada0953a7e.sixxs.org. Когда он доходит до них, они, вероятно, проверяют заголовок http-хоста, чтобы определить, как с ним обращаться. В случае 0937c1fa-15dc-4a3a-837c-b9ada0953a7e.sixxs.org, я подозреваю, что они просто проигнорируют запрос, поскольку вряд ли будут знать, что с ним делать.

В случае с superuser.com.sixxs.org вы могли бы подумать, что они должны перенаправить это на superuser.com, но это, похоже, не работает.

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

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

Суть в том, что я не совсем уверен, что telnet, Chrome и Internet Explorer на самом деле делают что-то не так, и я бы посоветовал проверить с sixxs.net, прежде чем предположить, что что-то не так с вашей настройкой.

sgmoore
источник
0

У меня была проблема с симляром, вот что я попробовал.

  1. Это может быть связано с LSP Winsock, попробуйте исправить LSP, чтобы выяснить причину ошибки.
  2. Сбросить интернет-протокол (TCP / IP)
  3. Запустите, sfc /scannowчтобы исправить любые проблемы, которые могут возникнуть из-за поврежденных файлов.
  4. Сброс WinSock netsh winsock reset
    5. Несмотря на то, что это совершенно не связано, попробуйте сбросить кэш Branch netsh branchcache reset
    6. Сбросить конфигурацию IPv6 netsh int ipv6 reset
    7. Попробуйте удалить и переустановить сетевой адаптер из диспетчера устройств.
HackToHell
источник
0

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

netsh winsock reset catalog

netsh int ipv4 reset reset.log

netsh int ipv6 reset reset.log

ipconfig /release

ipconfig /flushdns

ipconfig /renew

ipconfig /registerdns
Барти
источник