Разрешить имя хоста с IP-адреса


Ответы:


121

Команда , которую вы ищете, называется nslookup, отлично работает для обратного поиска IFF кто - то настроил обратный файл зоны, которую они не всегда делают.


88

Если все вышеперечисленное не помогает, и вы специально ищете компьютер с Windows, вы можете использовать

nbtstat -a 192.168.1.50

Возвращенные данные будут всеми записями NetBIOS, имеющимися на машине. Тип с именем записи <20h> обычно будет именем машины.


3
Не работает при подключении через открытый vpn
— Александр.

@Flextra - вам нужен SMB-доступ к машине. Ваш VPN может блокировать его.
— Лось

Интересно, выглядит он лавирует на полный доменное имя в форматировании: Pinging NETBIOSNAME.DOMAINNAME.com [xxx.xxx.xxx.xxx]. Если это в сети, а не в домене (для меня интересующая система Unix), то ping -aпросто форматирует с одним ipaddress, это выглядит так.
— jxramos

Работает для меня. Как раз то, что мне было нужно!
— FearlessFuture

57

Для многих IP-адресов вы можете просто использовать ping -a, например

ping -a 209.85.229.106

вернусь

Pinging ww-in-f106.google.com [209.85.229.106] with 32 bytes of data:

Reply from 209.85.229.106...........

2
Это то, что я всегда использую в первую очередь, так как оно универсально доступно практически на каждой машине.
— Goyuix

14
ping ооочень часто используется для простого поиска DNS ... вздох не делайте этого.
— PEra

это единственный ответ, который дал мне имя хоста от моей малины в моей локальной сети. @ Пера, почему это плохой ответ?
— Энди

29

Если вы используете команду nslookup с IP-адресом в качестве первого аргумента, она вернет запись PTR (обратная запись), если она существует. Например:

nslookup 192.168.1.50

2

Используйте копать. Порт Windows доступен из ISC здесь (смотрите в поле для немедленной загрузки ссылку на ZIP-файл). Вот их люди страница ссылка на раскоп .

Идея Уорда о том, что записи обратного просмотра часто не создаются, очень верна. Обратный поиск часто терпит неудачу, потому что многие администраторы не беспокоятся о создании записей ptr.


1

(протестировано под Windows 10 x64)

Из командной строки:

FOR /F "tokens=2 delims= " %A in ('2^>NUL NSLOOKUP "%IP_ADDRESS%" ^| FINDSTR /C:": "') do ECHO %A

Внутри скрипта:

FOR /F "tokens=2 delims= " %%A in ('2^>NUL NSLOOKUP "%IP_ADDRESS%" ^| FINDSTR /C:": "') do ECHO %%A

Две (боковые) заметки:

  • Чтобы подавить NSLOOKUPошибки, вы должны использовать 2^>NULвместо1^>NUL
  • Я использовал FINDSTR /Cдля извлечения значения после четырех пробельных символов. Поскольку кажется, что четыре Name:элемента существуют только для записи, это единственный способ заставить ее работать в других локализованных системах.

0

psexec \ 192.168.0.65 имя хоста

DMHD006 имя хоста вышло на 192.168.0.65 с кодом ошибки 0.


1
Имейте в виду, что настроенное имя хоста не обязательно совпадает с именем хоста, настроенным в DNS.
— Джеральд Шнайдер

-2

если вы хотите узнать имя хоста в той же сети, тогда, пожалуйста, используйте другую машину с такой же сетью и используйте ниже, рекомендуйте
Ping -an ip addres


2
Разве вы не заметили, что этот ответ уже был здесь? - и он не предназначен для этого.
— Эса Йокинен
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.