在GNULinux中如何得到一个进程当前的流量
来源:互联网
时间:2026-02-26 17:03:05
作者:
系统大全为您提供
主要分为以下几个步骤:
(1)、通过使用抓包Libpcap库技术,对网络流量包进行获取,从而可以得到每个网络通信包的五元组(源地址、目标地址、源端口、目标端口、协议号)信息和当前包的流量大小,得到这些信息后建立一个表,此表中的同一会话的包大小信息会随着此会话的不断交互而累加数据包的大小。
(2)、通过对/proc/下的所有进程的fd/目录下的所有链接进行遍历查看link的值,将遍历到的所有包含socket:开头的连接,将进程号与遍历所得的对应进程号、进程对应的所有socket fd对应的inode号进行建表。在命令行可以输入以下命令进行某一进程的当前网络连接情况查看,如下(以firefox为例):
#get PID of firefox
v0id@v0id:~$ ps aux | grep firefox
v0id 2143 7.8 21.0 1138824 433960 ? Sl 11:19 44:36 /usrb/firefox/firefox
得到firefox的进程号为2143,那么查看此进程的fd下的文件描述符,使用以下命令即可看到此进程下目录下的有关socket的文件描述符信息,readlink后的结果中有socket开头的即为网络连接使用的fd(文件描述符),紧接在socket:后的即为fd的inode号,执行命令如下:
v0id@v0id:~$ ll /proc/2143/ | grep socket
lrwx------ 1 v0id v0id 64 11月 19 11:19 10 -> socket:[27273]
lrwx------ 1 v0id v0id 64 11月 19 20:48 101 -> socket:[3726782]
lrwx------ 1 v0id v0id 64 11月 19 11:19 13 -> socket:[27336]
lrwx------ 1 v0id v0id 64 11月 19 11:19 14 -> socket:[27337]
lrwx------ 1 v0id v0id 64 11月 19 11:19 21 -> socket:[28264]
lrwx------ 1 v0id v0id 64 11月 19 20:48 30 -> socket:[29375]
lrwx------ 1 v0id v0id 64 11月 19 20:48 31 -> socket:[29692]
lrwx------ 1 v0id v0id 64 11月 19 20:48 32 -> socket:[30810]
lrwx------ 1 v0id v0id 64 11月 19 20:48 33 -> socket:[30812]
lrwx------ 1 v0id v0id 64 11月 19 20:48 36 -> socket:[31803]
lrwx------ 1 v0id v0id 64 11月 19 11:19 4 -> socket:[26607]
lrwx------ 1 v0id v0id 64 11月 19 20:48 40 -> socket:[31071]
lrwx------ 1 v0id v0id 64 11月 19 20:48 41 -> socket:[31073]
lrwx------ 1 v0id v0id 64 11月 19 20:52 44 -> socket:[5245647]
lrwx------ 1 v0id v0id 64 11月 19 20:52 69 -> socket:[5244897]
lrwx------ 1 v0id v0id 64 11月 19 20:52 71 -> socket:[5248187]
lrwx------ 1 v0id v0id 64 11月 19 20:52 72 -> socket:[5246226]
lrwx------ 1 v0id v0id 64 11月 19 20:52 75 -> socket:[5246227]
lrwx------ 1 v0id v0id 64 11月 19 20:52 76 -> socket:[5246228]
lrwx------ 1 v0id v0id 64 11月 19 20:52 77 -> socket:[5248188]
lrwx------ 1 v0id v0id 64 11月 19 20:52 78 -> socket:[5248189]
lrwx------ 1 v0id v0id 64 11月 19 20:52 79 -> socket:[5246239]
lrwx------ 1 v0id v0id 64 11月 19 20:48 80 -> socket:[3726781]
lrwx------ 1 v0id v0id 64 11月 19 20:52 81 -> socket:[5248214]
lrwx------ 1 v0id v0id 64 11月 19 20:52 82 -> socket:[5248217]
lrwx------ 1 v0id v0id 64 11月 19 20:52 83 -> socket:[5246330]
lrwx------ 1 v0id v0id 64 11月 19 20:52 84 -> socket:[5248215]
lrwx------ 1 v0id v0id 64 11月 19 20:52 85 -> socket:[5246331]
lrwx------ 1 v0id v0id 64 11月 19 20:52 86 -> socket:[5248216]
lrwx------ 1 v0id v0id 64 11月 19 20:52 87 -> socket:[5248218]
lrwx------ 1 v0id v0id 64 11月 19 20:52 88 -> socket:[5249212]
lrwx------ 1 v0id v0id 64 11月 19 20:48 89 -> socket:[37239]
lrwx------ 1 v0id v0id 64 11月 19 11:19 9 -> socket:[27820]
lrwx------ 1 v0id v0id 64 11月 19 20:52 90 -> socket:[5248222]
lrwx------ 1 v0id v0id 64 11月 19 20:52 92 -> socket:[5248223]
lrwx------ 1 v0id v0id 64 11月 19 20:52 93 -> socket:[5249279]
lrwx------ 1 v0id v0id 64 11月 19 20:48 94 -> socket:[37240]
lrwx------ 1 v0id v0id 64 11月 19 20:48 96 -> socket:[38308]
lrwx------ 1 v0id v0id 64 11月 19 20:48 97 -> socket:[37345]
lrwx------ 1 v0id v0id 64 11月 19 20:52 98 -> socket:[5249281]
lrwx------ 1 v0id v0id 64 11月 19 20:52 99 -> socket:[5249282]
(3)、通过对网络连接状态文件/proc/net/tcp中的当前通信连接进行实时读取,通过得到连接的源地址、目标地址、源商品、目标端口即可在抓包表中找到对应的可以查看到每个进程所连接的网络通道的信息,通过和抓包所得的五元组信息进行比较,即可在步骤(1)中建立的表中找出对应的每个程序所对应的网络流量,再通过把每个连接对应的inode与步骤(2)中遍历进程所得到的表进行对比,即可找出连接对应的进程;这里就能够把每个进程对应的流量统计出来了,通过累加每个进程的网络流量即可得到总的网络流量。
v0id@v0id:~$ ll /proc/2143/ | grep socket ; cat /proc/net/tcp
sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode
0: 0101007F:0035 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 12396 1 00000000 100 0 0 10 0
1: 0100007F:0277 00000000:0000 0A 00000000:00000000 00:00000000 00000000 0 0 11404 1 00000000 100 0 0 10 0
2: 9707A8C0:8BB9 0C7CB5DC:0050 02 00000001:00000000 01:00000166 00000002 1000 0 5243074 2 00000000 400 0 0 2 5
3: 9707A8C0:86F7 DF08A8C0:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5245647 1 00000000 21 4 8 10 -1
4: 9707A8C0:BFC9 E99D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248217 1 00000000 20 4 24 10 -1
5: 9707A8C0:85FC AE2ED0CB:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248218 2 00000000 20 4 24 10 -1
6: 9707A8C0:9052 C99D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5246239 2 00000000 20 4 20 10 -1
7: 9707A8C0:9281 925C4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5246331 1 00000000 20 4 8 10 -1
8: 9707A8C0:DFB3 DD5D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5249212 2 00000000 21 4 24 10 -1
9: 9707A8C0:DFB5 DD5D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248223 2 00000000 20 4 24 10 -1
10: 9707A8C0:A614 E19D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5246330 1 00000000 20 4 24 10 -1
11: 9707A8C0:9051 C99D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248189 2 00000000 20 4 1 6 -1
12: 9707A8C0:904B C99D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5244897 1 00000000 20 4 8 10 -1
13: 9707A8C0:DFA5 DD5D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248187 2 00000000 20 4 8 10 -1
14: 9707A8C0:A613 E19D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248214 1 00000000 20 4 24 10 -1
15: 9707A8C0:905E C99D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5249281 3 00000000 20 5 3 10 -1
16: 9707A8C0:EAFE DF08A8C0:0050 08 00000000:00000001 00:00000000 00000000 1000 0 2102209 1 00000000 20 4 6 50 16
17: 9707A8C0:DFB0 DD5D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248216 2 00000000 20 4 24 10 -1
18: 9707A8C0:904E C99D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5246227 2 00000000 20 4 20 10 -1
19: 9707A8C0:DFB6 DD5D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5249279 2 00000000 21 0 0 10 -1
20: 9707A8C0:905F C99D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5249282 2 00000000 20 4 9 10 -1
21: 9707A8C0:C8CF 8805E29F:0050 08 00000000:00000001 00:00000000 00000000 1000 0 273820 1 00000000 20 4 6 43 16
22: 9707A8C0:975D 525D58DE:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5246226 1 00000000 21 4 24 10 -1
23: 9707A8C0:9055 C99D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248215 1 00000000 20 4 20 10 -1
24: 9707A8C0:DFB4 DD5D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248222 2 00000000 20 4 24 10 -1
25: 9707A8C0:DFA9 DD5D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5248188 2 00000000 21 4 8 10 -126: 9707A8C0:904F C99D4F75:0050 01 00000000:00000000 00:00000000 00000000 1000 0 5246228 2 0
可以在发上的内容中找到inode号与(2)中列出的socket:[inode]一样的值了吧,例如inode为5248222的连接,相同的即是说这个连接是属于firefox进行的了。
以上就是系统大全给大家介绍的如何使的方法都有一定的了解了吧,好了,如果大家还想了解更多的资讯,那就赶紧点击系统大全官网吧。
本文来自系统大全https://www.herecours.com/d/file/efpub/2026/26-26/20260226165119569557
编辑推荐:
- 在GNULinux中如何得到一个进程当前的流量02-26
- Linux系统中管理用户和用户组的相关配置文件简介02-26
- vim常用命令和配置02-26
- file结构体02-26
- Linux下LVM的配置详解(1)02-26
- Linux 监视系统资源使用率02-26
- Ubuntu下disk清理保护方法02-26
- linux 任务计划工具crontab02-26
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- linux编译内核及添加系统调用(1)
linux编译内核及添加系统调用(1)
26-02-26 - 390W → 555W:网友极限改造未发布的英伟达 20GB RTX 3080 Ti 显卡
- 再有参与者退场:BUFFALO 巴法络计划于 2026 年 7 月停止销售蓝光播放器
- 博主反馈其华擎 X870 主板连毁两颗 AMD 9950X 处理器
博主反馈其华擎 X870 主板连毁两颗 AMD 9950X 处理器
26-02-26 - LG 推出“27G610A”27 英寸显示器:2K 200Hz,1199 元
- TrendForce:涨价效应带动 DRAM 内存产业 2025Q4 营收环比增长 29.4%
- 京东国际 × 亚马逊全球购:西部数据元素 12T 外置硬盘 1502 元 +24 期免息
- 达尔优推出 TMR 磁轴三模键盘 GT87,配备一体式锻碳手托
达尔优推出 TMR 磁轴三模键盘 GT87,配备一体式锻碳手托
26-02-26 - “拯救金鱼记忆”:微信员工谈微信新能力,可查看文件在多少个聊天中被使用
“拯救金鱼记忆”:微信员工谈微信新能力,可查看文件在多少个聊天中被使用
26-02-26 - linux下创建带密码的用户
linux下创建带密码的用户
26-02-26
