tcpdump是一个强大的网络抓包Sniffer类工具,通常用在Linux系统中,Windows操作系统中也会使用,可以看作是WireShark的命令行版本。tcdpump命令最初设计用于观察TCP/IP性能问题,它是一个用于截取网络分组,并输出分组内容的工具。tcpdump可以将网络中传送的数据包的报文头完全截获下来提供分析,它支持针对网络层、协议、主机、网络或端口的过滤,并提供and,or,not等逻辑语句来帮助用户去掉无用的信息。
操作命令:
- tcpdump -i wlan0 -s 0 -w a.cap //监听wlan0网卡上的全部流量,-s代表抓取包的大小,默认为抓取64,设置为0, 表示包有多大,抓多大。-w,表示抓取下来保存为,a.cap
- tcpdump -r a.cpa
- tcpdump -A -r a.cap //以Ascall显示包文件
- tcpdump -x -r a.cap //以十六进制显示包文件
- tcpdump -i eth0 tcp port 22 //监听tcp协议的,22端口
tcpdump---筛选
- tcpdump -n -r http.cap | awk '{print $3}' |sort -u // -n 表示只以ip地址的形式显示出来,不显示域名。awk 参数表示只显示第三列信息; sort表示去掉重复的
- tcpdump -n src host 145.254.160.237 -r http.cap //source
- tcpdump -n dst host 145.254.160.237 -r http.cap //destination
- tcpdump -n udp port 53 -r http.cap //使用udp 53端口就可以把所有的域名查询包显示出来
- tcpdump -nX port 80 -r http.cap //十六进制
- tcpdump -A -n 'tcp[13] = 24' -r http.cap //筛选tcp包里面的ack和psh包
0