На моей рабочей станции Windows XP я могу найти машину, к которой я хочу подключиться, в DNS nslookup
:
nslookup wolfman
Server: dns.company.com
Address: 192.168.1.38
Name: wolfman.company.com
Address: 192.168.1.178
Но, когда я пытаюсь подключиться к этой машине, я получаю сообщение об ошибке, сообщающее, что машина не может быть найдена (то есть не может быть найдена в DNS):
C:\> ping wolfman
Ping request could not find host wolfman. Please check the name and try again.
Я могу подключиться, если использую IP-адрес напрямую:
C:\> ping 192.168.1.178
Pinging 192.168.1.178 with 32 bytes of data:
Reply from 192.168.1.178: bytes=32 time=41ms TTL=126
Reply from 192.168.1.178: bytes=32 time=41ms TTL=126
Reply from 192.168.1.178: bytes=32 time=44ms TTL=126
Reply from 192.168.1.178: bytes=32 time=38ms TTL=126
Я мог бы обойти это, добавив запись в мой hosts
файл, но я бы предпочел выяснить, почему это происходит. Проблема временная, большую часть дня я могу подключиться к машине просто отлично.
Как это возможно?
ETA: я оставил это для краткости, но его спросили:
C:\> ping wolfman.company.com
Ping request could not find host wolfman.company.com. Please check the name and try again.
ETA: другие приложения получают те же результаты. Я только попробовал ping, чтобы упростить. telnet не может подключиться, приложения Cygwin выводят сообщение «неизвестный хост-волк».
Обновление: с помощью wireshark я обнаружил, что моя рабочая станция не пытается выполнить поиск DNS. Это просто сообщение об ошибке «Не удалось найти хост».
источник
.company.com
.nslookup
который используетsearch domain
параметр предложения DHCP (или то, что вы указываете для статической конфигурации IP). Подтвердите это, выполнив то, что сказал @SLaks, и пропингуйте полное доменное имя хоста :)ping -4 wolfman
?Ответы:
Я считаю, что nslookup открывает winsock-соединение на DNS-порту и выдает запрос, тогда как ping использует службу DNS-клиента. Вы можете попытаться остановить этот сервис и посмотреть, имеет ли это значение.
Некоторые команды, которые будут повторно инициализировать различные состояния сети:
Сбросить записи WINSOCK по умолчанию для установки:
netsh winsock reset catalog
Сброс стека TCP / IP к настройкам по умолчанию:
netsh int ip reset reset.log
очистить кэш распознавателя DNS:
ipconfig /flushdns
обновить регистрацию DNS-клиента и обновить аренду DHCP:
ipconfig /registerdns
очистить таблицу маршрутизации:
route /f
(требуется перезагрузка)источник
ipconfig /registerdns
(я уточнил в своем ответе ниже)Попробуйте проверить связь с именем хоста и точкой. Так что вместо
ping wolfman
использованияping wolfman.
Это должно помочь вам решить проблему, не прибегая к обходным путям с файлом hosts и т. Д.
источник
Попробуй
ipconfig /displaydns
поискать волчонка Если он кэшируется как «имя не существует» (возможно, из-за предыдущего периодического неудачного поиска), вы можете очистить кеш с помощьюipconfig /flushdns
.nslookup
не использует кеш, а запрашивает DNS-сервер напрямую.источник
nslookup -all
? Вnovc
списке?Попробуйте добавить
.
в DNS-суффиксы для этого соединения. То есть, перейти к:.
в качестве суффикса.Те же шаги проиллюстрированы на следующем снимке экрана:
Это должно заставить
ping wolfman
работать.объяснение
nslookup wolfman
(поиск сервера имен: wolfman) отправляет имя хоста (wolfman
) в DNS (систему доменных имен), чтобы получить соответствующий IP-адрес. Это единственная цельnslookup
команды. Это уже работает, поэтому мы убедились, что DNS работает и чтоwolfman
действительно соответствует IP-адресу.Напротив,
ping wolfman
нужно сделать две вещи:wolfman
).В Windows (даже в последних версиях, таких как Windows 10) первый шаг может легко провалиться. В целях обратной совместимости Windows поддерживает различные методы разрешения имени хоста (файл hosts, DNS, NetBIOS / WINS, файл LMHOST).
К сожалению, похоже, что
ping
команда Windows не всегда пытается выполнить поиск DNS. Я не знаю конкретных условий, которые вызывают это поведение.К счастью, мы можем заставить Windows выполнить поиск DNS, используя полное доменное имя (полное доменное имя). На практике, мы делаем это с помощью суффикса в
.
точку на имя хоста:wolfman.
. Попробуйтеping wolfman.
и убедитесь, что это работает.Последний шаг - заставить Windows добавить эту точку сама. Я уже показал, как это сделать, в начале этого ответа.
источник
wolfman
и поиск DNS (по-видимому) не является главным приоритетом среди указанных методов. Теперь, если вы используетеwolfman.
вместо этого, Windows установит приоритет поиска DNS по сравнению с другими методами, потому чтоwolfman.
это полное доменное имя, которое (очевидно) требует поиска DNS.nslookup
работает иначе, чем другие команды при разрешении имен / IP-адресов в Windows.Нормальный метод разрешения на Windows , выглядит следующим образом :
nslookup
с другой стороны, используется для тестирования серверов доменных имен.источник
Я боролся с подобной проблемой и попробовал решение, предложенное @harrymc. Я обнаружил, что в конечном итоге (по крайней мере, в некоторой степени) работает на форуме Microsoft Technet ( nslookup работает, но больше ничего не имеет DNS на автономном ПК с Win7 )
Вот цитата:
Так что в основном мне не хватало
ipconfig /registerdns
источник
/registerdns
командыПросто сегодня у нас была та же проблема , но решение было другим . Поэтому я решил добавить его для справки, так как это был самый популярный результат поиска.
ping
не разрешит имя хоста, ноnslookup
может. (Наблюдается на 2 разных хостах Windows Server 2012 R2.)источник
Может быть, wolfman.company.com указан в C: \ Windows \ system32 \ drivers \ etc \ hosts?
nslookup пропускает этот файл и всегда запрашивает DNS, тогда как ping и другие инструменты в первую очередь ищут в файле «hosts», а затем в DNS.
источник
У меня была такая же проблема в системе Windows 2012R2 (= 8.1), и я попробовал все вышеперечисленные предложения, но ни одно из них не помогло:
- Проверка полного имени работала.
- пинговать безоговорочное имя не стал.
- Оба работали на нескольких других системах, которые имели одинаковую ОС и, очевидно, одинаковую конфигурацию.
- Все необходимые строки поиска суффикса были там.
(Обратите внимание, что некоторые из предложенных исправлений, например обходной путь для запросов с несколькими метками, явно не имеют значения, поскольку неквалифицированное имя имеет только одну часть.)
Затем я заметил, что у целевой системы, которую я пытался пропинговать, НЕ было адреса IPv6. Поэтому я попробовал "ping -4 unqualified_name " и бинго! это сработало.
Поэтому по какой-то причине только в этой системе ping пытался разрешить неквалифицированное имя-> IPv6-адрес, а не неквалифицированное имя-> IPv4.
Для меня решение было полностью отключить IPv6, так как он мне вообще не нужен. Но мне было бы очень интересно найти более мягкий способ сказать ping (или, предположительно, службе клиента DNS) попытаться разрешить адреса IPv4 и IPv6.
источник
Добавление записи в файл
c:/windows/system32/drivers/etc/hosts
может исправить это.источник
Я пытался выяснить, почему на одном компьютере win 7 я могу использовать тот,
ping server
который работает, а другой не может решитьserver
. Однако оба могли пинговать,server.lan
чего я не совсем понял.Оказывается, я испортил некоторые настройки (DNS-суффиксы), чтобы не использовать полные доменные имена при использовании рабочего VPN. Мне пришлось добавить свои локальные
.lan
адреса к этим суффиксам, чтобы оба компьютера работали одинаково.Перейдите в Панель управления> Сеть и Интернет> Сетевые подключения, щелкните правой кнопкой мыши сетевое подключение и нажмите Свойства. Нажмите Internet Protocol Version 4 и нажмите кнопку «Свойства». Затем нажмите кнопку Дополнительно ... в этом новом окне. Перейдите на вкладку DNS, здесь я добавил DNS-суффикс для своей работы, но он также нужен для моих обычных домашних подключений.
источник
Я тоже сталкивался с этой проблемой. Самый простой способ исправить это для меня - просто добавить
.
в конец имени хоста. Однако это довольно раздражает. Большинство сетей не требуют этого. Я бы предпочел не говорить всем остальным в сети, чтобы они делали это, когда им нужен доступ к одному и тому же ресурсу.Я рассматривал предложение Фредерика Аалунда как возможное решение и заметил, что они предложили переключиться со стандартной опции «Добавить основной DNS-файл и специфичные для соединения суффиксы DNS». Это заставило меня задуматься, может быть, моя сеть была просто слегка неправильно настроена.
Глядя на мои настройки DD-WRT, «Домен LAN» остался неустановленным. Установка этого значения в произвольную строку, кажется, устранила эту проблему для всех клиентов в моей сети без специальной настройки на каждой машине, решение, которое я хотел! :)
источник
Я столкнулся с этим, когда мы мигрировали в Windows 7 из Windows XP, проблема была связана с проблемой Windows 7 Multi Label DNS Query.
Разрешить добавление суффикса DNS к неквалифицированным запросам имен с несколькими метками - см .:
http://computerstepbystep.com/allow_dns_suffix_appending_to_unqualified_multi_label_name_queries.html
Надеюсь это поможет
источник
Если на Mac OS X это может быть проблема с кешем DNS:
Дамп кеша
источник
Я поднимаю это, потому что это беспокоило меня в прошлом году и, возможно, я нашел обходной путь.
Мне показалось, что какая-то система DNS-кэширования в клиенте Windows неисправна. Это влияет на Windows 7 и 8.1 ... больше ничего не могу сказать о Windows XP. Пинг не разрешает имя. важна не часть icmp, а часть разрешения имен). nslookup предназначен для запросов к серверу имен и делает именно это, без разрешения имен иерархии окон.
Перезапуск службы dnscache помогал каждый раз. Но поскольку я отключил IPv6 на всех клиентских интерфейсах, проблема больше не возникала.
Ура!
источник
Я могу ошибаться, потому что это основано на моих давно забытых днях набора ресурсов для NT4.
Как я помню, PING использует Netbios / WINS и DNS (в таком порядке, по крайней мере, если вы не укажете полное доменное имя).
Служба WINS исчезла много лет назад, но у вас все еще может быть включен Netbios на вашем интерфейсе, и поэтому PING может использовать netbios, которые могут не дать вам никакого результата. Особенно если трафик где-то проходит через роутер.
Просто отключите Netbios, и Ping будет использовать DNS в качестве первого приоритета и добавит зарегистрированный DNS Surffic на интерфейсе к вашему имени хоста.
источник
У меня только что была эта проблема, и я нашел что-то довольно своеобразное, и мне удалось это исправить. Lol
По сути, если у вас есть какие-либо записи в вашем хост-файле, совпадающие с IP-адресом, который пытается разрешить ваш пинг, он потерпит неудачу.
Например, если в вашем DNS у вас есть запись для www.example.com - 10.0.0.20, но затем у вас есть запись в файле hosts вашего клиента, 10.0.0.20 Someelse.com, вы не сможете пинговать www .example.com
Странно да
источник
В моем случае эта проблема была решена путем добавления домена хоста, который я пытался пропинговать, к параметру групповой политики под названием «Список поиска DNS-суффиксов» .
Короче говоря, процедура выглядит следующим образом: откройте
gpedit.msc
и перейдите к немуComputer Configuration -> Administrative Templates -> Network -> DNS Client > DNS Suffix Search List
, установите для него значение «Включено» и добавьте имя домена в список (по умолчанию список пуст).Более подробное описание этих шагов можно найти здесь
источник
У меня была та же проблема, и оказалось, что другая машина имела такой же IP-адрес, и это было причиной.
Сменил IP обратно на DHCP и все работало нормально.
источник
ping bbbbbbb.com
иping bbbbbb.com
для сравнения.)Ни одно из решений здесь не сработало для меня. Что сработало для меня, так это переподключение к vpn моей работы с использованием OpenVPN. Затем после отключения все продолжало работать.
Я полагаю, что проблема была связана с отключением питания, когда мой компьютер был подключен к openVPN. Единственный способ, которым я понял это, был с помощью WireShark. Я заметил, что IP-адреса назначения для всех запросов переходили на IP-адреса во внутренней сети моей работы.
источник
ping использует протокол ICMP, в частности «Echo Request» и «Echo Reply».
многие сети отключают утилиты ICMP для предотвращения атак или базового сканирования сети. Я обнаружил, что многие маршрутизаторы, которые вы приобретаете, поставляются с настройкой отключения пинга и другими утилитами, включенными по умолчанию.
Вы можете найти больше о ICMP здесь:
http://en.wikipedia.org/wiki/Internet_Control_Message_Protocol
источник