Come ottenere una risposta udp con netcat


9

Sto cercando di fare qualcosa del tipo:

echo "request" | nc -u 1.1.1.1 9999 > response.txt

Vedo che la risposta arriva dal server (con tcpdump) dopo aver eseguito questa riga.

Tuttavia, il mio response.txt rimane vuoto.

C'è un modo per ottenerlo?


Hai un firewall? Vedere il pacchetto tramite tcpdump non significa che verrà accettato.
Zoredache,

Risposte:


5

Netcat avvia "parlando" UDP (il valore predefinito è TCP) specificando l'opzione della riga di comando -u. Ecco un esempio di connessione a un time server RFC 867 tramite UDP. Nota che l'indirizzo IP o il nome DNS dell'altro host è specificato per primo e il numero di porta è specificato per secondo, proprio come la maggior parte dei programmi telnet. Dopo aver effettuato la connessione , probabilmente dovrai premere il tasto Invio per ottenere l'ora che il server ti invia. (forse questo è il tuo problema)

nc -u igor.alcpress.com 13

Gio 15 Set 14:41:57 2005

Poiché UDP non è un protocollo orientato alla connessione, la connessione rimarrà "aperta" fino a quando non si termina il programma premendo Ctrl-C.

================================================== ====================

Risponde se non si reindirizza l'output?
provare :echo "request" | nc -u 1.1.1.1 9999 | tee response.txt


Ciao e grazie per la tua risposta. La sequenza di comandi nel modo in cui l'hai scritta esce subito dopo la sua 'esecuzione sulla mia macchina. Tuttavia il problema è risolto per me. Non sapevo di poter semplicemente eseguire nc -u 1.1.1.1 9999 e inviare / ricevere dati all'interno di nc mentre era in esecuzione. Grazie ancora
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.