Ubuntu默认是安装好了tcpdump工具的,如果没有安装的话使用sudo apt-get install tcpdump即可安装。
(如果遇到tcpdump: no suitable device found的问题,检查一下是不是在用root权限运行tcpdump,tcpdump只能在root权限下工作)
安装好tcpdump之后,运行tcpdump:
1. tcpdump -D 获取网络适配器列表,以下是在Ubuntu上获取到的结果:
root@holmesian-laptop:~# tcpdump -D
1.eth0
2.wlan0
3.usbmon1 (USB bus number 1)
4.usbmon2 (USB bus number 2)
5.usbmon3 (USB bus number 3)
6.usbmon4 (USB bus number 4)
7.usbmon5 (USB bus number 5)
8.any (Pseudo-device that captures on all interfaces)
9.lo
2. tcpdump -i <需要监控的网络适配器编号>,例如我想监控我的无线网卡wlan0,则使用tcpdump -i 2。
root@holmesian-laptop:~# tcpdump -i 2
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on wlan0, link-type EN10MB (Ethernet), capture size 96 bytes
21:24:14.578430 00:24:f9:05:78:00 (oui Unknown) Unknown SSAP 0x78 > 00:1f:3a:18:fa:06 (oui Unknown) Unknown DSAP 0xd8 Information, send seq 0, rcv seq 16, Flags [Command], length 70
21:24:14.578447 00:24:f9:05:78:00 (oui Unknown) Unknown SSAP 0x78 > 00:1f:3a:18:fa:06 (oui Unknown) Unknown DSAP 0xd8 Information, send seq 0, rcv seq 16, Flags [Command], length 223
21:24:14.995603 00:24:f9:05:78:00 (oui Unknown) Unknown SSAP 0x20 > 78:dd:08:d1:b2:ca (oui Unknown) Unknown DSAP 0x76 Information, send seq 0, rcv seq 16, Flags [Command], length 70
21:24:15.019811 00:24:f9:05:78:00 (oui Unknown) Unknown SSAP 0xa6 > 2c:81:58:ec:9c:54 (oui Unknown) Unknown DSAP 0x0a Information, send seq 0, rcv seq 16, Flags [Command], length 72
如果不使用-i来定义监控适配器的话,默认使用列表中的第一个;
3. 使用无线网卡wlan0监控IP地址为172.16.86.111上443端口的tcp协议:
tcpdump -i 2 host 172.16.86.111 and tcp port 443
4. 如果想要显示数据包的内容,需要使用-X参数,如,我想要显示捕获的https数据包http header的内容:
tcpdump -X -i 2 host 172.16.86.111 and tcp port 443
显示结果如下:
21:27:53.662741 IP holmesian-laptop.local.44239 > 172.16.86.111.https: Flags [S], seq 24296623, win 5840, options [mss 1460,sackOK,TS val 153804 ecr 0,nop,wscale 6], length 0
0x0000: 4500 003c e463 4000 4006 514a ac10 567e E..<.c@.@.QJ..V~
0x0010: ac10 566f accf 01bb 0172 bcaf 0000 0000 ..Vo.....r......
0x0020: a002 16d0 66a8 0000 0204 05b4 0402 080a ....f...........
0x0030: 0002 58cc 0000 0000 0103 0306 ..X.........
21:27:56.660488 IP holmesian-laptop.local.44239 > 172.16.86.111.https: Flags [S], seq 24296623, win 5840, options [mss 1460,sackOK,TS val 154554 ecr 0,nop,wscale 6], length 0
0x0000: 4500 003c e464 4000 4006 5149 ac10 567e E..<.d@.@.QI..V~
0x0010: ac10 566f accf 01bb 0172 bcaf 0000 0000 ..Vo.....r......
0x0020: a002 16d0 63ba 0000 0204 05b4 0402 080a ....c...........
0x0030: 0002 5bba 0000 0000 0103 0306 ..[.........
.c
可以看到该结果只显示了https头的一部分,没有显示全,是因为tcpdump默认将显示的数据长度截断了,可以使用-s后面加数据长度,来设置数据显示长度:
tcpdump -X -s 0 -i 2 host 172.16.86.111 and tcp port 443
以上的例子中,-s 0 表示自动设置长度使其能够显示所有数据。
5. 捕获的数据太多,不断刷屏,可能需要将数据内容记录到文件里,需要使用-w参数:
tcpdump -X -s 0 -w aaa host 192.9.200.59 and tcp port 8000
则将之前显示在屏幕中的内容,写入tcpdump可执行文件同级目录下的aaa文件中。
文件查看方式如下,需要使用-r参数:
tcpdump -X -s 0 -i 2 -r holmesian host 172.16.86.111 and tcp port 443
如果这样写:
tcpdump -r holmesian
则只能看到最简单的数据传输交互过程,看不到数据包内容,查看时也需要使用相应的参数。
6.总结
总结一下,tcpdump的参数分两个部分,选项(Options)和表达式(expression):
root@holmesian-laptop:~# tcpdump -h
tcpdump version 4.0.0
libpcap version 1.0.0
Usage: tcpdump [-aAdDefIKlLnNOpqRStuUvxX] [ -B size ] [ -c count ]
[ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
[ -i interface ] [ -M secret ] [ -r file ]
[ -s snaplen ] [ -T type ] [ -w file ] [ -W filecount ]
[ -y datalinktype ] [ -z command ] [ -Z user ]
[ expression ]
分享到:
相关推荐
里面附有安装文档(亲测可用)
在ubuntu环境下,交叉编译tcpdump抓包工具,在出现更新flex bison文件失败如何处理,以及编译报错处理步骤
NFSV4报文 tcpdump报文 NFS报文_抓包分析_ubuntu12.04
《Ubuntu权威指南》目录 目 录 第1章 系统概述与安装 1 1.1 Linux的兴起与发展 2 1.2 充分利用网上资源 3 1.2.1 Ubuntu官方网站 3 1.2.2 GNU网站 4 1.2.3 Linux文档项目网站 4 1.2.4 网上求助 5 1.3 随时查询随机...
安装通过krew安装( ) kubectl krew install sniff对于手动安装,请下载最新的发行包,解压缩并使用随附的makefile: unzip ksniff.zipmake install建立要求: libpcap-dev:用于tcpdump编译(Ubuntu:sudo apt-get...
《Ubuntu权威指南》目录 目 录 第1章 系统概述与安装 1 1.1 Linux的兴起与发展 2 1.2 充分利用网上资源 3 1.2.1 Ubuntu官方网站 3 1.2.2 GNU网站 4 1.2.3 Linux文档项目网站 4 1.2.4 网上求助 5 1.3 随时查询随机...
netdevops-ubuntu基于官方的Ubuntu 20.04 Docker容器。如果您有任何反馈意见,请在GitHub上一个。 Python软件包安装在默认情况下加载的虚拟环境(/ root / venv)中。已安装的软件包奥克斯利天青必要的卷曲dnsutils...
获取:25 http://cn.archive.ubuntu.com/ubuntu/ trusty-updates/main libxml-libxml-perl amd64 2.0108+dfsg-1ubuntu0.1 [337 kB] 获取:26 ...
sudo apt-get install tcpdump graphviz imagemagick python-gnuplot python-crypto python-pyx sudo pip3 install Flask sudo pip3 install Flask-WTF sudo pip3 insta 1.展示数据包基本信息 2.分析数据包协议 3....
ubuntu下自己写tcp协议(server.c,client.c,Makefile),通过tcpdump生成 .cap文件后,利用wireshark分析tcp三次握手的整个过程
libpcap的示例代码和英文资料,tcpdump-filters的规则同样适用于libpcap的过滤表达式
Python编写的可视化的离线数据包分析器 主要功能 1.展示数据包基本信息 ...sudo apt-get install tcpdump graphviz imagemagick python-gnuplot python-crypto python-pyx sudo pip3 install Flask sudo pip3 install F
所有的代码示例都是在Ubuntu 14.04上使用sudo apt-get install scapy安装的标准Scapy软件包创建和测试的。 其他发行版的用户应该能够使用内置的软件包管理器来安装Scapy。 特殊设置 有些脚本需要特殊的设置才能正确...
问题原因是ubuntu下缺少pcap.h等文件。 解决方法: 编译安装libpcap. 在www.tcpdump.org页面中可下载源码:libpcap-1.0.0.tar.gz cd到文件目录: view plaincopy to clipboardprint? $tar -xvf libpcap-1.0.0....
问题原因是ubuntu下缺少pcap.h等文件。 解决方法: 编译安装libpcap. 在www.tcpdump.org页面中可下载源码:libpcap-1.0.0.tar.gz cd到文件目录: view plaincopy to clipboardprint? $tar -xvf libpcap-1.0.0....
tcpdump 打包补丁(例如) Ubuntu将在CVE发生时修补软件包 搜索-引擎物联网 使用密码保护grub(不是在启动时而是用于更改和子条目) # Create password # e.g. password grub-mkpasswd-pbkdf2 # /etc/grub.d/...
我们将以运行在Ubuntu16.04上的tcpdump4.9版本为例进行演示,读者可下载sCFF框架,和我们一同玩耍。第一章节将讲解在使用过程中会遇到的一些基础问题。当然,如果你对云端模糊测试有一定经验或者对这些基础问题足够...
用户手册要求Ubuntu 16.04.2 LTS | 17.02&Ubuntu Server&Bananian&Raspbian&Kali ARM: 须藤apt-get install python-scapy sudo apt-get install python-requests sudo apt安装tshark 须藤apt-get install hping...
一、下载 http://www.tcpdump.org/#latest-release,下载libcap-1.8.1.tar.gz, 解压缩之后 错误1: ./configure checking for getifaddrs... yes checking ifaddrs.h usability... yes checking ifaddrs.h presence...
容器诊断工具 内窥镜:窥探Kubernetes吊舱内部。... 一个实用程序容器(utilities / endoscope),它是一个Ubuntu 18.04映像,其中安装了gdb / tcpdump / dumpcap / ping / hping / curl。 总体用法。 这需要附加一个