nmap не может преобразовать некоторые IP-адреса в имя хоста

nmap не может преобразовать некоторые IP-адреса в имя хоста

Моя цель — заставить nmap преобразовывать IP-адреса в имена хостов без флага --system-dns или параметра --dns-servers.

Когда я запускаю следующую команду nmap без флага --system-dns или опции --dns-servers, 192.168.0.16 преобразуется в имя хоста server1.example.com. 192.168.0.17 не преобразуется в имя хоста. Я понимаю, что это происходит, потому что согласноhttps://nmap.org/book/host-discovery-dns.html, "Nmap использует собственный заглушенный преобразователь", что означает, что у nmap есть свой собственный преобразователь DNS, а не наши локальные DNS-серверы. Интересно.

[root@client1]# nmap -sn 192.168.0.0/24 -vvv

Initiating Parallel DNS resolution of 256 hosts. at 11:22
Completed Parallel DNS resolution of 256 hosts. at 11:22, 0.02s elapsed
DNS resolution of 18 IPs took 0.02s. Mode: Async [#: 2, OK: 5, NX: 13, DR: 0, SF: 0, TR: 18, CN: 0]

Nmap scan report for server1.example.com (192.168.0.16)
Host is up (0.00063s latency).
Nmap scan report for 192.168.0.17
Host is up (0.00059s latency).

Эта проблема не возникает при --system-dnsиспользовании флага.

[root@client1]# nmap -sn 192.168.0.0/24 --system-dns

Nmap scan report for server1.example.com (192.168.0.16)
Host is up (0.00029s latency).
Nmap scan report for server2.example.com (192.168.0.17)
Host is up (0.00026s latency).

Эта проблема не возникает, если --dns-serversиспользуется опция, указывающая на необходимость использования нашего основного DNS-сервера (192.168.0.6).

[root@client1]# nmap -sn 192.168.0.0/24 --dns-servers 192.168.0.6

Nmap scan report for server1.example.com (192.168.0.16)
Host is up (0.00039s latency).
Nmap scan report for server2.example.com (192.168.0.17)
Host is up (0.00036s latency).

nslookup показывает, что оба IP-адреса могут быть преобразованы в соответствующие им имена хостов.

[root@client1]#  nslookup 192.168.0.16
16.0.168.192.in-addr.arpa       name = server1.example.com.

[root@client1]# nslookup 192.168.0.17
17.0.168.192.in-addr.arpa       name = server2.example.com.

В качестве операционной системы мы используем CentOs 7. /etc/resolv.confсодержит следующее, то есть 192.168.0.6 — наш основной DNS-сервер.

[root@client1]# cat /etc/resolv.conf

nameserver 192.168.0.6
nameserver 8.8.8.8

192.168.0.6 (наш основной DNS-сервер) использует версию 9 Bind в качестве DNS-службы.

[root@dns1]# named -v
BIND 9.9.4-RedHat-9.9.4-51.el7 (Extended Support Version)

Вот соответствующий фрагмент /var/named/forward.example.com.

[root@dns1]# cat /var/named/forward.example.com

$ORIGIN example.com.
$TTL 1D
@       IN      SOA     ns1.example.com. hostmaster.example.com. (
                                        2016032200 ; serial
                                        1D         ; refresh
                                        1H         ; retry
                                        1W         ; expire
                                        3H         ; minimum
)

;name used for the nameserver
        IN      NS      ns1.example.com.

;ip address of the nameserver
ns1     IN      A       192.168.0.6

;hostname to ip address resolutions
server1         IN      A       192.168.0.16
server2         IN      A       192.168.0.17

Вот фрагмент /var/named/reverse.example.com.

[root@client1]# cat /var/named/reverse.example.com

$TTL 1D
@       IN      SOA     ns1.example.com. root.example.com. (
                                        0 ; serial
                                        1D ; refresh
                                        1H ; retry
                                        1W ; expire
                                        3H ; minimum
)

0.168.192.in-addr.arpa. IN      NS      ns1.example.com.

@       IN      NS      ns1.example.com.
ns1     IN      A       192.168.0.6
16      IN      PTR     server1.example.com.
17      IN      PTR     server2.example.com.

решение1

Корень вашей проблемы в вас /etc/resolv.confи в том, как nmap ее анализирует.

    # /etc/resolv.conf

    nameserver 192.168.0.6
    nameserver 8.8.8.8

Только первая из записей вашего сервера имен может отвечать на запросы для вашего локального домена и сети.

Второй сервер имен — это публичный резолвер, который не сможет отвечать на обратные DNS-запросы для частных диапазонов IP-адресов.

В отличие от системного резолвера, который по умолчанию использует первую запись сервера имен /etc/resolv.confи использует следующие только тогда, когда первый сервер имен не отвечает, Nmap используетвсе записи серверов имен найдены в/etc/resolv.confв параллели(подразумевая, что все они эквивалентны).

Поскольку в вашем случае различные серверы имен не эквивалентны, только некоторые обратные DNS-запросы завершаются успешно, и вы видите, что некоторые IP-адреса преобразуются в имена хостов (при запросе вашего первого сервера имен), а другие — нет (при использовании вашего второго сервера имен).

Удалите или закомментируйте второй сервер имен и nmap -sn 192.168.0.0/24 -vvvполучите те же результаты, что nmap -sn 192.168.0.0/24 -vvv --system-dnsиnmap -sn 192.168.0.0/24 -vvv --dns-servers 192.168.0.6

Связанный контент