Comment générer un paquet UDP

21

Je veux générer un paquet UDP pour tester un programme, quelque chose d'équivalent à utiliser telnet pour tester le port TCP (Telnet peut-il générer un paquet UDP?)

Comment puis-je faire ceci?

Don Ch
la source

Réponses:

35

Un mot: Netcat

Netcat est l'outil incontournable pour ce genre de choses.

Vous pouvez battre n'importe quel port que vous choisissez avec des paquets UDP avec quelque chose comme:

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

(53 est votre numéro de port)

Ou vous pouvez envoyer un fichier réel, ou lui dire de lier ce port et d'écouter en tant que service, ou tout ce que vous voulez.

Satanicpuppy
la source
16

Si vous souhaitez simplement envoyer un paquet UDP avec certaines données spécifiées, contrairement à la réponse de Satanicpuppy qui envoie en continu des données aléatoires, vous pouvez faire:

echo "foo" | nc -w1 -u 111.22.333.4 20000
jamis
la source
Pour une raison quelconque, il envoie quelques paquets "X" avant d'envoyer "foo". Utiliser /dev/udpéviter cela.
Arrêtez de nuire à Monica le
5

Celui-ci est bon si vous essayez de travailler avec de gros paquets. netcat utilise 1024 octets en mode UDP.

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

Mode UDP, au port 2090 à l'adresse, avec une longueur de paquet de 1550 octets.

Cela provient du package nmap, ou est parfois empaqueté comme nping séparément.

Plus d'informations sur https://nmap.org/book/nping-man-general-operation.html

Criggie
la source
-1

Vous pouvez toujours utiliser des programmes de terminaux UDP. La plupart d'entre eux peuvent également envoyer / recevoir TCP également. Par exemple, le terminal de script Docklight a cette possibilité. Et puis vous envoyez les données de la même manière que vous les enverriez au port série.

Utilisateur
la source