GNU/Linux >> Znalost Linux >  >> Linux

Jak sledovat síťovou aktivitu příkazu?

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 .


Linux
  1. Jak přejmenovat soubory v Linuxu

  2. Jak používat Su Command v Linuxu

  3. Jak používat nástroj příkazového řádku sipcalc Linux

  1. Jak používat Telnet ve Windows

  2. Jak naplánovat příkaz Rsync?

  3. Jak ukončit, pokud příkaz selhal?

  1. Jak nainstalovat Dig na Windows

  2. Jak používat příkaz Disown v Linuxu

  3. Jak používat příkaz Linux SS