O nmap encontra todos os nomes de host e IPs ativos na LAN


83

Como posso emitir um comando nmap que me mostre todos os endereços IP das máquinas ativas e os nomes de host correspondentes na LAN à qual estou conectado? (se isso puder ser feito de outra maneira / ferramenta, você certamente poderá responder)

Respostas:


90

versões do nmap inferiores a 5.30BETA1:

nmap -sP 192.168.1.*

versões mais recentes do nmap:

nmap -sn 192.168.1.*

Isso me dá nomes de host junto com endereços IP e apenas faz ping nos hosts para descobri-los. Isso só fornecerá os nomes de host se você o executar como root.

EDIT: A partir do Nmap 5.30BETA1 [29-03-2010] -sP foi substituída -snpela forma preferida de executar varreduras de ping, ignorando a varredura de portas, assim como os comentários indicam:

Anteriormente, as opções -PN e -sP eram recomendadas. Isso estabelece uma sintaxe mais regular para algumas opções que desabilitam as fases de uma verificação:

  • -n sem DNS reverso
  • -Pn nenhuma descoberta de host
  • -sn sem varredura de porta

6
+1 com a ressalva de que isso retorna apenas máquinas que respondem ao ICMP. Qualquer máquina especificamente bloqueando ICMP não vai aparecer
Matt Simmons

10
@MattSimmons Se o nmap for executado como roote os IPs forem da rede local (o servidor é membro da sub-rede), as solicitações de ARP são enviadas. Por isso, vai detectar quaisquer máquinas vivas porque ninguém realmente blocos ARP pacotes. Ah, e com novas nmapversões é -sn(embora -sPtambém funcione).
Hubert Kario

4
Não estou recebendo nenhum nome de host com este comando. Sugestões?
Daviesgeek 15/08

@daviesgeek Tentou executá-lo como root?
Cheesebaron

3
@Cheesebaron Ah. É isso aí. Eu sugeriria acrescentar que, como sem ele, ele não mostrará os nomes de host.
daviesgeek

9
nmap -sP 192.168.1.0/24

Observe que a resolução de nomes é tão boa quanto a população de DNS reverso. Observe também que isso não permitirá que você tenha sistemas com firewall contra ping (que praticamente todas as estações de trabalho com Windows são por padrão).

Se você é local nos sistemas (ou seja, na mesma sub-rede), pode fazer algo como

for i in `seq 1 254` ; do arping -c 1 192.168.1.$i | grep reply ; done

... mas coisas estranhas acontecem comigo às vezes quando eu enrolo em arco. Você também deve fazer a pesquisa, com algo como

dig +short -x $IP

solução arp é lento, mas funciona bem, a solução nmap não pode encontrar todas ip on-line
elbarna

5

Você pode digitalizar uma sub-rede inteira, também pode usar curingas.

nmap 192.168.8.*

ou

nmap 192.168.8.1/24

4

O NMAP retornará a 'pesquisa inversa' do endereço IP em questão; não poderá retornar o endereço de pesquisa direta. Ou endereços no caso de servidores da Web que hospedam hospedagem virtual baseada em nome. O Nmap não é a ferramenta para isso.


2
qual ferramenta devo usar então?
saloma

Não sei de nada que faça isso.
sysadmin1138

2

O nmap -sP 192.168.0.0/24 produzirá algo como:

> nmap -sP 192.168.0.0/24

Starting Nmap 4.00 ( http://www.insecure.org/nmap/ ) at 2010-06-22 22:27 CEST
Host 192.168.0.0 appears to be up.
Host 192.168.0.1 appears to be up.
Host abcd.domain.tld (192.168.0.2) appears to be up.
Host def.domain.tld (192.168.0.3) appears to be up.
Host fdsf.domain.tld (192.168.0.4) appears to be up.
Host reht.domain.tld (192.168.0.5) appears to be up.
Host vcxbfd.domain.tld (192.168.0.6) appears to be up.
Host ezqs.domain.tld (192.168.0.7) appears to be up.
Host 192.168.0.8 appears to be up.
Host ilolio.domain.tld (192.168.0.9) appears to be up.
Host ipbd.domain.tld (192.168.0.10) appears to be up.
Host cdekf.domain.tld (192.168.0.11) appears to be up.
Host 192.168.0.12 appears to be up.
Host 192.168.0.13 appears to be up.
Host 192.168.0.14 appears to be up.
Host 192.168.0.15 appears to be up.
Host ainv.domain.tld (192.168.0.16) appears to be up.
Host 192.168.0.17 appears to be up.
Host 192.168.0.18 appears to be up.
Host wzdkz.domain.tld (192.168.0.19) appears to be up.
[…]
Nmap finished: 256 IP addresses (256 hosts up) scanned in 7.491 seconds

1
como posso aprender o nome da máquina? eu recebo os nomes de host da seguinte forma: dhcp-186-241.abc.dk dhcp-186-250.abc.dk .... por exemplo, quando eu emito hostnameno terminal ubuntu, recebo: infestor-pcmas o nmap mostra meu nome de host como dhcp-186-250.abc.dk. existe uma maneira de ver o nome do host 'amigável'?
saloma

Não é a única maneira de registrar o nome dos computadores no DNS
raio


0

A maneira melhor e mais rápida de executar ping em todos os Ips na rede local é desabilitando a resolução reversa do DNS

Usar :
NMAP -sn 192.168.1.1-255

isso varrerá todos os 255 hosts no intervalo de IP 192.168.1.1 - 192.168.1.255

Se você deseja um arquivo facilmente analisável

Usar :
NMAP -sn -oG Name.txt 192.168.1.1-255


0

se isso puder ser feito de outra maneira / ferramenta, você certamente será bem-vindo a responder

Você pode simplesmente usar o arpcomando como este:

$ arp -a

-1

Eu acho que você deve executar isso:

sudo nmap -sU --script nbstat.nse -p137 10.10.10.*

Isso não adiciona nada sobre as respostas existentes e, além disso, só encontrará hosts do Windows com o compartilhamento ativado. Certamente mais específico do que o OP queria.
Scott Pacote

Ainda funcionará com o compartilhamento de rede desativado. Requer apenas a descoberta de rede ativada, que é o padrão para redes privadas.
John Homer

-1

Tente isto: Exemplo de intervalo de IPs: 10.1.0.0 - 10.1.255.255

nmap -sV -T4 -O 10.1.*.*
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.