首页 > 系统相关 >Linux 网络抓包工具 Tcpdump

Linux 网络抓包工具 Tcpdump

时间:2023-08-07 15:37:46浏览次数:38  
标签:www tcpdump Tcpdump 捕获 Linux home 数据包 抓包 linuxmi

Linux tcpdump 命令示例

tcpdump 是一个功能最强大且广泛使用的命令行数据包嗅探或数据包分析工具,用于捕获或过滤在特定接口上接收或传输的 TCP/IP 数据包。

Tcpdump 在许多 Linux/Unix 操作系统中都是现成的。此外,它提供了一个宝贵的选项,可以将捕获的数据包保存到文件中以供将来分析。

它将文件保存为 pcap 格式,可以通过 tcpdump 命令或名为 Wireshark(网络协议分析器)的开源基于GUI的工具查看 tcpdump pcap 格式文件。


如何在Linux中安装tcpdump

许多 Linux 发行版已经预装了 tcpdump 工具,如果您的系统没有安装它,可以使用以下任意一条命令进行安装。

$ sudo apt install tcpdump         [在 Debian, Ubuntu 和 Mint 上]
$ sudo yum install tcpdump         [在 RHEL/CentOS/Fedora 和 Rocky/AlmaLinux 上]
$ sudo emerge -a sys-apps/tcpdump  [在 Gentoo Linux 上]
$ sudo apk add tcpdump             [在 Alpine Linux 上]
$ sudo pacman -S tcpdump           [在 Arch Linux 上]
$ sudo zypper install tcpdump      [在 OpenSUSE 上]

开始使用 tcpdump 命令示例

一旦在您的系统上安装了 tcpdump 工具,您可以继续查看以下带有示例的命令。

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

默认情况下,命令屏幕会不断滚动,直到您中断它。当我们执行 tcpdump 命令时,它会从所有接口捕获数据包,但是通过使用“-i”开关,只能从所需的接口捕获。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -i ens33


 

2、仅捕获指定数量的数据包

当运行 tcpdump 命令时,它会捕获指定接口的所有数据包,直到您按下取消按钮。但是通过使用“-c”选项,您可以捕获指定数量的数据包。以下示例将仅捕获6个数据包。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -c 5 -i ens33


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

以下带有选项“-A”的tcpdump命令以ASCII格式显示数据包。这是一种字符编码格式。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -A -i ens33


4、显示可用的接口

要列出系统上可用的接口数量,请运行以下带有“-D”选项的命令。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -D

Linux 网络抓包工具 Tcpdump使用 并使用wireshark打开cap文件_IP

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

以下带有“-XX”选项的命令会捕获每个数据包的数据,包括其链路层头部,以十六进制和ASCII格式显示。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -XX -i ens33


6、捕获并保存数据包到文件中

正如前面所说,tcpdump具有将数据包捕获并保存为.pcap格式的功能,要实现这一点,只需执行带有“-w”选项的命令。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -w 0001.pcap -i ens33


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

要读取和分析捕获的数据包0001.pcap文件,请使用带有“-r”选项的命令,如下所示。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -r 0001.pcap


8、捕获IP地址数据包

要捕获特定接口的数据包,请使用带有“-n”选项的以下命令。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -n -i ens33


9. 仅捕获TCP数据包。

要基于TCP端口捕获数据包,请使用带有“tcp”选项的以下命令。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -i ens33 tcp

Linux 网络抓包工具 Tcpdump使用 并使用wireshark打开cap文件_TCP_02

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

假设您要捕获特定端口443的数据包,请执行以下命令,并指定端口号443,如下所示。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -i ens33 port 443


11、从源IP捕获数据包

要捕获源 IP 的数据包,例如,您要捕获IP地址为 10.10.201.224 的数据包,请使用以下命令。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -i ens33 src 10.10.201.224


12、从目标IP捕获数据包

要捕获目标 IP 的数据包,例如,您要捕获 IP 地址为 10.10.154.25 的数据包,请使用以下命令。

root@linuxmi:/home/linuxmi/www.linuxmi.com# tcpdump -i ens33 dst 10.10.154.25

Linux 网络抓包工具 Tcpdump使用 并使用wireshark打开cap文件_TCP_03

实例:

例子:抓取网卡ens33  及10.10.154.25 ip和22端口

第一步抓数据并保存至文件---第二步把保存的文件 下载至已经安装wireshark的PC中---第三步在wireshark中打开cap文件。

抓取数据 并保存在 file01.cap文件中
命令
tcpdump -i ens33  -w file01.cap host 10.10.154.25 and tcp port 22

 -w :参数指定将监听到的数据包写入文件中保存,file.cap就是该文件。

-i   :参数指定tcpdump监听的网络界面。

Linux 网络抓包工具 Tcpdump使用 并使用wireshark打开cap文件_TCP_04

将保存的文件file01.cap下载至已安装wireshark的电脑中
sz file01.cap 

Linux 网络抓包工具 Tcpdump使用 并使用wireshark打开cap文件_TCP_05

使用wireshark 打开file01.cap 

Linux 网络抓包工具 Tcpdump使用 并使用wireshark打开cap文件_linux_06

Linux 网络抓包工具 Tcpdump使用 并使用wireshark打开cap文件_TCP_07






标签:www,tcpdump,Tcpdump,捕获,Linux,home,数据包,抓包,linuxmi
From: https://blog.51cto.com/u_64214/6994150

相关文章

  • Linux系统目录结构
    Linux系统目录结构登录系统后,当前命令窗口下输入命令:ls/你会看到如下图所示:树状目录结构:/bin:bin是Binaries(二进制文件)的缩写,这个目录存放着最经常使用的命令。/boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。/dev:dev是Device(设备)......
  • linux GCC升级版本
    一、查看gcc版本首先查看当前gcc版本:gcc-v[mpshen@bigdata01~]$gcc-vUsingbuilt-inspecs.COLLECT_GCC=gccCOLLECT_LTO_WRAPPER=/usr/local/gcc/libexec/gcc/x86_64-unknown-linux-gnu/4.9.2/lto-wrapperTarget:x86_64-unknown-linux-gnuConfiguredwith:./configure......
  • 复习笔记|第九、十章 Linux文件系统《操作系统原理教程》
    参考教材:《操作系统原理教程(第4版)》刘美华翟岩龙著大纲问题回答(精简版)1.Ext2文件卷的布局?各部分的作用是什么?Ext2文件卷的布局◼Ext2把磁盘块分为组,每组包含存放在相邻磁道的数据块和索引节点。块组的大小相等并顺序安排。◼Ext2用“块组描述符”来描述这些块组本身的结......
  • Linux 性能分析工具Perf
    Perf全名是Performance Event,是在Linux 2.6.31 以后内建的系统效能分析工具,它随着核心一并释出。藉由perf,应用程式可以利用PMU (Performance Monitoring Unit), tracepoint 和核心内部的特殊计数器(counter) 来进行统计,另外还能同时分析运行中的核心程式码,从而更全面了解......
  • linux各章节的详细笔记
    linux1.网络连接的三种方式2.用户组2.1新增组:groupadd组名2.2删除组:groupdel组名2.3添加用户时直接加上组:useradd-g组名用户名2.4修改用户的组:usermod-g用户组用户名3.常用指令3.1mkdirmkdir[选项]目录常用选项:-p:创建多级目录3.2rmdirrmdir[选项]......
  • 1-linux下mysql8.0.33安装
    在互联网企业的日常工作/运维中,我们会经常用到mysql数据库,而linux下mysql的安装方式有三种:1.mysqlrpm安装2.mysql二进制安装3.mysql源码安装今天就为大家讲讲linux下mysql8.0.33版本rpm方式的安装。1.前提1.1.系统版本CentOS7.9.2009命令:cat/etc/redhat-release[root@cent79-2~]......
  • linux安装宋体
    解决pdf转图片字体乱码的问题1、命令安装yuminstall-yfontconfigmkfontscale2、查看字体#查看系统中的字体fc-list#查看系统中的中文字体  第一次fc-list:lang=zh/3、安装字体加入我要安装的字体是宋体:simsun.ttf文件#进入fonts目录cd/usr/share/fonts#......
  • python 抓包
    Scapy方式Scapy是一个强大的Python库,可用于创建、发送和解码网络数据包。它能够抓取和处理各种网络层协议、载荷和报头信息。Scapy是一个全能的库,包含各种工具和功能。该库具有灵活性、可扩展性和实用性fromscapy.allimport*pkts=sniff(iface="eth0",count=10)forpkt......
  • linux(centos版本)下docker部署.netcore项目
    准备:1.要在Linux系统上使用Docker部署系统,你需要安装Docker引擎以及一些其他相关的软件。以下是安装步骤:安装Docker引擎:对于Ubuntu系统,可以使用以下命令安装Docker:sudoapt-getupdatesudoapt-getinstalldocker-cedocker-ce-clicontainerd.......
  • Linux服务器安装JDK20
    一、下载安装包访问官网,找到JDK20,复制下载链接我复制的链接是:JDK20二、Linux服务器操作1.服务器根目录下创建一个新的文件夹cd/mkdirjdkscd/jdks2.将下载好的jdk-20上传到jdks下3.解压缩tar-zxvfjdk-20_linux-x64_bin.tar.gz4.配置环境变量vim/etc/profile在配置文件末......