Script bash pour tester si flux réseau ouvert

Résolu
gaudi71 Messages postés 5 Statut Membre -  
 Utilisateur anonyme -
Hello à tous ,

je dois créer un script pour tester si les flux sont ouvert entre deux machines

exemple de régle de flux :
Numéro de la rélge;Application source; Application destination;ip source; ip destination; port destination

j'ai pensée a un script comme ça :
#!/bin/bash
input="matrice.csv"
while IFS=";" read -r f1 f2 f3 f4 f5 f6
do
nc -v -s "$f4" "$f5" "$f6"
done > $input
en sortie de script il me faudrait juste les régle qui sortent en timeout

1 réponse

  1. Utilisateur anonyme
     
    salut,

    1- la redirection doit être dans l'autre sens : du fichier "vers la boucle"
    2- la commande
    nc
    fonctionne-t-elle ?
    qu'affiche-t-elle ?
    quelles transformations cette sortie doit-elle subir ?

    donne un exemple d'entrée du fichier input, le résultat correspondant de la commande
    nc
    , et la sortie attendue.
    0
    1. gaudi71 Messages postés 5 Statut Membre
       
      1 : c'est fait
      2: la commande nc se bloque elle me retourne : Ncat: Could not resolve source address "": Name or service not known. QUITTING.

      mon fichier input ressemble a quelque chose comme ça :
      01;SSH;SSH;192.168.0.1;192.168.0.2;22
      02;FTP;FTP;192.168.0.1;192.168.0.2;21
      numéro de la régle; application souce; application destination; ip source; ip destination;port destination

      ma sortie attendue ce serait qu'il teste toute les lignes de mon fichier et qu'il me donne les numéro de régle qui finissent en timeout
      0
    2. Utilisateur anonyme
       
      je ne suis pas certain d'avoir la même version de
      nc
      (openbsd-netcat 1.190_2-1);
      est-ce que tu peux nous expliquer les options que tu utilises, et le comportement attendu ?

      quand je veux savoir si une machine est joignable sur un port donné, j'utilise cette commande :
      nc -z "$ipDistante" "$portDistant" && echo "$ipDistante joignable" || echo "$ipDistante NON joignable"
      0
    3. Utilisateur anonyme
       
      en SFTW « tester si les flux sont ouverts », je me dis que tu devrais peut-être utiliser
      netstat
      (aka
      ss
      ) en conjonction de
      grep
      pour obtenir un code de retour (
      $?
      ) utilisable afin de valider l'affichage des informations souhaitées... car
      netstat
      (à l'instar de
      sed
      ) retourne toujours VRAI, à moins d'une erreur de syntaxe.
      0