Назад | Перейти на главную страницу

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

Я ищу инструмент командной строки, который получает IP-адрес и возвращает имя хоста для Windows.

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

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

nbtstat -a 192.168.1.50

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

Для многих 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...........

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

nslookup 192.168.1.50

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

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

(протестировано под 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: запись, похоже, это единственный способ заставить его работать в других локализованных системах.

psexec \ 192.168.0.65 имя хоста

DMHD006 имя хоста завершилось на 192.168.0.65 с кодом ошибки 0.

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