Forum Linux.général Remplir les tables arp

Posté par  (site web personnel) .
Étiquettes : aucune
0
9
jan.
2008
Bonjour,

souhaitant obtenir une liste des adresses ip avec leur mac associé, je me lance dans la rédaction d'un script tout simple me permettant de remplir rapidement la table arp.

Voila mon script actuel :

#!bash
for ((I=1;I<=254;I++));
do ping -c 1 192.168.30.$I ;
done


mon problème est que le ping est trop lent pour être utilisable réellement. En effet le temps que le script est fini toute la boucle, les première adresse ip ne se retrouve plus dans ma table arp.
J'ai tenté de mettre un & après le ping pour que ça aille plus vite mais il n'a pas voulu.

Alors cher forum : comment parallélisé tout les ping pour que le script passe rapidement, ou sinon si tu as une meilleur solution je suis aussi preneur.

Merci
  • # nmap

    Posté par  (site web personnel) . Évalué à 2.

    J'ai un script qui tourne qui me permet de faire à peu près ce que tu souhaites. Dans mon cas j'utilise ceci:

    $ nmap -sP --send-ip -oG - 192.168.30.1-254


    À adapter en fonction de tes besoins ensuite...
    • [^] # Re: nmap

      Posté par  (site web personnel) . Évalué à 2.

      Ah j'oubliais... En ajoutant le paramètre "-n" tu économiseras les requêtes DNS (si ça ne te sert à rien, faut pas s'en priver).

      Pour info, pour scanner mon LAN (192.168.0.0/24) je passe de 13 secondes à 0.85s rien qu'en ajoutant "-n".
  • # arpwatch

    Posté par  (site web personnel) . Évalué à 2.

    Il me semble mais je ne suis plus trop sûr que l'outil arpwatch fait quelquechose de proche ou même exactement ca.
  • # &

    Posté par  . Évalué à 1.

    J'ai tenté de mettre un & après le ping pour que ça aille plus vite mais il n'a pas voulu.

    Ben, si... il faut remplacer le point-virgule par un &, et non pas rajouter le & avant.
    • [^] # Re: &

      Posté par  (site web personnel) . Évalué à 1.

      Je m'en suis rendu compte mais après avoir fait ce post en fait ...

      Je copierai cent fois : RTFM is your best friend
  • # adresse de diffusion

    Posté par  (site web personnel) . Évalué à 1.

    un ping sur l'adresse de diffusion (broadcast) ça peut aussi marcher
    ping -c 1 -b 192.168.30.255
    (pour un réseau en /24)
    • [^] # Re: adresse de diffusion

      Posté par  (site web personnel) . Évalué à 1.

      A condition que la pile TCP/IP de la machine en face sache répondre à un icmp echo en broadcast. Ce que ne fait par exemple pas environ 90% de mon réseau ...

      Merci pour l'astuce mais je connaissais déjà en fait.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.