netstat pro jednoduchost
Pomocí netstat
a uchopení PID nebo názvu procesu:
# netstat -np --inet | grep "thunderbird"
tcp 0 0 192.168.134.142:45348 192.168.138.30:143 ESTABLISHED 16875/thunderbird
tcp 0 0 192.168.134.142:58470 192.168.138.30:443 ESTABLISHED 16875/thunderbird
A můžete použít watch
pro dynamické aktualizace:
watch 'netstat -np --inet | grep "thunderbird"'
S:
-n
:Zobrazovat číselné adresy místo pokusu o určení symbolických jmen hostitele, portu nebo uživatele-p
:Zobrazí PID a název programu, ke kterému každý soket patří.--inet
:Zobrazit pouze sokety protokolu raw, udp a tcp.
trasování pro výřečnost
Řekl jsi, že jsi zkusil strace
nástroj, ale zkusili jste možnost trace=network
?Všimněte si, že výstup může být velmi podrobný, takže možná budete potřebovat trochu grepping. Můžete začít grepováním na "sin_addr".
strace -f -e trace=network <your command> 2>&1 | grep sin_addr
Nebo pro již běžící proces použijte PID:
strace -f -e trace=network -p <PID> 2>&1 | grep sin_addr
sysdig
vám umožňuje sledovat veškerou aktivitu jádra nebo několik příkazů spuštěných ve vašem systému najednou, včetně síťové aktivity.
Protože výstup může být velký, musíte vytvořit filtry, výchozí stránka pro nejzákladnější filtry je docela srozumitelná.
Má také tu výhodu, že se nepoužívá jako obal aplikace jako v strace
, a může být docela výkonný.
Z příkladů Sysdig
Networking
Podívejte se na hlavní procesy z hlediska využití šířky pásma sítě
sysdig -c topprocs_net
Zobrazit síťová data vyměněná s hostitelem 192.168.0.1
Jako binární:
sysdig -s2000 -X -c echo_fds fd.cip=192.168.0.1
Jako ASCII:
sysdig -s2000 -A -c echo_fds fd.cip=192.168.0.1
Podívejte se na hlavní porty místního serveru:
Z hlediska navázaných spojení:
sysdig -c fdcount_by fd.sport "evt.type=accept"
Z hlediska celkového počtu bajtů:
sysdig -c fdbytes_by fd.sport
Viz hlavní IP adresy klientů
Z hlediska navázaných spojení
sysdig -c fdcount_by fd.cip "evt.type=accept"
Z hlediska celkového počtu bajtů
sysdig -c fdbytes_by fd.cip
Vypište všechna příchozí připojení, která nejsou obsluhována Apache.
sysdig -p"%proc.name %fd.name" "evt.type=accept and proc.name!=httpd"
Vytvořil bych nový síťový jmenný prostor, přemostil bych ho do skutečné sítě a pak bych most sledoval pomocí tcpdump
.