J'ai crée plsieurs scripts bash dont le but est de générer des adresses IP aléatoires valides.
J'ai donc un script bash qui teste si une adresse IP que je lui donne en paramètre est valide en fonction d'autre paramètres (limite de valeur de ping, réponse ou non, etc...).

Ensuite, j'ai un script qui appelle ce premier script par vagues en mettant un "&" à la fin de la ligne. Ensuite, si l'adresse est valide, le script de test va ecrire dans un fichier l'adresse IP.
A la fin de la vague, j'attends que tous les scirpts aient fini de s'éxécuter et je récupère toutes les adresses IP dans le fichier et détruit le fichier (qui est recrée à chaque nouvelle vague).

Mon problème est la lenteur de l'algorithme. L'augmentation de la taille de la vague n'influe que très peu sur la rapidité : si je passe de 10 paquets/vague à 100 paquets par vague, je passe seulement de 0.5 à 0.8 @IP valide trouvée à la seconde.

A mon avis, c'est l'écriture (puis la lecture) des @IP résultats dans le fichier temporaire, au moment des vagues, qui ralentit le fonctionnement global.
Cependant, c'est le seul moyen que j'ai trouvé pour suivre la progression de ma recherche, compter les adresses IP trouvées à la vague précédente et ainsi savoir si j'ai atteint ou non le nombre d'adresses que je veux obtenir.

J'aimerais avoir des suggestions sur des méthodes différentes qui pourraient être plus rapides.
Merci.