Tcpdump 命令实际示例,Linux 下功能最强大的网络抓包工具

tcpdump是最基本、最强大的命令行网络数据包嗅探工具。我们用它来分析服务器的网络数据包,捕获或过滤在特定网络接口上通过网络传输和接收的TCP/IP数据包。

它几乎适用于所有基于Linux/Unix操作系统的服务器。您还可以将捕获的数据包保存在文件中,以便以后使用tcpdump工具进行分析。它将文件保存为pcap格式,可通过tcpdump命令或基于GUI的网络协议分析工具Wireshark查看。

如何在Linux中安装tcpdump?

大多数Linux服务器都预装了tcpdump工具,但如果你在系统中没有找到它,你可以使用下面的命令来安装它。

yum install tcpdump

或者

apt-get install tcpdump

示例:

将tcpdump工具安装到系统中后,让我们通过使用示例查看tcpdump来检查其功能。

1、从特定接口捕获数据包

tcpdump命令输出将向上滚动,直到您通过中断屏幕停止为止。它将捕获来自所有接口的网络数据包。如果要捕获特定接口的数据包,请使用“ -i”参数和网络接口名称,如下所示:

tcpdump -i eth0

2、仅捕获N个数据包

缺省情况下,tcpdump命令捕获所有数据包,但捕获软件包数量。要定义要捕获的软件包数量,请使用“ -c”参数,如下所示:

tcpdump -c 5 -i eth0

3、以ASCII打印捕获的数据包

我们可以使用tcpdump命令捕获ASCII格式的网络数据包。要捕获ASCII格式的数据包,请在tcpdump命令中使用“ -A”参数。

tcpdump -A -i eth0

4、显示可用接口

我们可以使用带有“ -D”参数的“ tcpdump”命令找到所有可用的接口。

tcpdump -D

5、以十六进制和ASCII显示捕获的数据包

我们可以使用带有选项“ -XX”的命令“ tcpdump”来捕获带有ASCII和HEX格式的包头的网络包:

tcpdump -XX -i eth0

6、捕获数据包并将其保存在文件中

我们可以选择将捕获的数据包保存到文件扩展名为“ .pcap”的文件中。要保存“ tcpdump”命令的输出,请使用“ -w”选项以及文件名,如下所示:

tcpdump -w test.pcap -i eth0

7、读取捕获的数据包文件

要读取“ .pcap”文件(以前是tcpdump输出的剃光文件),我们可以将“ -r”选项与文件名一起使用。例如,在这里我们打开以前剃过的文件(test.pcap)。

tcpdump -r test.pcap

8、捕获IP地址包

为了捕获IP地址数据包,我们将tcpdump与“ -n”选项一起使用。例如,这里我们在网络接口“ eth0”上捕获IP地址数据包。

tcpdump -n -i eth0

9、仅捕获TCP数据包

我们可以使用“ tcpdump”命令捕获特定类型的网络数据包。例如,要仅捕获tcp数据包,可以使用带有tcp选项的命令,如下所示:

tcpdump -i eth0 tcp

10、从特定端口捕获数据包

我们还可以选择“ tcpdump”命令来捕获特定端口上的网络数据包。要使用此功能,我们可以将“ port”参数与端口号一起使用。例如,在下面的命令中,我们正在捕获端口22222使用的eth0接口上的所有网络数据包。

tcpdump -i eth0 port 22222

11、从源IP捕获数据包

有一个选项可以捕获由特定源IP生成的那些网络数据包。要使用“ tcpdump”命令捕获那些数据包,我们可以将“ src”选项与源IP一起使用,如下所示:

tcpdump -i eth0 src 192.168.7.5

12、从目标IP捕获数据包

如上述示例,我们还可以选择使用目标地址捕获网络数据包。要使用“ tcpdump”命令捕获那些数据包,我们可以将选项“ dst”与目标IP一起使用,如下所示:

tcpdump -i eth0 dst 192.168.1.1

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/9457

(0)
郭靖的头像郭靖
上一篇 2023年8月3日 下午2:51
下一篇 2023年8月7日 下午4:35

相关推荐

  • Expect解决shell脚本的交互需求

    在linux系统中,shell脚本可以大大提高我们的工作效率。但遇到需要交互的场景时,shell脚本却无法解决。 简介 Expect语言是基于Tcl的。Tcl实际上是一个子程序库,这些子程序库可以嵌入到程序里从而提供语言服务。 最终的语言有点象一个典型的 Shell语言。里面有给变量赋值的set命令,控制程序执行的if,for,continue等命令,还能进…

    2022年11月15日
    1.2K00
  • Linux Centos 7.6修改ssh端口为49527,并添加防火墙例外,修改root密码, 设置禁ping,搭建FTP站点 ,修改yum源。

    1.修改ssh端口为49527,并添加防火墙例外 (1). 修改ssh配置文件  /etc/ssh/sshd_config,将端口号修改为49527.同时保留ssh默认的22端口,为了防止修改端口号失败以后,远程登录不上服务器,如图1所示: (2).修改firewall配置 默认情况下,防火墙在没有配置任何策略集情况下,是禁止所有ip地址和端口号同行的,因此…

    2022年7月18日
    1.9K00
  • 通过 Linux 命令行连接远程 Windows 系统

    安装 xfreerdp 在使用 xfreerdp 之前,您需要安装它。在大多数 Linux 发行版中,您可以使用包管理器来执行此操作。 在 Ubuntu / Debian 和 Linux Mint 上,运行以下命令 基于 RHEL 的发行版,如 Rocky Linux、AlmaLinux 和 Fedora,运行以下命令 使用 xfreerdp 远程连接 Wi…

    2023年9月20日
    1.3K00
  • LAMP环境下部署DiscuzQ

    一、安装Apachae yum安装Apache,并设置开机自启动 在网页浏览器输入ip地址,查看Apache是否正常 二、安装配置 MariaDB 执行以下命令,查看系统中是否已安装 MariaDB。 rpm -qa | grep -i mariadb       返回结果类似如下内容,则表示已存在 MariaDB。 &nbsp…

    2022年12月6日
    1.5K00
  • Ubuntu 18.04 永久修改DNS

    每次在/etc/resolv.conf 修改DNS之后,重启服务器DNS就会重置为127.0.0.53 解决过程 从/etc/resolv.conf的注释中发现systemd-resolved为本地应用程序提供了DNS解析服务。通过 systemd-resolved 在本地回环网口 127.0.0.53 上提供的本地DNS服务器。 应用程序可以直接向 127…

    2022年7月5日
    1.7K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信