rubare da here Ho creato un piccolo script Python in ascolto su una porta e stampa tutti i pacchetti UDP ricevuti:netcat invio di "X" in più pacchetti UDP
import socket
UDP_IP = "127.0.0.1"
UDP_PORT = 5005
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.bind((UDP_IP, UDP_PORT))
while True:
data, addr = sock.recvfrom(1024)
print "received message:", repr(data)
Ora sto usando netcat
per inviare dati a questo script. Ecco la mia linea di comando.
echo -e "foo:1|c" | netcat -v -u localhost 5005
Ed ecco l'output Python:
received message: 'X'
received message: 'X'
received message: 'X'
received message: 'X'
received message: 'X'
received message: 'foo:1|c\n'
Questi primi quattro di righe "X" arrivano a circa intervalli di un secondo, poi le ultime due linee arrivano approssimativamente simultaneamente.
La mia domanda è questa: da dove provengono questi pacchetti "X" aggiuntivi, e se la fonte è netcat
, allora come posso impedire a netcat
di emetterli? Questo è il netcat
di BSD, credo.
Su quale sistema operativo esiste /d/udp'? –
Ah, vedo che è una caratteristica bash, non una funzionalità del sistema operativo. Non lo sapevo. –
Ho scritto un/dev/udp su QNX molto tempo fa. Sono abbastanza sicuro che ci fosse qualcosa del genere sul piano 9 anche se ha funzionato in modo diverso da quello che ricordo vagamente. –