Linux (一). tcpdump
[TOC]
tcpdump
tcpdump(dump the traffic on a network),根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
不同IP间的抓包
场景描述:
例如,主机服务的机器IP为192.168.186.163
,然后用192.168.186.161
访问,在192.168.186.163
用tcpdump进行抓包,过程如下:
在192.168.186.163输入命令:
tcpdump -i ens33 port 80 -w /tmp/http.cap
抓取ens33这张网卡80端口产生的包,记录在/tmp/http.cap
文件内。此时在192.168.186.161
进行访问,抓包没有问题.
本地回环抓包
当192.168.186.163
访问192.168.186.163
的时候,发现是没有包的。这是因为我们抓的是ens33
的包,但是自己访问自己是不会经过ens33网卡的,所以抓不到。
tcpdump -i lo port 80 -w /tmp/http1.cap
此时应该采取抓取回环的指令,如上所列。
声明host和port
tcpdump -w "a.cap" 'host 192.168.1.20 and udp port 80'