Визначте ім'я хоста з IP-адреси


Відповіді:


121

Команда , яку ви шукаєте, називається nslookup, відмінно працює для зворотного пошуку IFF хто - то налаштував зворотний файл зони, яку вони не завжди роблять.


89

якщо все вищезазначене не вдається, і ви спеціально шукаєте машину Windows, ви можете використовувати

nbtstat -a 192.168.1.50

Повернуті дані будуть усі записи NetBIOS, якими володіє машина. Ім'я машини, що має тип запису <20h>, зазвичай називається.


3
Не працює при підключенні через відкритий vpn
Alexander.Iljushkin

@Flextra - вам знадобиться SMB-доступ до машини. Можливо, ваш VPN блокує його.
Мус

Цікаво, виглядає він лавірує на повний доменне ім'я в форматуванні: Pinging NETBIOSNAME.DOMAINNAME.com [xxx.xxx.xxx.xxx]. Якщо це в мережі, а не в домені (для мене є система Unix, що цікавить), то ping -aпросто форматується лише в ipaddress.
jxramos

Працює для мене. Тільки те, що мені було потрібно!
Безстрашний

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

це єдина відповідь, яка отримала мені ім'я хоста від моєї малини в моїй локальній мережі. @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


2
Ви не помітили, що ця відповідь вже тут? - і це не призначено для цього.
Esa Jokinen
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.