Знайдіть імена комп’ютерів у приватній мережі (з nmap?)


10

У локальній мережі я хочу дізнатися імена всіх підключених комп'ютерів за допомогою міжплатформової програми, бажано nmap. Я знаю, що можу зробити

nmap -sn xxx.xxx.xxx.xxx/24

(де xxx.xxx.xxx.xxx - локальна IP-адреса), щоб знайти хости, які є, але як знайти імена хостів комп'ютерів? Вони транслюють це таким чином, що я можу знайти за допомогою nmap?

ОНОВЛЕННЯ: Схоже, сердитий сканер IP може це зробити. Як це зробити? Чи можу я повторити його за допомогою nmap?


3
які імена хостів? Імена DNS? Запитайте свого DNS-сервера.
ragnq

@ragnq nslookup не дає мені імен хостів, але Angry Port Scanner робить. Я намагаюся розібратися, як це зробити за допомогою інструментів nmap та / або командного рядка.
bsamek

Відповіді:


0

Я використовував nmap та інші IP-сканери, наприклад сканер Angry IP. Моє спостереження полягало в тому, що Nmap використовував зворотний DNS для вирішення імен хостів, тому для роботи сервера DNS повинні бути записи зворотного вказівника для хостів. Я виявив, що інші сканери виконують запит PTR із запитом Netbios.

Якщо ви впевнені, що всі хости в цільовій мережі - хости Windows і що у них включено NETBIOS, ви можете скористатися інструментом nbtscan для їх сканування.


3

З поширених запитань Angry IP Scanner (" Імена хостів не показані "):

Злісні сканери IP відображають імена хостів, повернені вашим сервером DNS (ім'я), здійснюючи зворотний пошук . Сервер надає IP-адресу і повертає ім'я хоста, якщо він знає це.

Якщо деякий комп'ютер знає своє ім’я, це не означає, що він надав йому мережевий DNS-сервер. Іншими словами, ім'я хоста, як він сам знає (локальна назва), так і ім'я, приєднане до IP-адреси (глобальне ім'я), як це відомо DNS-серверу, не завжди може збігатися.

Дуже часто запити DNS повертають деякі загальні імена, наприклад, dhcp-12-13.superisp.com, особливо в мережах провайдерів.

Назви відповідають у будь-якому з цих випадків:

  • Ваш комп'ютер надіслав ім'я на сервер DHCP, з якого він отримав IP-адресу, а DHCP-сервер надав його локальному серверу DNS
  • У вас є статична IP-адреса, а ваше локальне ім'я хоста налаштовано відповідно до правил, що відповідають глобальній угоді про іменування у вашій мережі
  • TCP стека вашого хоста повертає локальну назву, якщо локальна IP-адреса запитується, не запитуючи глобальне ім'я

З документації Nmap (" Відкриття хоста "):

За замовчуванням Nmap все ще робить зворотну роздільну здатність DNS для хостів, щоб дізнатися їх імена.

Додаткове читання / інформація тут .


У мережі, в якій я працюю над Angry IP Scanner, показує мені імена хостів, імовірно, здійснюючи зворотний пошук DNS. Те, що ви говорите, - це те, що nmap також робить зворотний пошук. Але це не відображення імен хостів. Як я можу змусити його відображати імена хостів? Або це неправильний інструмент для цієї роботи?
bsamek

1

Виявляється, мені потрібно вказати, --system-dnsщоб отримати назви машин у мережі. Я не впевнений, чому це працює. Можливо, у налаштуваннях DNS є щось несподіване?

ОНОВЛЕННЯ: Насправді він працює на одній VLAN, але не на іншій, але Angry IP Scanner працює на обох.


0

Ви також можете використовувати nmap -A xxx.xxx.xxx.xxx його, щоб у виводі відображалися імена хостів. у своїй мережі я передаю це через grep, щоб отримати лише ту інформацію, яку я хочу. ~grep -e 'scan report' -e 'Computer name'

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