4

Nmap настолько медленный, что его практически невозможно использовать на моем ноутбуке с Windows 8.1.

Я использую Nmap 6.40, и для выполнения простой проверки, которая выполняется за доли секунды на других компьютерах в той же сети, требуется больше минуты. Я пробовал несколько других компьютеров с разными версиями Nmap, но все они получают одинаковый результат за доли секунды. Попытка разных сканирований и разных целей на моем ноутбуке дает одинаковые результаты. Это не медленный ноутбук в целом, Core i7/16GB/SSD, другие приложения работают достаточно быстро

Вот что Nmap говорит на моем ноутбуке (имена хостов и т.д. Изменены):

C:\Users\colinp>nmap -p4730 target 

Starting Nmap 6.40 ( http://nmap.org ) at 2014-03-20 14:28 GMT Standard Time
Nmap scan report for target (192.168.1.1)
Host is up (0.0013s latency).
rDNS record for 192.168.1.1: target
PORT     STATE SERVICE
4730/tcp open  unknown
MAC Address: 2C:76:8A:00:00:00 (Hewlett-Packard Company)

Nmap done: 1 IP address (1 host up) scanned in 79.92 seconds

C:\Users\colinp>

против примера компьютера Ubuntu в той же сети:

colin@ubuntu:~$ nmap -p 4730 target 

Starting Nmap 5.21 ( http://nmap.org ) at 2014-03-20 14:29 GMT
Nmap scan report for target (192.168.1.1)
Host is up (0.00044s latency).
rDNS record for 192.168.1.1: target 
PORT     STATE SERVICE
4730/tcp open  unknown

Nmap done: 1 IP address (1 host up) scanned in 0.03 seconds
colin@ubuntu:~$

РЕДАКТИРОВАТЬ: я только что заметил, что количество времени, занятое подозрительно схожим для другого хоста, не уверен, что это означает:

C:\Users\colinp>nmap -p4730 target2

Starting Nmap 6.40 ( http://nmap.org ) at 2014-03-20 14:47 GMT Standard Time
Nmap scan report for target2 (192.168.1.2)
Host is up (0.00013s latency).
rDNS record for 192.168.1.2: target2
PORT     STATE  SERVICE
4730/tcp closed unknown
MAC Address: 00:25:90:00:00:00 (Super Micro Computer)

Nmap done: 1 IP address (1 host up) scanned in 79.71 seconds

C:\Users\colinp>

Попытка сканирования несуществующего хоста происходит быстрее, но сильно варьируется, от 3 до 16 секунд. Опять же, это занимает 0,03 секунды на сервере Ubuntu.

Разрешение имен не выглядит проблемой на моем ноутбуке, nslookup возвращается почти мгновенно.


РЕДАКТИРОВАТЬ: вывод диагностики, предложенной @bonsaiviking:

C:\Users\colinp>nmap -d -sL target

Starting Nmap 6.40 ( http://nmap.org ) at 2014-03-20 16:40 GMT Standard Time
Winpcap present, dynamic linked to: WinPcap version 4.1.2 (packet.dll version 4.
1.0.2001), based on libpcap version 1.0 branch 1_0_rel0b (20091008)
--------------- Timing report ---------------
  hostgroups: min 1, max 100000
  rtt-timeouts: init 1000, min 100, max 10000
  max-scan-delay: TCP 1000, UDP 1000, SCTP 1000
  parallelism: min 0, max 0
  max-retries: 10, host-timeout: 0
  min-rate: 0, max-rate: 0
---------------------------------------------
mass_rdns: Using DNS server 192.168.x.12
mass_rdns: Using DNS server 192.168.x.11
mass_rdns: Using DNS server 192.168.1.254
mass_rdns: Using DNS server 192.168.2.1
mass_rdns: Using DNS server 192.168.x.12
mass_rdns: Using DNS server 192.168.x.11
mass_rdns: Using DNS server 192.168.x.12
mass_rdns: Using DNS server 192.168.x.11
Initiating Parallel DNS resolution of 1 host. at 16:41
mass_rdns: 52.89s 0/1 [#: 8, OK: 0, NX: 0, DR: 0, SF: 0, TR: 1]
Completed Parallel DNS resolution of 1 host. at 16:41, 0.00s elapsed
DNS resolution of 1 IPs took 52.90s. Mode: Async [#: 8, OK: 1, NX: 0, DR: 0, SF:
 0, TR: 1, CN: 0]
Nmap scan report for target (192.168.1.1)
rDNS record for 192.168.1.1: target
No data files read.
Nmap done: 1 IP address (0 hosts up) scanned in 53.36 seconds

IP-адреса снова изменились. Из перечисленных DNS-серверов 192.168.x.11 и 192.168.x.12 являются моими настоящими DNS-серверами. Понятия не имею, где другие входят в это. Их нет в списке, когда я делаю ipconfig /all хотя следующая нечетная запись была при моем подключении к моему внутреннему коммутатору Hyper-V:

   DNS Servers . . . . . . . . . . . : fec0:0:0:ffff::1%1
                                       fec0:0:0:ffff::2%1
                                       fec0:0:0:ffff::3%1

Не знаете, связана ли проблема с моим запущенным Hyper-V? Также у меня нет активно отключенного IPv6, не знаю, может ли это быть причиной?


больше диагностики, IP-адреса все еще скрыты, надеюсь, последовательно ...

C:\Users\colinp>nslookup -type=PTR 1.1.168.192.in-addr.arpa
Server:  dns-at-my-company.example.com
Address:  192.168.x.12

1.1.168.192.in-addr.arpa.co.uk
        primary name server = ns1.sedoparking.com
        responsible mail addr = hostmaster.sedo.de
        serial  = 2007021501
        refresh = 86400 (1 day)
        retry   = 10800 (3 hours)
        expire  = 604800 (7 days)
        default TTL = 86400 (1 day)

Предыдущая команда отсутствовала . , Это выглядит лучше:

C:\Users\colinp>nslookup -type=PTR 1.1.168.192.in-addr.arpa.
Server:  dns-at-my-company.example.com
Address:  192.168.x.12

1.1.168.192.in-addr.arpa     name = target

2 ответа2

3

Решено в комментариях: Проблема с тем, как Nmap обнаруживает DNS-серверы для использования для своего параллельного обратного разрешения DNS. Вот процесс диагностики и окончательный обходной путь:

Во-первых, вам нужно определить, какая фаза сканирования Nmap замедляет вас. nmap -p4730 target выполнит однопортовое сканирование TCP, но также выполнит разрешение имен (при необходимости), обнаружение хоста ("ping") и обратный поиск имен DNS. Важно знать, работаете ли вы как администратор, так как Nmap использует разные подходы ко всем этим шагам, если у него нет достаточных привилегий для использования лучших и самых быстрых. Запустите однофазное сканирование, чтобы определить, какая фаза медленная:

  1. nmap -d -n -Pn -p 4730 target - только фаза сканирования порта.
  2. nmap -d -n -sn target - только фаза обнаружения хоста.
  3. nmap -d -sL target - только обратная фаза разрешения DNS.

Исходя из ваших комментариев, мы определили, что медленная скорость была обратным разрешением DNS. Добавление флага -d показало, что Nmap выбирает 4 разных DNS-сервера, но только 2 из них были действительны. Документация Nmap предлагает использовать --dns-servers для указания правильных в списке через запятую. Вы также можете использовать --system-dns чтобы использовать собственный распознаватель DNS вашей операционной системы вместо параллельного Nmap. При сканировании многих хостов это может быть медленнее, но всегда гарантированно работает. Эти параметры более подробно описаны в официальной книге Nmap Network Scanning Гордона "Федор" Лион.

Тогда наш последний обходной путь - определить IP-адреса ваших DNS-серверов, а затем запустить Nmap с --dns-servers 192.168.X.X,192.168.X.Y с IP-адресами этих серверов.

0

Nmap в Windows не так эффективен, как в Linux.

Вы можете повысить производительность сканирования подключений, дважды щелкнув файл nmap_performance.reg расположенный в каталоге Nmap, который внесет три изменения в реестр, чтобы увеличить количество временных портов, зарезервированных для таких приложений, как Nmap, и сократить количество времени до закрытое соединение можно использовать повторно.

Чтобы внести изменения вручную, добавьте эти три значения DWORD реестра в: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters:

  1. MaxUserPort: установите большое значение, например 65534 (0x0000fffe).
  2. TCPTimedWaitDelay: установите минимальное значение (0x0000001e).
  3. StrictTimeWaitSeqCheck: установите в 1, чтобы TCPTimedWaitDelay проверялось.

Информация получена с сайта nmap.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .