Câu trả lời:
Sử dụng 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
Các mã nguồn pktstat được lưu trữ trên trang web của Debian, hoặc bạn có thể lấy nó từ SourceArchive.com
pktstat: pcap_lookupdev: no suitable device found
khi chạy này, bạn có thể cần phải root.
Đối với màn hình 'purdy', tôi là một phần của một công cụ gọi là 'iptraf' sẽ thực hiện đúng những gì bạn đề cập, cũng như trên mỗi giao diện và trên mỗi tổng hợp cổng.
Đối với các công cụ Linux cốt lõi, netstat đáng tin cậy sẽ thực hiện thủ thuật ...
A tcpdump
sẽ cho bạn thấy rằng; nếu bạn chỉ muốn một danh sách IP, bạn có thể lọc trên các gói SYN và chỉ xuất địa chỉ IP nguồn. Cái gì đó như:
tcpdump -i eth0 -n 'tcp[tcpflags] & tcp-syn != 0 and not src and dst net localnet' | sed 's/^.*IP \([^ ]*) >.*$/\1/'
Sẽ giúp bạn có được danh sách IP, trong thời gian thực. Bạn cũng có thể tee
gửi tệp đó và định kỳ thực hiện sort -u
trên đó để nhận danh sách các địa chỉ IP duy nhất đã gửi kết nối theo cách của bạn.
Khi bạn nhận được đầu ra của một trong các lệnh được đề cập trong các câu trả lời khác, bạn có thể sử dụng công cụ "xem" để có "thời gian thực". Ví dụ: "watch -n 5 ps" sẽ thực hiện lệnh "ps" mỗi 5 giây (đối số "-n"). Thay thế "ps" bằng lệnh quan tâm và bạn sẽ nhận được "giám sát". Hoặc, chỉ "tee" trong hồ sơ, như trong một đề nghị khác.