在下一篇文章中,我们将看一下tcpdump。 该工具将使我们 查看有关进入和离开网络接口的流量的信息 决定。 它是一种诊断工具,可让我们查看软件包的信息。 此信息将是传入数据包的来源和传出数据包的去向,并提供一些其他信息。 我们甚至可以将结果保存到文件中以供日后查看。
这个计划 适用于大多数UNIX操作系统:Gnu / Linux,Solaris,BSD,Mac OS X,HP-UX和AIX等。 在那些系统上,tcpdump使用libpcap库捕获在网络上流通的数据包。 对于Microsoft Windows系统,还有一个称为WinDump的改编版,它利用了Winpcap库。
在UNIX和其他操作系统上,必须具有 使用tcpdump的管理员(root)特权。 用户可以应用各种过滤器,以使输出更加精确。 过滤器是一个位于选项后面的表达式,它使我们可以选择要查找的软件包。 在没有过滤器的情况下,tcpdump将转储通过选定网络适配器的所有流量。
指数
Tcpdump的默认行为
执行 de 不带参数的tcpdump将查找第一个活动接口 它将查找并显示有关进入或离开网络设备的数据包的信息。 直到过程被中断为止(按Ctrl + C)或被取消。 要使用它,我们只需要在终端中编写(Ctrl + Alt + T):
sudo tcpdump
一旦命令结束,输出将显示捕获了多少个数据包,实际接收了多少个数据包以及还剩下多少个内核。
参数显示
我们将能够 选择其他界面 查看交通信息。 为了找出tcpdump将在哪个接口上运行,我们将使用 参数“ -D” 这将显示设备列表 可以用作参数。
sudo tcpdump -D
现在我们有了可用接口的列表,我们将能够指定要使用的接口。
sudo tcpdump -i enp0s3
限制要捕获的数据包数量
如果我们想将输出限制为仅一定数量的数据包,我们将使用 '-c'参数指定我们要捕获和显示多少个数据包 我完成之前的信息。 示例如下:
sudo tcpdump -c 20
使用tcpdump详细查看信息
它可以 使用'-v'参数显示更多详细信息。 此信息包括寿命(TTL),数据包长度,协议以及其他对诊断有用的信息。 为了增加每个包装的产量, 我们将使用参数“ -vv”或“ -vvv”。 一些例子是:
sudo tcpdump -vv sudo tcpdump -vvv
保存和读取文件
Tcpdump可以 将结果保存到文件中以供以后查看 通过工具。 为此,我们将使用 参数“ -w” 以及要写入的文件名。 我们必须记住 创建的文件只能由tcpdump读取。 创建的文件不是纯文本格式。
要将工具的输出写入文件中,我们将需要为其指定任意名称。 示例如下:
sudo tcpdump -w paquetes.dump
要稍后读取此文件,我们将使用'-r'参数 如下所示:
sudo tcpdump -r paquetes.dump
简单的tcpdump过滤器
过滤器可用于捕获与某些主机和/或端口之间的数据包,以及使用特定协议(例如,TCP或UDP)。 还有其他更高级的过滤器,但是下面我们只会看到一些简单的示例:
仅捕获TCP数据包
sudo tcpdump 'tcp'
仅UDP数据包
sudo tcpdump 'udp'
捕获HTTP数据包(通常使用端口80)
sudo tcpdump 'tcp port 80'
捕获进出特定主机的数据包
sudo tcpdump 'host ubunlog.com'
捕获往返于特定主机的HTTP数据包
sudo tcpdump 'tcp port 80 and host ubunlog.com'
毕竟,我认为已经证明 tcpdump是一个非常简单且有用的诊断工具 使用,显示和保存与网络接口有关的数据包信息。 但是,在播放tcpdump时,我们会发现本文未显示的其他功能。 我们还将有可能咨询 文档页面 该工具使我们能够更详细地了解其可能性。
成为第一个发表评论