tcpdump简单使用

tcpdump命令是一款sniffer工具,它可以打印所有经过网络接口的数据包的头信息,也可以使用-w选项将数据包保存到文件中,结合wireshark等网络封包分析软件使用。

tcpdump常用参数:

  

 1     -n 不把主机的网络地址转换成名字;
 2   -v 输出更多的信息;(tcpdump的详细信息有三个等级:-v,-vv,-vvv)
 3   -c <数据包数目>  指定抓包的数量;例,tcpdump -c 3,抓取3个数据包后停止。
 4   -i <网络接口>   抓取指定网络接口的数据包,如果不指定tcpdump默认会选择最低编号的网络接口eth0;(在大多数linux中,any 这个接口用来监听所有接口的数据,例,tcpdump -i any)
 5   -w <文件>   将抓取的数据包写入文件;例,tcpdump -w ./tcpdump.pcap
 6   -r <文件>   读取文件内容;例,tcpdump -r ./tcpdump.pcap
 7 
 8   注意:“-w”保存的文件,直接用cat等工具查看时时乱码,必须用“-r”查看!还有,“-w”保存的文件最好保存为".pcap"文件,这样便于使用wireshark分析保存的数据包。   如果只是为了保存抓取的数据包,方便自己查看,请用 重定向 符号,例:tcpdump -c 3 > log.txt。
 9 
10   -s <数据包大小>   指定每个抓取的数据包的大小;
11   -A   封包的内容以ASCII显示,通常用来抓取网页封包;

tcpdump一些常用命令:

1   tcpdump host 10.0.01    只抓取源和目的IP为10.0.01的数据包;
2   tcpdump [src|dst] host 10.0.01
3   tcpdump -c 3 '(port 22 and port 80) host 10.0.01' 或 tcpdump -c 3 '(prot 22 && port 80) host 10.0.01'   抓取源和目的IP为10.0.01的主机的22端口和80端口的数据包;
4   tcpdump -c 3 host ! 10.0.01      不抓取源和目的IP 为10.0.01的数据包;
5   tcpdump -c 3 [udp|icmp|...]       抓取特定协议的数据包。

  

原文地址:https://www.cnblogs.com/Downtime/p/8519372.html