Risposte:
Sì, è possibile utilizzare tcpdump
, che è uno sniffer di pacchetti a riga di comando o strumento di analisi dei pacchetti più potente e ampiamente utilizzato disponibile su Linux.
Nel Terminale del computer vuoi minitorare:
sudo tcpdump -i ethX icmp and icmp[icmptype]=icmp-echo
Opzioni:
-n avoid a (potentially slow) reverse DNS query
−i interface
icmp[icmptype]=icmp-echo To print all ICMP packets that are echo requests/replies
Comincerà ad ascoltare su ethX e ad aspettare i pacchetti arrivati.
Esempio: ho 2 pc win7 10.1.1.8 , Ubuntu 10.1.1.57 che monitorerà i pacchetti arrivati:
Su Ubuntu:
Riferimento: nixCraft
Buon allenamento @nux Mi è piaciuto.
Vorrei anche aggiungere il mio trucco che uso per trovare chi mi sta eseguendo il ping utilizzando lo avahi
strumento (può essere installato da Synaptic
).
Quando corro nel terminale avahi-browse -rat
, compila automaticamente l'elenco completo delle connessioni, ad esempio:
hostname = [xxx-xxx.local]
address = [xxx::x:xxx:xxx:xxx:xxx] physical
address = [xx.xx.xxx.xx] ipv4 or ipv6
port = [xxx]
txt = [xxx]
Ad esempio, posso sempre vedere quando il mio provider Internet mi sta eseguendo il ping durante la mia sessione, quando eseguo questo comando.
Per vedere tutto ciò che avahi può fare, esegui:
avahi-browse --help
Questo pacchetto deve essere semplicemente installato (se non lo hai):
sudo apt-get install iptables-persistent
Quindi aggiungi questo comando al /etc/iptables/rules.v4
file:
-A INPUT -p icmp --icmp-type echo-request -j LOG --log-prefix "LOG_IPTABLES_PING_REQUEST: "
Per verificare chi ti esegue il ping, basta controllare il file di registro:
grep 'LOG_IPTABLES_PING_REQUEST: ' /var/log/messages
È inoltre possibile utilizzare un'applicazione di monitoraggio come Wireshark .
-n
mostra IP anziché i nomi DNS , non l'indirizzo MAC. Quindi l'esecuzione con -n evita una query DNS inversa (potenzialmente lenta).