tcpdump抓包命令

简介:

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


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


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

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

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

1
2
3
4
# 这里的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\)

wKiom1kK2EnSOz6yAAEejykoET0246.jpg

参数 说明
-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通信

1
tcpdump -n ip host 192.168.51.188 and ! 192.168.51.164

wKiom1kK2_qgLHx3AAE2jx4qrtQ826.jpg


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

1
tcpdump -n -c 2 ip src 172.16.100.212

wKioL1kK3N_ApG-sAABv-xBtHbY303.jpg


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

1
tcpdump  -n -c 2 host 192.168.51.188 and port 80

wKioL1kK3xuiXflwAACOMyULBlk450.jpg


抓取一个HTTP包

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

tcp[20:2],表示长度

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

wKioL1kK4rTAbiMrAAEPXvxW45Q281.jpg






      本文转自linuxjavachen  51CTO博客,原文链接:http://blog.51cto.com/littledevil/1922087,如需转载请自行联系原作者






相关文章
|
2月前
|
运维 网络协议 安全
【Shell 命令集合 网络通讯 】Linux 网络抓包工具 tcpdump命令 使用指南
【Shell 命令集合 网络通讯 】Linux 网络抓包工具 tcpdump命令 使用指南
88 0
|
2月前
|
网络协议 Linux
Linux命令(120)之tcpdump
Linux命令(120)之tcpdump
49 0
|
8月前
|
Linux
linux下用tcpdump抓包
linux下用tcpdump抓包
|
12天前
|
运维 监控 网络协议
Linux抓包命令tcpdump使用技巧大全
【7月更文挑战第10天】
33 5
Linux抓包命令tcpdump使用技巧大全
|
2月前
|
运维 网络协议 Python
使用tcpdump和wireshark进行服务器抓包分析
使用tcpdump和wireshark进行服务器抓包分析
120 0
|
2月前
|
机器学习/深度学习 Linux
tcpdump的抓包
tcpdump的抓包
33 0
|
2月前
|
Ubuntu 网络协议 安全
Tcpdump 抓包分析指令使用方法
tcpdump是一个强大的网络数据包抓包分析工具,用于抓取数据包和分析网络流量。并以可阅读的格式展示,包括源和目标地址、端口、协议类型等信息。
132 0
|
9月前
|
网络协议 安全 Unix
一文带你掌握Tcpdump命令的使用
一文带你掌握Tcpdump命令的使用
153 0
|
机器学习/深度学习 NoSQL Linux
tcpdump 常用命令
Linux 的命令太多,tcpdump 是一个非常强大的抓包命令。有时候想看线上发生的一些问题:nginx 有没有客户端连接过来……客户端连接过来的时候 Post 上来的数据对不对……
87 0
|
机器学习/深度学习 网络协议 Linux
Linux网络管理之tcpdump命令 – 监听网络流量
tcpdump命令是一款sniffer工具,是linux上的抓包工具,嗅探器;它可以打印出所有经过网络接口的数据包的头信息。
663 0
Linux网络管理之tcpdump命令 – 监听网络流量