tcpdump介绍

tcpdump 是一款强大的网络抓包工具,运行在 linux 平台上。熟悉 tcpdump 的使用能够帮助你分析、调试网络数据。

tcpdump语法

tcpdump   [-adeflnNOpqStvx]  [-c<数据包数目>]  [-dd][-ddd]   [-F<表达文件>]   [-i<网络界面>]    [-r<数据包文件>]    [-s<数据包大小>]    [-tt]   [-T<数据包类型>]    [-vv]   [-w<数据包文件>]   [输出数据栏位]

tcpdump参数

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

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

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

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

-e    在输出行打印出数据链路层的头部信息,包括源mac和目的mac,以及网络层的协议;

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

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

-n    指定将每个监听到数据包中的域名转换成IP地址后显示,不把网络地址转换成名字;

-nn:  指定将每个监听到的数据包中的域名转换成IP、端口从应用名称转换成端口号后显示

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

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

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

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

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

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

-p:   将网卡设置为非混杂模式,不能与host或broadcast一起使用

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

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

-s    snaplen snaplen表示从一个包中截取的字节数。0表示包不截断,抓完整的数据包。默认的话 tcpdump 只显示部分数据包,默认68字节。

-T    将监听到的包直接解释为指定的类型的报文,常见的类型有rpc (远程过程调用)和snmp(简单网络管理协议;)

-X      告诉tcpdump命令,需要把协议头和包内容都原原本本的显示出来(tcpdump会以16进制和ASCII的形式显示),这在进行协议分析时是绝对的利器。

监听所有端口,直接显示 ip 地址。    tcpdump -nS

显示更详细的数据报文,包括 tos, ttl, checksum 等。    tcpdump -nnvvS

显示数据报的全部数据信息,用 hex 和 ascii 两列对比输出。   tcpdump -nnvvXS

host: 过滤某个主机的数据报文。   tcpdump host 1.2.3.4

src, dst: 过滤源地址和目的地址。     tcpdump src 1.2.3.4   /> tcpdump dst 1.2.3.4

net: 过滤某个网段的数据。    tcpdump net 1.2.3.0/24

过滤某个协议的数据,支持 tcp, udp 和 icmp。    tcpdump icmp

过滤通过某个端口的数据报。    tcpdump port 3306

src/dst, port, protocol: 结合三者。 tcpdump src port 22 and tcp

抓取指定范围的端口。     tcpdump portrange 21-23

通过报文大小过滤请求,数据报大小,单位是字节。

tcpdump less 32
 tcpdump greater 128
 tcpdump > 32
 tcpdump <= 128

抓包输出到文件。       tcpdump -w rumenz.pcap port 80

从文件读取报文显示到屏幕。     tcpdump -nXr rumenz.pcap host web

源地址是 110,目的端口是3306的数据报。  tcpdump -nnvS src 110 and dst port 3306

tcpdump 的输出解读

21:27:06.995846 IP (tos 0x0, ttl 64, id 45646, offset 0, flags [DF], proto TCP (6), length 64)
    192.168.1.110.40411 > 192.168.1.123.80: Flags [S], cksum 0xa730 (correct), seq 992042666, win 65535, options [mss 1460,nop,wscale 4,nop,nop,TS val 663433143 ecr 0,sackOK,eol], length 0

21:27:07.030487 IP (tos 0x0, ttl 51, id 0, offset 0, flags [DF], proto TCP (6), length 44)
    192.168.1.123.80 > 192.168.1.110.40411: Flags [S.], cksum 0xedc0 (correct), seq 2147006684, ack 992042667, win 14600, options [mss 1440], length 0

21:27:07.030527 IP (tos 0x0, ttl 64, id 59119, offset 0, flags [DF], proto TCP (6), length 40)
    192.168.1.110.40411 > 192.168.1.123.80: Flags [.], cksum 0x3e72 (correct), ack 2147006685, win 65535, length 0

最基本也是最重要的信息就是数据报的源地址/端口和目的地址/端口,上面的例子第一条数据报中,源地址 ip 是192.168.1.110,源端口是 40411,目的地址是 192.168.1.123,目的端口是 80。> 符号代表数据的方向。

上面的三条数据还是 tcp 协议的三次握手过程,第一条就是 SYN 报文,这个可以通过 Flags [S] 看出。下面是常见的 TCP 报文的 Flags:

[S]:SYN(开始连接)

[.]: 没有 Flag

[F]: FIN (结束连接)

tcpdump抓包神器详细介绍相关推荐

  1. 新版本Fiddler抓包神器功能介绍

    这里写目录标题 一.新老版本对比: 老版本的fiddler界面长这样: 新版本的界面: 二.使用介绍: 1.勾选能够抓取https开关 2.Live Traffic开关 : 3.抓包时url过滤: 4 ...

  2. 7种抓包工具详细介绍

    在处理IP网络的故障时,经常使用以太网抓包工具来查看和抓取IP网络上某些端口或某些网段的数据包,并对这些数据包进行分析,定位问题. 在 IMON项目里,使用抓包工具抓包进行分析的场景在EPG采集.引流 ...

  3. Fiddler抓包工具详细介绍

    本文转自:http://www.cnblogs.com/Chilam007/p/6985379.html 一.Fiddler与其他抓包工具的区别 1.Firebug虽然可以抓包,但是对于分析http请 ...

  4. tcpdump 抓包写文件

    tcpdump使用笔记 1 tcpdump的参数和解释 [root@localhost opt]# tcpdump -help tcpdump version 4.9.2 libpcap versio ...

  5. 超详细的网络抓包神器 tcpdump 使用指南

    tcpdump 是一款强大的网络抓包工具,它使用 libpcap 库来抓取网络数据包,这个库在几乎在所有的 Linux/Unix 中都有.熟悉 tcpdump 的使用能够帮助你分析调试网络数据,本文将 ...

  6. 关于fi dd ler 手机抓包 网卡地址地址_超详细的网络抓包神器 tcpdump 使用指南

    tcpdump 是一款强大的网络抓包工具,它使用 libpcap 库来抓取网络数据包,这个库在几乎在所有的 Linux/Unix 中都有.熟悉 tcpdump 的使用能够帮助你分析调试网络数据,本文将 ...

  7. 【linux测试必背| tcpdump】命令行抓包神器 | tcpdump抓取post请求并显示详细参数

    命令行抓包神器 | tcpdump抓取post请求并显示详细参数 知识背景(diu ren 经历) 1. tcpdump抓包工具捕捉tcp请求 三次握手和四次挥手 适用场景: 命令格式: 2. tcp ...

  8. 关于fi dd ler 手机抓包 网卡地址地址_抓包神器:tcpdump!我还真没用过

    点击上方蓝色字关注我们~ 面试官 你说你会网络编程?你说你熟悉网络知识,那你使用过tcpdump吗?能给我讲下tcpdump是什么,或者你有用过tcpdump解决过实际问题吗? 如果你学过网络,甚至搞 ...

  9. python解包dump,tcpdump抓包及tshark解包方法介绍

    tshark是wireshark的命令行工具,经过shell命令抓取.解析报文.tcpdump是Linux系统下的抓包工具.wireshark和tcpdump都共同使用 libpcap做为其底层抓包的 ...

最新文章

  1. boost::mpl::aux::largest_int相关用法的测试程序
  2. Docker最全教程之使用Docker搭建Java开发环境(十八)
  3. Hive篇--搭建Hive集群
  4. oracle数据库月份日期固定,oracle 日期函数介绍-数据库专栏,ORACLE
  5. 牛客OI周赛4-提高组 C 战争(war)
  6. 思博伦安全专家预测2017年民用和军用全球导航应用面临的更大风险
  7. poj 3335 Rotating Scoreboard - 半平面交
  8. 如何用atom编辑python_对于新手来说 如何用atom搭建python的ide?
  9. ThinkPHP6.0学习入门:环境搭建与安装教程
  10. pion最简单webrtc例子
  11. 今日头条是怎么盈利的?
  12. 7-20 sdust-Java-字符串集合求并集
  13. RLC元件上电压,电流关系
  14. Nervos 双周报第 4 期:经济白皮书的发件小哥正在路上
  15. 勘智K210 KPU特性及约束
  16. MySQL 基本查询语句
  17. 重塑股份携手苏州金龙与嘉兴国鸿公交,完成燃料电池客车交付
  18. 商汤FPGA优化验证
  19. 某溯源平台:vue生成二维码压缩包下载(二)
  20. Oracle 实验:OEM的使用

热门文章

  1. java从入门到放弃(二)
  2. 孤独源于过分的优越感,而优越感的另一面,则是自卑
  3. Android 今日头条适配详解
  4. 为什么你总是喜欢强调出身
  5. mix2刷android p教程,小米MIX2Android P使用谷歌相机教程
  6. rk3568 修改开机logo
  7. 国内计算机视觉CV方向的大牛/导师
  8. 百度超级链正式发布开放网络白皮书,致力于构建开放共赢区块链新生态
  9. Boost升压以及Buck降压电路
  10. 台式计算机用什么网卡,台式机怎样安装网卡驱动,教您电脑安装网卡驱动