tcpdump网络抓包工具分析

0    148    2

Tags:

👉 本文共约3290个字,系统预计阅读时间或需13分钟。

简介

tcpdump 是分析网络和排查网络问题的一个很好用的工具,它通过抓取数据包,显示网络的实时情况,并将结果输出到标准输(STDOUT)上,也可以存储在文件中。

tcpdump是网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤。并提供and、or、not等逻辑语句帮助去除无用的信息。

安装

检查可用网卡(interfaces)

查询所有可用的网卡,使用 -D 选项:

上述命令将会列出系统中所有可用的网络接口,包括有线和无线接口,使用 --list-interfaces 选项也可以达到相同的目的:

运行结果如下图所示:

tcpdump网络抓包工具分析

抓取某个网卡的数据包

不指定任何参数的时候会监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。使用 -i 选项可抓取某个特定网卡的数据:

在上述命令中 表示网卡名称。假如我们要抓取网卡 eth0 的数据,可使用如下命令:

注:为了方便演示,我们后文中将会使用 eth0 或者 eth1 作为目标网卡。

预设抓包数量

使用 -c 选项可以预设抓包的数量。比如,下面命令将会抓取 4 个数据包:

tcpdump网络抓包工具分析

如果没有预设抓包数量,需要使用 ctrl+c 或者 ctrl+z 手动停止抓包操作。

获取详细输出

使用 -v 选项可以获取详细输出,如下命令:

详情的输出,有个详细程度的区别,换句话说,可以使用更多的 -v 标志,比如 -vv 或者 -vvv,这将会在终端上产生更加详细的输出:

以 ASCII 格式打印抓取到的数据

有时候我们希望数据以 HEX 或者 ASCII 格式展现,这里可以使用 -A 选项来表示以 ASCII 格式,-XX 选项表示以 ASCII 和 HEX 格式展示数据:

tcpdump网络抓包工具分析

抓取从某个源 IP 发送的数据包

要抓取来自某个特定源 IP 的数据包,可使用如下命令:

比如,我们查看来自 IP 为 192.168.56.11 的数据:

tcpdump网络抓包工具分析

上面例子中的计数 5 为只抓取5个数据包。

抓取发送到特定目标 IP 的数据包

如果要检查发送到特定目标 IP 地址的流量,可使用以下命令:

比如我们将目标 IP 设为 192.168.56.11,查看流量的详细信息:

tcpdump网络抓包工具分析

在 tcpdump 中使用过滤选项

tcpdump 命令提供了一些过滤选项,以缩小抓包数据的范围,这样可以过滤掉一些不必要的数据,以便于分析数据。过滤方式包括主机地址、端口、协议或者其他过滤条件。下面我们来举例说明。

端口号

如果要执行端口号(比如端口22)过滤,可参照如下方式执行 tcpdump 命令:

此命令将抓取 TCP 和 UDP 数据流。

协议

与端口号类似,proto 指令根据特定流量过滤数据包捕获。在这里,你可以使用协议名称或协议编号作为参数值:

或者:

本人提供Oracle(OCP、OCM)、MySQL(OCP)、PostgreSQL(PGCA、PGCE、PGCM)等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!
tcpdump网络抓包工具分析后续精彩内容已被小麦苗无情隐藏,请输入验证码解锁本站所有文章
验证码:
请关注本站微信公众号,回复“小麦苗博客”,获取验证码。在微信里搜索“DB宝”或者“www_xmmup_com”或者微信扫描右侧二维码都可以关注本站微信公众号。

标签:

Avatar photo

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部