tcpdump抓包命令

该命令是抓包分析工具,可以将数据包的头或者是整个包抓取下来进行分析,支持针对特定协议、主机进行过滤,同时支持逻辑操作。

#抓取本机第一个网络接口通常是eth0上所有的包
tcpdump
#抓取指定指定网卡上的的所有包
tcpdump -i eth0

抓取特定主机收到的和发出的所有包,这里的IP不是说包里有这个IP,而是说抓取流经这个主机的进出所有包

# -n 是显示IP和端口,也就是不解析主机名
tcpdump -n host [IP]

抓取特定主机之间的所有IP协议数据包

# 这里的ip指的是IP协议,and表示两个主机之间
tcpdump -n ip host 192.168.51.188 and 192.168.51.164
# 扩展:获取51.188与51.164或者51.165主机之间的IP协议通信
tcpdump -n ip host 192.168.51.188 and \(192.168.51.164 or 192.168.51.165\)

参数 说明
-a 将网络地址和广播地址转换成名字
-d 将匹配数据包的代码用汇编格式输出
-dd 将匹配数据包的代码用C语言格式输出
-n 不把网络地址转换成名字
-nn 以IP和端口来显示
-t 不打印时间戳,默认输出每行开头是时间戳
-v 输出详细信息
-vv 输出详细的报文信息
-c 在收到多少数据包后,停止获取。
-i 指定监听的网络接口
-w 将获取的信息写入文件而不是输出到控制台
-e 每行打印输出中包含数据包的数据链路层头信息
-x 打印每个包的头信息,以16进制打印出每个包的数据。
-xx 打印每个包的头信息,以16进制打印出每个包的数据,包含数据链路层的头部。
-X 当分析和打印时,会打印每个包的头信息,同时以16进制和ASCII码形式打印每个包的数据,但是不包括链路层头信息。
-XX 当分析和打印时,会打印每个包的头信息,同时以16进制和ASCII码形式打印每个包的数据,包括链路层头信息。

类型关键字:

  • host 指定主机名称或者IP
  • net 指定网段
  • port 指定端口

传输方向:

  • src 源
  • dst 目标

协议关键字:fddi、ip、tcp、udp、arp、rarp等。

获取主机51.188除了和51.164之外的所有IP通信

tcpdump -n ip host 192.168.51.188 and ! 192.168.51.164

获取源IP为172.16.100.212到本机的IP请求,并且不解析主机名,获取2个数据包就停止

tcpdump -n -c 2 ip src 172.16.100.212

获取指定主机指定端口的IP协议包

tcpdump  -n -c 2 host 192.168.51.188 and port 80

抓取一个HTTP包

0x4745表示“GET”中的GE,0x4854表示“HTTP”中的HT

tcp[20:2],表示长度

tcpdump  -XvvennSs 0 -i em1 -c 5 tcp[20:2]=0x4745 or tcp[20:2]=0x4854

时间: 2024-10-06 01:10:44

tcpdump抓包命令的相关文章

TCPdump抓包命令详解

TCPdump抓包命令 tcpdump是一个用于截取网络分组,并输出分组内容的工具.tcpdump凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具. tcpdump提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具.tcpdump存在于基本的Linux系统中,由于它需要将网络界面设置为混杂模式,普通用户不能正常执行,但具备root权限的用户可以直接执行它来获取网络上的信息.因此系统中存在网络分析工具主要不是对本机安全的

tcpdump抓包命令及使用

类似: 首页: http://netsniff-ng.org/ 流量生成工具: https://www.ituring.com.cn/article/273988 TRAFGEN(8)网络工具包TRAFGEN(8) http://man7.org/linux/man-pages/man8/trafgen.8.html   抓包工具使用 1.作用: (1)捕获网络协议包 (2)分析网络协议包 2.分类: (1)命令行工具,如tcpdump (2)图像界面工具,wireshark 3.tcpdump

转:tcpdump抓包分析(强烈推荐)

评:示例详细,还有很不错的图解 转自:https://mp.weixin.qq.com/s?__biz=MzAxODI5ODMwOA==&mid=2666539134&idx=1&sn=5166f0aac718685382c0aa1cb5dbca45&scene=5&srcid=0527iHXDsFlkjBlkxHbM2S3E#rd 转自:http://www.jianshu.com/p/8d9accf1d2f1 1 起因 前段时间,一直在调线上的一个问题:线上应用

tcpdump抓包分析具体解释

說實在的,對於 tcpdump 這個軟體來說,你甚至能够說這個軟體其實就是個駭客軟體, 因為他不但能够分析封包的流向,連封包的內容也能够進行『監聽』, 假设你使用的傳輸資料是明碼的話,不得了,在 router 上面就可能被人家監聽走了! 非常可怕吶!所以,我們也要來瞭解一下這個軟體啊!(註:這個 tcpdump 必須使用 root 的身份執行) [[email protected] ~]# tcpdump [-nn] [-i 介面] [-w 儲存檔名] [-c 次數] [-Ae] [-qX] [

TCP三次握手及tcpdump抓包

1. TCP报文段的首部格式 说明: ACK : TCP协议规定,只有ACK=1时有效,也规定连接建立后所有发送的报文的ACK必须为1 SYN(SYNchronization) : 在连接建立时用来同步序号.当SYN=1而ACK=0时,表明这是一个连接请求报文.对方若同意建立连接,则应在响应报文中使SYN=1和ACK=1. 因此,  SYN置1就表示这是一个连接请求或连接接受报文 FIN (finis)即完,终结的意思, 用来释放一个连接.当 FIN = 1 时,表明此报文段的发送方的数据已经发

Android下通过tcpdump抓包

参考:http://www.cnblogs.com/likwo/archive/2012/09/06/2673944.html 最近因为测试需要,要抓手机APP的包. a.手机要有root权限 b.下载tcpdump   http://www.strazzere.com/android/tcpdump c.此处原文采用 adb push 将 tcpdump 文件拷贝到 /data/local  不过我执行此操作时发现权限不够(手机已经root)换用管理者运行 CMD还是不行,最后决定直接在手机上

[转]Linux操作系统tcpdump抓包分析详解

PS:tcpdump是一个用于截取网络分组,并输出分组内容的工具,简单说就是数据包抓包工具.tcpdump凭借强大的功能和灵活的截取策略,使其成为Linux系统下用于网络分析和问题排查的首选工具. tcpdump提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工具.tcpdump存在于基本的Linux系统中,由于它需要将网络界面设置为混杂模式,普通用户不能正常执行,但具备root权限的用户可以直接执行它来获取网络上的信息.因此系统中存在网络分析工具主要不是对本

linux使用tcpdump抓包工具抓取网络数据包,多示例演示

tcpdump是linux命令行下常用的的一个抓包工具,记录一下平时常用的方式,测试机器系统是ubuntu 12.04. tcpdump的命令格式 tcpdump的参数众多,通过man tcpdump可以查看tcpdump的详细说明,这边只列一些笔者自己常用的参数: tcpdump [-i 网卡] -nnAX '表达式' 各参数说明如下: -i:interface 监听的网卡. -nn:表示以ip和port的方式显示来源主机和目的主机,而不是用主机名和服务. -A:以ascii的方式显示数据包,

tcpdump 抓包 通过 Wireshark分析抓包文件

1. tcpdump的基本原理 1.1  tcpdump starce 的区别 在本机中的进程的系统行为调用跟踪,starce   是一个很好的工具:但是在网络问题的调试中,tcpdump 应该是一个必不可少的工具:能清晰分析网络通信的信息. 默认情况下,tcpdump 不会抓取本机内部通讯的报文   :根据网络协议栈的规定,对于报文,即使是目的地是本机(自己和自己通信),也需要经过本机的网络协议层,所以本机通讯肯定是通过API进入内核,并且完成路由选择.[比如本机的TCP通信,也必须要sock