netstat -tn 2>/dev/null | grep :80 | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr | head
Команда «netstat -tn 2>/dev/null» используется для вывода списка сетевых соединений. Опция -t указывает на вывод только TCP соединений, а -n используется для вывода IP-адресов и портов в числовом формате, вместо их преобразования в имена хостов и сервисов.
Затем, вывод списка соединений передается команде «grep :80», которая фильтрует только строки, содержащие порт 80 (обычно используется для HTTP соединений).
Результат передается в команду «awk ‘{print $5}'» для извлечения пятой колонки (IP-адрес и порт удаленного хоста).
Затем, команда «cut -d: -f1» разделяет полученный вывод по символу «:» и извлекает только IP-адрес (первое поле).
После этого, команда «sort» сортирует IP-адреса в алфавитном порядке.
Команда «uniq -c» отображает уникальные IP-адреса, а также подсчитывает их частоту встречаемости.
Затем, команда «sort -nr» сортирует результаты по убыванию частоты встречаемости IP-адресов.
И, наконец, команда «head» выводит первые строки, в данном случае, самые часто встречающиеся IP-адреса.
Альтернативным способом для получения списка IP-адресов с большим количеством соединений может быть использование инструментов мониторинга сети, таких как ntop, iptraf или собственных сценариев на основе tcpdump или Wireshark.