你可能不知道的 一大波 Linux 网络工具




你可能不知道的 一大波 Linux 网络工具

2022-07-20 20:27:18 网络知识 官方管理员

如果要在你的系统上监控网络,那么使用命令工具是非常实用的,并且对于Linux用户来说,有着许许多多现成的工具可以使用,如:nethogs,ntopng,nload,iftop,iptraf,bmon,slurm,tcptrack,cbm,netwatch,collectl,trafshow,cacti,etherape,ipband,jnettop,netspeed以及speedometer。

鉴于世上有着许多的Linux专家和开发者,显然还存在其他的网络监控工具,但在这篇教程中,我不打算将它们所有包括在内。

上面列出的工具都有着自己的独特之处,但归根结底,它们都做着监控网络流量的工作,只是通过各种不同的方法。例如nethogs可以被用来展示每个进程的带宽使用情况,以防你想知道究竟是哪个应用在消耗了你的整个网络资源;iftop可以被用来展示每个套接字连接的带宽使用情况,而像nload这类的工具可以帮助你得到有关整个带宽的信息。

1)nethogs

nethogs是一个免费的工具,当要查找哪个PID(注:即processidentifier,进程ID)给你的网络流量带来了麻烦时,它是非常方便的。它按每个进程来分组带宽,而不是像大多数的工具那样按照每个协议或每个子网来划分流量。它功能丰富,同时支持IPv4和IPv6,并且我认为,若你想在你的Linux主机上确定哪个程序正消耗着你的全部带宽,它是来做这件事的最佳的程序。

一个Linux用户可以使用nethogs来显示每个进程的TCP下载和上传速率,可以使用命令nethogseth0来监控一个指定的设备,上面的eth0是那个你想获取信息的设备的名称,你还可以得到有关正在传输的数据的传输速率信息。

对我而言,nethogs是非常容易使用的,或许是因为我非常喜欢它,以至于我总是在我的Ubuntu12.04LTS机器中使用它来监控我的网络带宽。

例如要想使用混杂模式来嗅探,可以像下面展示的命令那样使用选项-p:

nethogs-pwlan0

假如你想更多地了解nethogs并深入探索它,那么请毫不犹豫地阅读我们做的关于这个网络带宽监控工具的整个教程。

(LCTT译注:关于nethogs的更多信息可以参考:https://linux.cn/article-2808-1.html)

2)nload

nload是一个控制台应用,可以被用来实时地监控网络流量和带宽使用情况,它还通过提供两个简单易懂的图表来对流量进行可视化。这个绝妙的网络监控工具还可以在监控过程中切换被监控的设备,而这可以通过按左右箭头来完成。

Linux,网络工具

正如你在上面的截图中所看到的那样,由nload提供的图表是非常容易理解的。nload提供了有用的信息,也展示了诸如被传输数据的总量和最小/最大网络速率等信息。

而更酷的是你只需要直接运行nload这个工具就行,这个命令是非常的短小且易记的:

nload

我很确信的是:我们关于如何使用nload的详细教程将帮助到新的Linux用户,甚至可以帮助那些正寻找关于nload信息的老手。

(LCTT译注:关于nload的更新信息可以参考:https://linux.cn/article-5114-1.html)

3)slurm

slurm是另一个Linux网络负载监控工具,它以一个不错的ASCII图来显示结果,它还支持许多按键用以交互,例如c用来切换到经典模式,s切换到分图模式,r用来重绘屏幕,L用来启用TX/RX灯(注:TX,发送流量;RX,接收流量),m用来在经典分图模式和大图模式之间进行切换,q退出slurm。

Linux,网络工具

在网络负载监控工具slurm中,还有许多其它的按键可用,你可以很容易地使用下面的命令在man手册中学习它们。

manslurm

slurm在Ubuntu和Debian的官方软件仓库中可以找到,所以使用这些发行版本的用户可以像下面展示的那样,使用apt-get安装命令来轻松地下载它:

sudoapt-getinstallslurm

我们已经在一个教程中对slurm的使用做了介绍,不要忘记和其它使用Linux的朋友分享这些知识。

4)iftop

当你想显示连接到网卡上的各个主机的带宽使用情况时,iftop是一个非常有用的工具。根据man手册,iftop在一个指定的接口或在它可以找到的第一个接口(假如没有任何特殊情况,它应该是一个对外的接口)上监听网络流量,并且展示出一个表格来显示当前的一对主机间的带宽使用情况。

通过在虚拟终端中使用下面的命令,Ubuntu和Debian用户可以在他们的机器中轻易地安装iftop:

sudoapt-getinstalliftop

在你的机器上,可以使用下面的命令通过yum来安装iftop:

yum-yinstalliftop

(LCTT译注:关于nload的更多信息请参考:https://linux.cn/article-1843-1.html)

5)collectl

collectl可以被用来收集描述当前系统状态的数据,并且它支持如下两种模式:

记录模式允许从一个正在运行的系统中读取数据,然后将这些数据要么显示在终端中,要么写入一个或多个文件或一个套接字中。

回放模式

根据man手册,在这种模式下,数据从一个或多个由记录模式生成的数据文件中读取。

Ubuntu和Debian用户可以在他们的机器上使用他们默认的包管理器来安装colletcl。下面的命令将为他们做这个工作:

sudoapt-getinstallcollectl

还可以使用下面的命令来安装collectl,因为对于这些发行版本(注:这里指的是用yum作为包管理器的发行版本),在它们官方的软件仓库中也含有collectl:

yuminstallcollectl

(LCTT译注:关于collectl的更多信息请参考:https://linux.cn/article-3154-1.html)

本文由LCTT原创翻译,Linux中国首发。也想加入译者行列,为开源做一些自己的贡献么?欢迎加入LCTT!

翻译工作和译文发表仅用于学习和交流目的,翻译工作遵照CC协议规定,如果我们的工作有侵犯到您的权益,请及时联系我们。

欢迎遵照CC协议规定转载,敬请在正文中标注并保留原文/译文链接和作者/译者等信息。

文章仅代表作者的知识和看法,如有不同观点,请楼下排队吐槽:D


发表评论:

最近发表
网站分类
标签列表