Ping по имени компьютера нет, а по IP есть. Почему?
Вроде бы всё банально, но разобраться пока не могу.
Начнём с простого есть компьютер Win7x86 сетевое имя OracleV.
Есть второй компьютер Win10x64 имя (не важно).
С второго компьютера пинг на первый по ip идёт 192.168.0.193.
Но при вводе команды ping OracleV, почему-то пишет:
"Обмен пакетами с OracleV [192.168.0.192] с 32 байтами данных:"
А при вводе >nslookup OracleV.
╚ь : OracleV
Address: 192.168.0.193
Что прикажете делать?)
ipconfig /flushdns и netsh winsock reset делал, не помогло(
Компьютер перезагружал.
Если совет про IPv6 не помог (а вроде бы по логике не должен), то проверьте что у вас в hosts и скажите что у вас на DNS сервере (ну и расскажите про него деталей), есть там нормальная запись?
Клёвый Админ: Про IPv6 совет не помог проблема осталась, но "проблема всплыла при поднятии вирутальной машины с Ubuntu" очень похоже на мою ситуацию, я поднял Debian на VirtualBox
Клёвый Админ: В hosts на Win10x64 всё закоменчено, живых строк нет)
Про DNS сервер ничего не могу сказать, я тут не админ)
Но по команде:
C:\Users\*****>nslookup OracleV
Server: *****
Address: 192.168.0.***
Name: OracleV
Address: 192.168.0.193
Я думаю что всё работает хорошо, и проблема таится в каком-то "кэше" сетевых имён)
В этом плане не очень я силён знаниями как Windows опрашивает и где запоминает сетевые имена и как долго хранит...
TheSima: я ведь правильно понял, что у вас в пинге и в ДНС отличается адрес узла, который в итоге резольвится?
Я ведь правильно понял, что этот узел - это та самая виртуалка, которую вы подняли?
Если так, то похоже вы неправильно сконфигурировали сеть на виртуалбоксе, нужно поменять её параметры и выставить значение в бридж, сейчас похоже там NAT.
Клёвый Админ: Сетка настроена бриджом(мост) IP у виртуалки 192.168.0.216
$uname -n (имя хоста)
debian4ik
Но мне кажется что-то в этом есть... Виртуалка, сетевуха(виртуальная)...
TheSima: такс, теперь я запутался, напишите по-подробнее, какой это хост, с какого хоста как пингуете, и кто в итоге в виртуалке и что она вообще делает. И точно ли у вас в сетевых картах ДНС равен тому который отдаёт по nslookup вам ответы, и кто из них отдаёт правильные ответы и какие.
Клёвый Админ: Да виртуалка тут не причём, просто факт что она есть и что сетевуха у неё мостом настроена.
Проблема в пинге Win7x86 с именем OracleV, у него IP 192.168.0.193, при вызове команды "ping OracleV" с Win10x64 (IP 192.168.0.201) даёт следующий результат:
ping OracleV
Обмен пакетами с OracleV [192.168.0.192] с 32 байтами данных:
и пинга нет, естественно потому что IP 192.168.0.192. В связи с этим вопрос почему да как?
TheSima: ну вот выше попробуйте, может поможет.
А баг связан с ДНС или с arp, нужно понять откуда ваша система решила что у этой машины не верный адрес.
Посмотрите что в arp -a у вас. Очистите её.
Напишите системным администраторам сети о проблеме. Это их вотчина, если сеть вам не подконтрольна. У них может быть больше инструментов для диагностики.
Клёвый Админ: Почитайте комментарии в ответе "Денис Блейк @kyleabrock", там почти докопался до сути...
После netsh winsock reset catalog
netsh int ipv4 reset reset.log
и перезагрузки проблема ушла, спасибо!
Вот только всё равно не ясно в чём была причина, но всё чаще я ненавижу Windows 10, поэтому есть подозрения в её сторону)
Вам спасибо! Как найду истину допишу ещё коммент от себя с полным описанием, если найду)
TheSima: ну и плюс зарепортите своим админам это обязательно. Сейчас это мелочь, но если у вас в сети есть такие проблемы - то рано или поздно может бомбануть.
у меня подобная проблема всплыла при поднятии вирутальной машины с Ubuntu, по IP все было OK а по имени нет. в общем пришлось отключить IP6 и имя стало нормально резолвиться.
DNS разрешает адрес всегда, кроме тех случаев, когда это жестко не ограничено брандмауэром. Это взаимодействие по 53/UDP. Ping - это ICMP взаимодействие которое брандмауэром по умолчанию запрещено. NSLookup разрешает dns имя, а не пингует хост.
Денис Блейк: Эммм... я может чего-то не понимаю?) пинг идёт по IP-адресу, так?
при вводе команды "ping 192.168.0.193" пинг идёт
а при "ping OracleV", который определяет IP самого OracleV как 192.168.0.192 естественно не идёт, так как у компьютера другой IP, а именно 192.168.0.193, вот собственно вопрос откуда он(ping) берёт 192.168.0.192?
Вот в этом таится вся проблема кажется..
У компьютера был раньше этот адрес, но DHCP-сервер решил дать новый)
Началась проблема... костылить можно, но я хочу понять суть(корень узреть).
TheSima: нужно смотреть в первую очередь записи на ДНС, и он у вас 1? С самого ДНС-сервера разрешение имени через nslookup и при пинге проходит в 1 адрес? На дхцп нет резервации?
Если у вас dns сервер, обновите запись dns. Если разрешение имен по netbios то не обновилась запись. Проверьте по nbtstat -a OracleV. И на одной и на другой машине. Если на основной ip обновлен, а на другой нет, то не приходят широковещательные запросы netbios. Для приема таких запросов должно быть включено сетевое обнаружение. Если firewall отключен то оно уже включено. Тогда проверьте, включены ли у Вас следующие службы:
Служба обнаружение SSDP (SSDP Discovery)
Помощник TCP/IP NetBIOS (TCP/IP NetBIOS Helper)
Обозреватель (Computer Browser)
Сервер (Server)
Сейчас буду всё проверять, я думаю мы на верном пути, а пока заметочка:
NetBIOS через TCPIP не поддерживает IPv6. Для целей взаимодействия в локальном сегменте сети без участия опорных серверов (DNS/WINS) с использованием IPv4/IPv6 разработан протокол LLMNR
Денис Блейк: Начал проверять, вот как Вам такое:
C:\Users\*****>nbtstat -A 192.168.0.192
Ethernet:
Адрес IP узла: [192.168.0.201] Код области: []
Узел не найден.
C:\Users\****>nbtstat -A 192.168.0.193
Ethernet:
Адрес IP узла: [192.168.0.201] Код области: []
Таблица NetBIOS-имен удаленных компьютеров
Имя Тип Состояние
----------------------------------------------------
ORACLEV <00> Уникальный Зарегистрирован
ORACLEV <20> Уникальный Зарегистрирован
WORKGROUP <00> Группа Зарегистрирован
WORKGROUP <1E> Группа Зарегистрирован
Адрес платы (MAC) = 90-2B-34-**-**-**
C:\Users\****>nbtstat -a ORACLEV
Ethernet:
Адрес IP узла: [192.168.0.201] Код области: []
Узел не найден.
C:\Users\*****>nbtstat -a OracleV
Ethernet:
Адрес IP узла: [192.168.0.201] Код области: []
Узел не найден.
Денис Блейк: И ещё, вот корень зла:
C:\Users\*****>nbtstat -c
Ethernet:
Адрес IP узла: [192.168.0.201] Код области: []
Таблица удаленного буфера NetBIOS-имен
Имя Тип Адрес узла Время жизни [с]
--------------------------------------------------------------------
ORACLEV <00> Уникальный 192.168.0.192 174
ORACLEV <20> Уникальный 192.168.0.193 137
Денис Блейк: После окончания "Время жизни" смотрю ещё раз кэш, затем пинг(в другом окне) и ещё раз кэш:
C:\Users\16274>nbtstat -c
Ethernet:
Адрес IP узла: [192.168.0.201] Код области: []
Буфер не содержит имен
C:\Users\16274>nbtstat -c
Ethernet:
Адрес IP узла: [192.168.0.201] Код области: []
Таблица удаленного буфера NetBIOS-имен
Имя Тип Адрес узла Время жизни [с]
--------------------------------------------------------------------
ORACLEV <00> Уникальный 192.168.0.192 598