Відповіді:
Одне слово: Netcat
Netcat - ідеальний інструмент для подібних речей.
Ви можете обміняти будь-який порт, який ви обрали, за допомогою пакетів UDP за допомогою чогось такого:
nc -u host.example.com 53 < /dev/random
(53 - номер вашого порту)
Або ви можете надіслати фактичний файл, або наказати йому прив’язати цей порт і прослухати як послугу, або що завгодно.
Якщо ви хочете просто надіслати один UDP-пакет з деякими вказаними даними, на відміну від відповіді Satanicpuppy, який постійно надсилає випадкові дані, ви можете зробити:
echo "foo" | nc -w1 -u 111.22.333.4 20000
Це добре, якщо ви намагаєтесь працювати з великими пакетами. netcat використовує 1024 байти в режимі UDP.
nping --udp -p 2090 111.22.333.4 --data-length 1550
Режим UDP, для порту 2090 за адресою, довжина пакета 1550 байт.
Це з пакету nmap або іноді пакується як nping окремо.
Додаткову інформацію можна знайти за адресою https://nmap.org/book/nping-man-general-operation.html
Якщо ви використовуєте Bash, ви можете використовувати його /dev/udp
віртуальну файлову систему, наприклад:
echo -n "hello" >/dev/udp/localhost/8000
Безсоромно повторно використовували цю відповідь на "Як надіслати лише один UDP-пакет з netcat?"
Ви завжди можете використовувати термінальні програми UDP. Більшість з них також може надсилати / отримувати TCP. Наприклад, сценарій терміналу Docklight має таку можливість. А потім ви надсилаєте дані так само, як і до послідовного порту.
/dev/udp
уникайте цього.