阅读模式:

tcpdump抓包

查看:448  回复:0  类型:  来源:php自学网  标签 linux centos 运维

        tcpdump是一个抓包工具。tcpdump可以将网络中传送的数据包完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。

        http包的结构:

http包的结构.png

        firefox f12工具查看:

zixuephp.net http请求包.png

tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ]

[ -i 网络接口 ] [ -r 文件名] [ -s snaplen ]

[ -T 类型 ] [ -w 文件名 ] [表达式 ]

1. tcpdump的选项介绍

-a  将网络地址和广播地址转变成名字;

-d  将匹配信息包的代码以人们能够理解的汇编格式给出;

-dd  将匹配信息包的代码以c语言程序段的格式给出;

-ddd  将匹配信息包的代码以十进制的形式给出;

-e  在输出行打印出数据链路层的头部信息;

-f  将外部的Internet地址以数字的形式打印出来;

-l  使标准输出变为缓冲行形式;

-n  不把网络地址转换成名字;

-t  在输出的每一行不打印时间戳;

-v  输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息;

-vv  输出详细的报文信息;

-c  在收到指定的包的数目后,tcpdump就会停止;

-F  从指定的文件中读取表达式,忽略其它的表达式;

-i  指定监听的网络接口;

-r  从指定的文件中读取包(这些包一般通过-w选项产生);

-w  直接将包写入文件中,并不分析和打印出来;

-T  将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程

调用)和snmp(简单 网络管理协议;)

官方文档:http://www.tcpdump.org/manpages/tcpdump.1.html

一、tcpdump的安装

yum -y install tcpdump

二、tcpdump抓包的基本用法

    监听网卡1的所有包

tcpdump

    抓取指定ip的包

tcpdump host 47.112.107.147

    抓取指定ip和端口中的包

tcpdump tcp port 80 and host 47.112.107.147

    抓取udp端口的包

tcpdump udp port 端口

    抓取http请求的包,0x4745 为"GET"前两个字母"GE",0x4854 为"HTTP"前两个字母"HT" (拓展:'0x'代表16进制字符默认前缀的表示方式)

tcpdump  -XvvennSs 0 -i eth0 tcp[20:2]=0x4745 or tcp[20:2]=0x4854

    抓取http post请求的包(504f5354=POST)

tcpdump -s 0 -A 'tcp dst port 80 and (tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354)'

     抓取http get请求的包(47455420=GET)

tcpdump -s 0 -A 'tcp dst port 80 and tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'

    抓取指定数量的包,并保存到文件

tcpdump -c 100000 -w ./packages.cap

    抓取指定网卡的包

tcpdump -i eth1 host 192.168.1.1

    抓取来源ip的包

tcpdump -i eth1 src host 192.168.1.1

    抓取目标ip的包

tcpdump -i eth1 dst host 192.168.1.1

    抓取指定端口的包

tcpdump -i eth1 port 80 #端口所有包
tcpdump -i eth1 src port 80 #源端口的包
tcpdump -i eth1 dst port 80 #目标端口的包

    抓取指定协议的所有包

tcpdump -i eth1 arp
tcpdump -i eth1 ip
tcpdump -i eth1 tcp
tcpdump -i eth1 udp
tcpdump -i eth1 icmp

阅读推荐:https://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html

分享到:
0 0

*有问题之处烦请在评论中指出非常感谢!
不是我想要的内容,继续搜索:

扫描二维码手机查看

发布评论:


登录:
  表情:
评论话题
推荐阅读:
php删除一个文件夹内的所有文件夹和文件   阅读:4605php文件下载防盗链   阅读:9590什么是天使轮?什么是A轮融资?B轮融资?   阅读:4783最新centos7 搭建LNMP环境(centos7.2+php7+mysql5.7+nginx1.11+redis3.2)   阅读:10665mysql数据一键导出到csv文件   阅读:5454mysql数据库性能的基本优化   阅读:4392一步步带你,如何网站架构   阅读:3952简单的DOS攻击之死亡之ping详解   阅读:53661最简单的Banner轮播淡入淡出效果代码及实现思路(附带源码)   阅读:12934面试都会问你为什么你从上一家公司离职的真实意思   阅读:10840关于PHP程序员技术职业生涯规划   阅读:2698centos 7 安装 mysql-5.7   阅读:6783PHP 鸟哥:我也曾经是“不适合”编程的人   阅读:14219php 统计网页打开耗时和脚本运行内存   阅读:6589把php session 会话保存到redis   阅读:7017php连接redis   阅读:5498centos 7 修改系统屏幕分辨率   阅读:43843TCP的三次握手(建立连接)和四次挥手(关闭连接)   阅读:3273企业让你去面试,可能不是真的招人   阅读:5735一键分享到QQ空间、QQ好友、新浪微博、微信代码   阅读:127746javascript获取两个日期间的所有日期   阅读:6385html5 离线缓存的使用   阅读:4225php 生成图片,给图片加水印   阅读:6156centos 7搭建zabbix3.4   阅读:6260php连接redis   阅读:5498把php session 会话保存到redis   阅读:7017mongodb设置shell开机启动脚本   阅读:9740mysql5.7主从同步中binlog同步模式详解   阅读:6751php打印九九乘法表   阅读:9894php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:8188霍金24岁博士毕业论文在线预览   阅读:5404关于PHP程序员技术职业生涯规划   阅读:2698centos7开启交换内存   阅读:10609linux php7编译安装mongodb扩展   阅读:8604HTTP 1.1 协议详解   阅读:11131php生成二维码   阅读:6640mysql中文分词全文搜索索引讯搜的安装   阅读:6621centos 7 忘记root密码   阅读:4620霍金24岁博士毕业论文在线预览   阅读:5404最简单的Banner轮播左右切换效果代码及实现思路(附带源码)   阅读:31328php显示刚刚、几分钟前、几小时前、几天前的函数   阅读:8188比phpexcel还要简单的excel CSV 一键导入数据到数据库   阅读:5248centos 7 设置 nginx-1.11.10 开机启动   阅读:7798shell脚本批量删除几天前的文件   阅读:9635用php从1加到100的值   阅读:8349csv文件一键导入数据到mysql数据库   阅读:6498shell脚本破解十位数内的所有纯数字rar加密压缩包脚本   阅读:8688php 使用 smtp.php 类在线发送邮件功能   阅读:5565爱编程,也爱健康   阅读:4120PHP 鸟哥:我也曾经是“不适合”编程的人   阅读:14219