LINUX.ORG.RU
ФорумAdmin

Чем посмотреть статистику пакетов по UDP-портам

 , ,


0

2

Привет, ЛОР.

Есть набор сетевых программ, который для общения между собой может использовать UDP-порты из довольно широкого диапазона. Хочется как-то отследить это процесс: сколько портов они захватили, по каким реально шла передача и по каким сколько пакетов передано.

Гугл советует netstat либо ss. Но то ли я ключи неправильно подобрал, то ли хочу странного… Один вариант мне просто выдаёт список занятых портов без статистики. Другой выдаёт общую статистику UDP без разбивки по портам.

Посоветуйте, пожалуйста правильную утилиту с ключами.

В идеале хотелось бы видеть что-то типа того, что top выдаёт для процессов – только для сетевых портов. В реальном времени таблица: порт, кто на нём сидит, сколько по нему передано/принято. И чтобы можно было грабить корованы хоткеями сортировать по объёму, скорости и т.д. Неужели за полвека юниксостроения никто такого не написал?

В не совсем идеале подойдёт и слепок со статистикой на текущий момент. Который на стандартный вывод выводит опять-таки список портов, и сколько по каждому из них на данный момент передано/принято. Вот такое, подозреваю, точно должны были написать, только туповатый я неправильно ключи подобрал или программу не ту взял. Скрипт анализа слепков я и сам напишу, скриптом обещаю поделиться, если решение есть только такое :)

Есть идеи?

★★★★★

Последнее исправление: hobbit (всего исправлений: 3)

Ну, до некоторый степени склепок портов со статистикой — это conntrack -L (если nf_conntrack_acct включить). Пока conntrack переполнять не начнёт.

А то, что вы хотите:

порт, кто на нём сидит, сколько по нему передано/принято.

вобще непонятно как собирать. Вот работает процесс и постоянно шлёт DNS-запросы, каждый с нового порта. Там будет такой список портов, на котором этот процесс «сидел»...

mky ★★★★★
()