Sur Linux et d'autres systèmes, il existe un utilitaire appelé arping qui peut être utilisé pour envoyer des requêtes ARP ("pings") et afficher les réponses, un peu comme l'utilitaire "ping" mais en utilisant ARP au lieu d'ICMP.
Existe-t-il un moyen de faire de même sous Windows? (J'utilise Windows 7)
Arping pour Windows existe réellement.
http://freshmeat.net/projects/arping/
Correction: c'est pour Linux, MAC OSX, etc ... mais peut être installé sur windows via cygwin.
Si vous effacez le cache arp de Windows (arp -d) et essayez ensuite d'envoyer une requête ping à l'adresse IP, il émettra une diffusion arp.
Découvrez-le avec Wireshark.
La commande ARP de WinXP sert uniquement à afficher les données. Essayez Nmap, c'est gratuit et assez facile pour ce type de scan. Nmap est disponible sur insecure.org.
Une manière intégrée de le faire dans Windows:
cmd /V /C "set "IP=10.0.2.2" & FOR /L %i in (1,0,2) do @ping -n1 -w 1000 "!IP!" >NUL & arp -a | findstr /c:"!IP! "
Ce n'est pas exactement un "ping" ARP mais l'exécution de "arp inet_addr (adresse IP)" à partir d'une invite de commande enverra une seule requête ARP à l'hôte spécifié dans (adresse IP). Vous pouvez ensuite exécuter "arp -a" pour voir le résultat.
J'ai pensé ajouter cet outil qui s'exécute directement à partir de l'invite de commande:
Options de ligne de commande arp-ping.exe
Usage: arp-ping.exe [options] target
-s ip : specify source ip
-n X : ping X times
-t : ping until stopped with CTRL-C
-x : exit immediately after successful ping
-i X : ping every X seconds
-d : do an 'arp -d *' between pings (requires Administrator)
(-d prevents cached ARP responses on Windows XP.)
-c : include date and time on each line
-m X : ignore failures that take less than X milliseconds
-. : print a dot (.) for every ignored failure
-l : print debug log
-v : print version and exit
Par rapport aux options de ligne de commande Linux "arping"
Usage: arping [-fqbDUAV] [-c count] [-w timeout] [-I device] [-s source] destination
-f : quit on first reply
-q : be quiet
-b : keep broadcasting, don't go unicast
-D : duplicate address detection mode
-U : Unsolicited ARP mode, update your neighbours
-A : ARP answer mode, update your neighbours
-V : print version and exit
-c count : how many packets to send
-w timeout : how long to wait for a reply
-I device : which ethernet device to use (eth0)
-s source : source ip address
destination : ask for what ip address
Vous pouvez le vérifier: https://github.com/seladb/PcapPlusPlus/tree/master/Examples/Arping . Il s'agit d'un Arping multiplateforme qui peut fonctionner à la fois sur Windows, Linux et Mac OS X
Comment obtenir une table ARP avec une API d'assistance IP http://www.codeguru.com/cpp/i-n/internet/internetprotocolip/article.php/c615
GetIpNetTable: récupère les informations de la table de résolution d'adresse.
SetIpNetEntry: ajoute une entrée à la table ARP.
DeleteIpNetEntry: supprime l'entrée de la table ARP.
CreateIpNetEntry: crée une entrée dans la table ARP.
FlushIpNetTable: supprime toutes les entrées ARP pour l'interface spécifiée de la table ARP
SendARP: envoie une demande ARP pour obtenir l'adresse physique qui correspond à l'adresse IP de destination spécifiée.
Malheureusement, il n'y a pas d'outil intégré pour le faire dans Windows, il existe des outils tiers qui le feront tels que Netscan , mais ce n'est pas gratuit
Je pense que vous pouvez arp-ping avec CAIN , qui est gratuit.
Hardping est un programme décent qui le fait.
Il y a la version complète qui coûte de l'argent qui est plus un programme de balayage de ping, mais j'utilise juste la version freeware. La version gratuite ne fait qu'une seule IP à la fois, mais c'est tout ce dont j'avais besoin.
Vous l'utiliseriez comme c:> hardping 192.168.1.1 et il répondrait avec le mac ou non.
Je pense qu'ils l'ont retiré de leur site, mais vous pouvez toujours le trouver en recherchant "freeware hardping" sur Google