tcpdump 抓包

tcpdump Tcpdump抓取http GET/POST requests - 无知是恶 - 博客园

抓取post 参数

bash 复制代码
tcpdump -i eth0   -A 'tcp dst port 80 or tcp dst port 443  and tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504F5354' -w 2.cap

tcpdump 抓包 mysql

bash 复制代码
tcpdump -i ens192 -s 0 -l -w - dst port 33066 |strings
bash 复制代码
-a  将网络地址和广播地址转变成名字
-d  将匹配信息包的代码以人们能够理解的汇编格式给出
-dd  将匹配信息包的代码以c语言程序段的格式给出
-ddd 将匹配信息包的代码以十进制的形式给出
-D   显示所有可用网络接口的列表
-e  在输出行打印出数据链路层的头部信息
-f  将外部的Internet地址以数字的形式打印出来
-l  使标准输出变为缓冲行形式
-L   列出指定网络接口所支持的数据链路层的类型后退出
-n  不把网络地址转换成名字,即不做反向域名解析
-q   简洁地打印输出。即打印很少的协议相关信息, 从而输出行都比较简短
-t   在每行的输出中不输出时间
-tt  在每行的输出中会输出时间戳
-ttt 输出每两行打印的时间间隔(以毫秒为单位)
-tttt 在每行打印的时间戳之前添加日期的打印(此种选项,输出的时间最直观)

-v   产生详细的输出. 比如包的TTL,id标识,数据包长度,以及IP包的一些选项。同时它还会打开一些附加的包完整性检测,比如对IP或ICMP包头部的校验和。
-vv  产生比-v更详细的输出. 比如NFS回应包中的附加域将会被打印, SMB数据包也会被完全解码。
-vvv 产生比-vv更详细的输出。比如 telent 时所使用的SB, SE 选项将会被打印, 如果telnet同时使用的是图形界面,其相应的图形选项将会以16进制的方式打印出来
-c  在收到指定的包的数目后,tcpdump就会停止
-F  从指定的文件中读取表达式,忽略其它的表达式
-i  指定监听的网络接口
-r  从指定的文件中读取包(这些包一般通过-w选项产生)
-w  直接将数据报写入文件中,并不分析和打印出来
-T  将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程调用)和snmp(简单 网络管理协议)
-s   tcpdump 默认只会截取前 `96` 字节的内容,要想截取所有的报文内容,可以使用 `-s number`, `number` 就是你要截取的报文字节数,如果是 0 的话,表示截取报文全部内容。
-S  seq ack 使用绝对序列号,而不是相对序列号
-Z  后接用户名,在抓包时会受到权限的限制。如果以root用户启动tcpdump,tcpdump将会有超级用户权限


tcpdump -i eth0   #捕获指定接口(网卡)的数据包 可通过 netstat -i查看网卡设备
tcpdump -i eth0 -c 3   #捕获指定个数的数据包(3个数据包)
tcpdump -A -i eth0    #用ASCII码格式输出捕获的数据包
tcpdump -D    #显示可用的系统接口
tcpdump -XX -i eth0   #用十六进制和ASCII码格式显示捕获的数据包
tcpdump -w tempDump.pcap -i eth0   #把捕获的数据包写入到一个.pcap后缀的文件中
tcpdump -r tempDump.pcap    #读取捕获数据包文件的内容
tcpdump -n -i eth0    # 单个 n 表示不解析域名,直接显示 IP
tcpdump -i eth0 tcp    #捕获TCP类型的数据包
tcpdump -i eth0 port 22   #捕获指定端口(这里是22)的数据包
tcpdump -i eth0 src 源ip地址   #捕获请求源是 192.169.12.101 的数据包
tcpdump -i eth0 dst 目标ip地址   #捕获指定目的IP的数据包
tcpdump -i eth6 dst host 目标ip地址 and port 8800 -w data.pcap  #抓取指定网卡,指定IP和端口的数据包 并写入到data.pcap文件中
tcpdump host 192.168.12.101 and 192.168.1.201 -w out &  #后台抓取两主机之间的数据
tcpdump -nn 单个 n 表示不解析域名,直接显示 IP;两个 n 表示不解析域名和端口。这样不仅方便查看 IP 和端口号,而且在抓取大量数据时非常高效,因为域名解析会降低抓取速度
相关推荐
Sleepy MargulisItG1 分钟前
【Linux网络编程】TCP Socket
linux·网络·tcp/ip
Watermelo6173 分钟前
【前端实战】从 try-catch 回调到链式调用:一种更优雅的 async/await 错误处理方案
前端·javascript·网络·vue.js·算法·vue·用户体验
Andre_BWM99925 分钟前
跨境电商防关联技术实践:美客多自养号环境搭建(指纹浏览器/IP隔离/支付合规)
网络·网络协议·tcp/ip
hh.h.18 分钟前
无网络也能用!Flutter+开源鸿蒙构建轻量级应急通信系统
网络·flutter·开源
老兵发新帖22 分钟前
Ubuntu如何判断获取到的IP地址是静态IP还是动态?
chrome·tcp/ip·ubuntu
橘子真甜~31 分钟前
C/C++ Linux网络编程14 - 传输层TCP协议详解(保证可靠传输)
linux·服务器·网络·网络协议·tcp/ip·滑动窗口·拥塞控制
真正的醒悟9 小时前
图解网络34
网络
IT·小灰灰13 小时前
告别“翻墙“烦恼:DMXAPI让Gemini-3-pro-thinking调用快如闪电
网络·人工智能·python·深度学习·云计算
任子菲阳14 小时前
学Java第五十六天——网络编程
网络
程序员zgh14 小时前
常用通信协议介绍(CAN、RS232、RS485、IIC、SPI、TCP/IP)
c语言·网络·c++