So generieren Sie ein UDP-Paket

21

Ich möchte ein UDP-Paket generieren, um ein Programm zu testen. Dies entspricht der Verwendung von Telnet zum Testen des TCP-Ports. (Kann Telnet ein UDP-Paket generieren?)

Wie kann ich das machen?

Don Ch
quelle

Antworten:

35

Ein Wort: Netcat

Netcat ist das ideale Tool für diese Art von Dingen.

Sie können den von Ihnen gewählten Port mit UDP-Paketen wie folgt verprügeln:

nc -u host.example.com 53 < /dev/random

(53 ist Ihre Portnummer)

Oder Sie können eine tatsächliche Datei senden oder anweisen, diesen Port zu binden und als Dienst zu überwachen, oder was auch immer Sie möchten.

Satanicpuppy
quelle
16

Wenn Sie lediglich ein UDP-Paket mit bestimmten Daten senden möchten, im Gegensatz zu der Antwort von Satanicpuppy, die kontinuierlich zufällige Daten sendet, können Sie Folgendes tun:

echo "foo" | nc -w1 -u 111.22.333.4 20000
Jamis
quelle
Aus irgendeinem Grund werden ein paar "X" -Pakete gesendet, bevor "foo" gesendet wird. Mit /dev/udpVermeiden Sie diese.
Hören Sie auf, Monica
5

Dieser ist gut, wenn Sie versuchen, mit großen Paketen zu arbeiten. Netcat verwendet im UDP-Modus 1024 Bytes.

nping --udp -p 2090 111.22.333.4 --data-length 1550

UDP-Modus, um 2090 an der Adresse mit einer Paketlänge von 1550 Bytes zu portieren.

Dies ist aus dem nmap-Paket oder wird manchmal separat als nping gepackt.

Weitere Informationen finden Sie unter https://nmap.org/book/nping-man-general-operation.html

Criggie
quelle
-1

Sie können immer UDP-Terminalprogramme verwenden. Die meisten von ihnen können auch TCP senden / empfangen. Zum Beispiel hat das Docklight Scripting Terminal diese Möglichkeit. Und dann senden Sie die Daten genauso, wie Sie sie an die serielle Schnittstelle senden würden.

Benutzer
quelle