Як змусити netcat отримувати UDP-пакети від будь-якого хоста?


0

Чи є спосіб netcatотримати UDP пакети з будь-якого ip: порту? Я не хочу, щоб він прив'язувався до певного хоста, коли з'являється перший пакет.

Я можу розглянути альтернативи, але вони повинні бути зручними (дозволити трубопроводи).


чого ви намагаєтесь досягти?
Лукас Кауффман

1
@LucasKauffman просто скидає будь-який udp-пакет, який надходить до певного порту. Я не можу використовувати tcpdump, оскільки у мене немає привілеїв root на машині.
Лоренцо Пістоне

Відповіді:


0

Якщо ви робите це в Linux, то ви можете встановити правило iptables за допомогою REDIR-цілі. Просто перенаправляйте весь трафік UDP на один порт, а потім слухайте цей порт за допомогою netcat.


0

Те, що ви намагаєтеся досягти, неможливо без дозволу кореня.


Мені не потрібно слухати пакети UDP, які надходять до будь-якого порту. Вказується цільовий порт ip, але не джерело. Це можливо як звичайний користувач, і в якості побічної записки я alredy написав мінімальну програму c, яка може це зробити, але я запитав, бо втратив півгодини, намагаючись ncзробити це, і тепер я хочу знати, чи це абсолютно неможливо із загальними утилітами оболонки.
Лоренцо Пістоне

ааа, значить, ви намагаєтесь підключитися до порту?
Лукас Кауффман

ні, вихідний порт буде змінюватися в кожному пакеті.
Лоренцо Пістоне

0

У деяких nc версіях можна вказати -kваріант:

-k Змушує nc продовжувати слухати інше з'єднання після завершення поточного з'єднання. Помилка використання цієї опції без параметра -l. При використанні разом з опцією -u розетка сервера не підключена, і він може приймати дейтаграми UDP від ​​декількох хостів.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.