Buv*_*mar 20 linux networking tcpdump strace wireshark
我想跟踪一个命令的网络活动,我尝试了 tcpdump 和 strace 没有成功。
例如,如果我正在安装一个软件包或使用任何试图访问某个站点的命令,我想查看该网络活动(它试图访问的站点)。
我想我们可以通过使用 tcpdump 来做到这一点。我试过了,但它正在跟踪我系统的所有网络活动。假设我运行多个与网络相关的命令并且我只想跟踪特定的命令网络活动,那么此时很难找到确切的解决方案。
有没有办法做到这一点?
更新:
我不想跟踪我的网络接口上的所有内容。我只想跟踪命令(例如#yum install -y vim)网络活动。例如它试图到达的站点。
Goh*_*ohu 27
netstat在 PID 或进程名称上使用和 grepping:
# 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
Run Code Online (Sandbox Code Playgroud)
您可以watch用于动态更新:
watch 'netstat -np --inet | grep "thunderbird"'
Run Code Online (Sandbox Code Playgroud)
和:
-n: 显示数字地址而不是尝试确定符号主机、端口或用户名-p: 显示每个socket所属的程序的PID和名称。--inet: 只显示 raw、udp 和 tcp 协议套接字。你说你试过这个strace工具,但你试过这个选项trace=network吗?请注意,输出可能非常冗长,因此您可能需要进行一些 grepping。您可以从搜索“sin_addr”开始。
strace -f -e trace=network <your command> 2>&1 | grep sin_addr
Run Code Online (Sandbox Code Playgroud)
或者,对于已经运行的进程,使用 PID:
strace -f -e trace=network -p <PID> 2>&1 | grep sin_addr
Run Code Online (Sandbox Code Playgroud)
sysdig 允许您一次性监控内核或系统中运行的多个命令的所有活动,包括但不限于网络活动。
由于输出可能很大,您必须构建过滤器,最基本的过滤器的默认页面非常容易理解。
它还具有不像 中那样用作应用程序包装器的优点strace,并且它可以非常强大。
联网
查看网络带宽使用率最高的进程
Run Code Online (Sandbox Code Playgroud)sysdig -c topprocs_net显示与主机 192.168.0.1 交换的网络数据
作为二进制:
Run Code Online (Sandbox Code Playgroud)sysdig -s2000 -X -c echo_fds fd.cip=192.168.0.1作为 ASCII:
Run Code Online (Sandbox Code Playgroud)sysdig -s2000 -A -c echo_fds fd.cip=192.168.0.1查看顶级本地服务器端口:
在已建立的连接方面:
Run Code Online (Sandbox Code Playgroud)sysdig -c fdcount_by fd.sport "evt.type=accept"在总字节数方面:
Run Code Online (Sandbox Code Playgroud)sysdig -c fdbytes_by fd.sport查看顶级客户端 IP
在已建立的连接方面
Run Code Online (Sandbox Code Playgroud)sysdig -c fdcount_by fd.cip "evt.type=accept"在总字节数方面
Run Code Online (Sandbox Code Playgroud)sysdig -c fdbytes_by fd.cip列出所有不由 apache 提供服务的传入连接。
Run Code Online (Sandbox Code Playgroud)sysdig -p"%proc.name %fd.name" "evt.type=accept and proc.name!=httpd"