J'essaie de faire quelque chose comme:
echo "request" | nc -u 1.1.1.1 9999 > response.txt
Je peux voir que la réponse vient du serveur (avec tcpdump
) après avoir exécuté cette ligne.
Cependant, mon response.txt reste vide.
Y a-t-il un moyen de l'obtenir?
Réponses:
Netcat commence à "parler" UDP (la valeur par défaut est TCP) en spécifiant l'option de ligne de commande -u. Voici un exemple de connexion à un serveur horaire RFC 867 à l'aide d'UDP. Notez que l'adresse IP ou le nom DNS de l'autre hôte est spécifié en premier et le numéro de port est spécifié en second - tout comme la plupart des programmes Telnet. Une fois la connexion établie, vous devrez probablement appuyer sur la touche Entrée pour que le serveur de temps vous envoie l'heure actuelle. (c'est peut-être votre problème)
nc -u igor.alcpress.com 13
Jeu. 15 sept. 14:41:57 2005
Comme UDP n'est pas un protocole orienté connexion, la connexion restera "ouverte" jusqu'à ce que vous arrêtiez le programme en appuyant sur Ctrl-C.
================================================== ====================
Répond-il si vous ne redirigez pas la sortie?
essayez:
echo "request" | nc -u 1.1.1.1 9999 | tee response.txt
la source