Ответы:
использование pktstat -n
interface: eth0
bps
bps % desc
162.3 0% arp
286.5 0% llc 802.1d -> 802.1d
544.3 1% tcp 172.16.1.5:22 <-> 172.16.1.95:8074
34.0k 87% udp 172.16.1.1:514 <-> 172.16.1.5:514
350.1 0% udp 172.16.1.5:24330 <-> 209.18.47.62:53
329.4 0% udp 172.16.1.5:34870 <-> 209.18.47.62:53
388.3 0% udp 172.16.1.5:4470 <-> 209.18.47.62:53
407.4 1% udp 172.16.1.5:47008 <-> 209.18.47.62:53
741.6 1% udp 172.16.1.5:53 <-> 172.16.1.74:43289
663.6 1% udp 172.16.1.5:53 <-> 172.16.1.74:44589
647.7 1% udp 172.16.1.5:53 <-> 172.16.1.74:58223
128.9 0% udp 172.16.1.74:5353 <-> 224.0.0.251:5353
160.7 0% udp6 fe80::21c:bfff:fecf:a798,5353 <-> ff02::fb,5353
Источник pktstat код размещен на сайте Debian, либо вы можете получить его от SourceArchive.com
pktstat: pcap_lookupdev: no suitable device found
при запуске этого, вам может потребоваться быть пользователем root.
Что касается отображения «purdy», я неравнодушен к инструменту под названием «iptraf», который будет делать то, что вы упомянули, а также для каждого интерфейса и для совокупности портов.
Для основных инструментов Linux верный netstat сделает свое дело ...
А tcpdump
покажет вам это; если вы просто хотите получить список IP-адресов, вы можете фильтровать пакеты SYN и выводить только IP-адрес источника. Что-то типа:
tcpdump -i eth0 -n 'tcp[tcpflags] & tcp-syn != 0 and not src and dst net localnet' | sed 's/^.*IP \([^ ]*) >.*$/\1/'
Получит ли вы список IP-адресов, в режиме реального времени. Вы также можете tee
сделать это в файл и периодически делать для sort -u
него список уникальных IP-адресов, которые отправили вам соединения.
Как только вы получите выходные данные одной из команд, упомянутых в других ответах, вы можете использовать инструмент «смотреть», чтобы иметь «в режиме реального времени». Например, «watch -n 5 ps» будет выполнять команду «ps» каждые 5 секунд (аргумент «-n»). Замените «ps» на интересующую вас команду, и вы получите «мониторинг». Или просто "тройник" в файле, как в другом предложении.