nmap e arp-scan resultados IP-MAC inconsistentes

3

Eu pareço obter resultados variáveis e inconsistentes para os endereços IP / MAC de uma máquina em particular, usando nmap ou arp-scan.

A máquina tem 3 interfaces e é isso que mostra:

$ uname -a
Linux showstore-81 2.6.35.13 #1 SMP PREEMPT Thu Feb 9 12:20:36 PST 2012 i686 GNU/Linux

$ LC_ALL=C /sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 00:1b:21:ac:17:19
          inet addr:192.168.81.54  Bcast:192.168.81.255  Mask:255.255.255.0
          ...

eth1      Link encap:Ethernet  HWaddr 00:25:90:25:d0:4e
          inet addr:192.168.81.129  Bcast:192.168.81.255  Mask:255.255.255.128
          ...

eth2      Link encap:Ethernet  HWaddr 00:25:90:25:d0:4f
          inet addr:169.254.1.1  Bcast:169.254.255.255  Mask:255.255.0.0
          ...

Então, qualquer que seja a ferramenta e as opções que eu use, eu esperaria:

  • IP .54 = > MAC 00: 1b: 21: ac: 17: 19
  • IP .129 = > MAC 00: 25: 90: 25: d0: 4e

Mas nmap -n -sP 192.168.81.0/24 (nmap v. 5.00) informa que reverteu :

Host 192.168.81.54 is up (0.000078s latency).
MAC Address: 00:25:90:25:D0:4E (Super Micro Computer)

Host 192.168.81.129 is up (0.000058s latency).
MAC Address: 00:1B:21:AC:17:19 (Intel Corporate)

E nmap -n -sP -PR 192.168.81/24 reporta apenas um dos endereços MAC em ambos os IPs :

Host 192.168.81.54 is up (0.000081s latency).
MAC Address: 00:1B:21:AC:17:19 (Intel Corporate)

Host 192.168.81.129 is up (0.00011s latency).
MAC Address: 00:1B:21:AC:17:19 (Intel Corporate)

Por fim, arp-scan -l (v. 1.8.1) relata os dois endereços IP duas vezes com os dois endereços MAC :

192.168.81.54      00:1b:21:ac:17:19    Intel Corporate
192.168.81.54      00:25:90:25:d0:4e    Super Micro Computer, Inc.

192.168.81.129     00:1b:21:ac:17:19    Intel Corporate
192.168.81.129     00:25:90:25:d0:4e    Super Micro Computer, Inc.

Como posso fazer uma varredura que forneça resultados corretos? (Eu só preciso de IP e MAC. Nenhuma varredura de porta.)

    
por mivk 24.02.2014 / 11:55

1 resposta

3

Bem, por um lado, você está usando sub-redes inconsistentes / sobrepostas. 192.168.81.129/25 faz parte do 192.168.81.54/24. Então, primeiro, faça ifconfig eth0 netmask 255.255.255.128. Em seguida, já que posso imaginar que a eth0 esteja conectada à mesma rede que a eth1, você vai querer restringir a rapidez com que o seu computador responderá ao ARP.

Você desejará configurar as seguintes entradas sysctl, manualmente ou em /etc/sysctl.conf:

net.ipv4.conf.all.rp_filter=1 net.ipv4.conf.all.arp_filter=1 net.ipv4.conf.all.arp_announce=1 net.ipv4.conf.all.arp_ignore=2 net.ipv4.conf.all.shared_media=0

Atualizando isso para incluir mais informações. Normalmente, o linux responderá a uma solicitação ARP para um endereço IP atribuído ao computador com o endereço MAC da NIC na qual ele recebeu a solicitação, independentemente de o IP solicitado ter sido configurado na NIC de resposta ou não. Além disso, o Linux aceitará, por padrão, um pacote IP em qualquer NIC destinada a um endereço IP configurado localmente no computador. Então,

As configurações de sysctl acima restringem esse comportamento, de modo que o Linux só responderá a uma solicitação ARP para um IP se ele for recebido na NIC à qual o IP está atribuído e se a solicitação for de um endereço IP acessível por essa NIC. Os tunables são documentados no arquivo ip-sysctl.txt na distribuição de fontes do kernel.

O que você está vendo é um comportamento intencional e o que estou sugerindo muda as coisas para que elas ajam mais como você parece desejar. Boa sorte.

    
por 24.02.2014 / 12:16