Обнаружение и агрегирование пакетов, отправляемых на сервер по TCP-порту

Есть ли способ с Ubuntu 10.4LTS обнаружить и агрегировать количество пакетов, переданных по каждому порту?

Другими словами, я хотел бы, чтобы процесс отслеживал количество пакетов, отправленных на каждый порт TCP (независимо от того, установлено соединение), и агрегировал количество пакетов, генерируя вывод, подобный этому:

PORT ATTEMPTS
22: 2535
67: 12424
6135: 1
6136: 1
6137: 1
11211: 244

Не мешало бы, если бы программа отслеживала другую информацию, такую ​​как флаги пакетов (TCP SYN, connect, ACK и т. Д.), В идеале в процентах.

Я не знаю ни одной программы, чтобы сделать этот, казалось бы, довольно простой учет, но я предполагаю, что есть одна. Буду признателен за любую информацию о том, какие программы могут предоставить эту информацию.

Спасибо за чтение.

Брайан

1 ответ

Вы можете использовать Iptables для учета этих. Например:

iptables -A INPUT -p TCP --dport 80 --syn

будет подсчитывать количество входящих SYN-пакетов на порт 80.

Если вы хотите отслеживать подробную статистику за определенный период времени, я бы порекомендовал использовать tcpdump для захвата всего, а затем выполнить несколько проходов по данным с разными фильтрами.

Вы также можете быть заинтересованы в ntop.

Другие вопросы по тегам