Pagina 1 di 1

[RIAPERTO] ARP vedere chi è connesso tramite il Mac address

Inviato: mer 24 ott 2007, 19:26
da riotten
ciao,
come da topic...chiedo conferme e delucidazioni sul programma ARP....
con

Codice: Seleziona tutto

arp -a
ho tutto i pc della rete sotto controllo...ma poniamo il caso che abbiama n pc connessi, con che comando vedo univocamente l'ip del pc fornendo solo il mac address..sto cercando un comando del tipo:

Codice: Seleziona tutto

 arp -istruzione 00:00:00:00:00:00 
grazie a tutti coloro che mi saranno d'aiuto

Inviato: mer 24 ott 2007, 19:36
da mordecai
Preciso che ARP è un protocollo oltre che un programma.
In ogni caso puoi tranquillamente sniffare la tua rete con programmi come wireshark,tcpdump e altri.
Ti consigio di impostare dei filtri a riguardo,cosi una volta che leggi i pacchetti,potrai capire a quale indirizzo ip è associato il mac!

;)

Inviato: mer 24 ott 2007, 19:54
da riotten
mordecai ha scritto:Preciso che ARP è un protocollo oltre che un programma.
grazie per la precisione :)

il pc è un server e non vorrei appesantirlo visto il modesto hardware di cui dispone...giocoforza devo utilizzare arp...

qualcuno conosce il comando ci cui ho bisogno?

Inviato: mer 24 ott 2007, 19:57
da slackaddict
edit...

Inviato: mer 24 ott 2007, 19:58
da slackaddict
slackaddict ha scritto:se conosci il mac address potresti dare

Codice: Seleziona tutto

arp -a |grep xx.xx.xx.xx.xx.xx

Inviato: mer 24 ott 2007, 20:02
da riotten
perfetto con

Codice: Seleziona tutto

arp -a | grep macaddress
funziona perfettamente

grazie

Inviato: mer 24 ott 2007, 20:10
da slackaddict
prego...

una domanda ot,in questo forum mi sembra che non si possano cancellare i propri messaggi (quando sono gli ultimi di un thread, ovvero nessuno ha ancora risposto), o mi sbaglio...?

ciao

Inviato: mer 24 ott 2007, 23:31
da riotten
scusate se riapro il post, ma con

Codice: Seleziona tutto

arp -a | grep xxxxxxxx

creo solo una specie di "filtro" fornendo come dato il mac address (avevo chiuso il post perchè l'avevo testato sul mac address di un pc che veniva fornito tramite arp -a, e di conseguenza usando grep veniva subito evidenziato il risultato)............. il problema è che ho un mac adress che non compare tramite

Codice: Seleziona tutto

arp -a
però so per certo che è connesso...........
come faccio tramite arp a vedere direttamente l'ip (presumo per certo dinamico) di un pc connesso avendo solo il mac address?

Inviato: gio 25 ott 2007, 0:44
da panduz
nella cache arp di un computer ci sono solo le traduzioni (indirizzo fisico - indirizzo logico) delle macchine con cui ha comunicato da poco, se la macchina di cui vuoi conoscere l'ip non ha mai comunicato (o è da molto che non comunica) con quella su cui hai lanciato "arp -a" la sua traduzione non sarà presente nella cache arp.

Inviato: gio 25 ott 2007, 2:50
da masalapianta
riotten ha scritto:scusate se riapro il post, ma con

Codice: Seleziona tutto

arp -a | grep xxxxxxxx

creo solo una specie di "filtro" fornendo come dato il mac address (avevo chiuso il post perchè l'avevo testato sul mac address di un pc che veniva fornito tramite arp -a, e di conseguenza usando grep veniva subito evidenziato il risultato)............. il problema è che ho un mac adress che non compare tramite

Codice: Seleziona tutto

arp -a
però so per certo che è connesso...........
come faccio tramite arp a vedere direttamente l'ip (presumo per certo dinamico) di un pc connesso avendo solo il mac address?
puoi fare query arp a tutti gli ip della subnet:

Codice: Seleziona tutto

perl -e 'use Net::Netmask; use Net::ARP; my $interface="eth0"; my $subnet="192.168.0.0/24"; my $mac; my $block = new Net::Netmask("$subnet"); my @ip=$block->enumerate(); foreach(@ip) { Net::ARP::arp_lookup("$interface","$_",$mac); print "$_ - $mac\n" if($mac ne "unknown"); }'
(ovviamente modifica opportunamente $interface e $subnet) naturalmente non sei obbligato a usare perl, puoi usare tool come arping (ma in quel caso gli devi passare tutti gli ip della subnet, dopo esserti generato questi ultimi in qualche modo).
Infine considera che non sta scritto da nessuna parte che un host non menta rispondendo a una query arp, o che non ci sia un terzo host che risponda per lui mentendo (per maggiori info googla per "arp poisoning")