tcpdump 可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
一、类型参数
主要包括:host, net, port
用法:
tcpdump -i eth0 host 192.168.1.105
tcpdump -i eth0 net 202.0.0.0
tcpdump -i eth0 port 23
#如果没有指定类型,缺省的类型是host
二、传输方向参数
主要包括:src, dst, dst or src, dst and src
用法:
tcpdump -i eth0 src 192.168.1.105tcpdump -i eth0 dst 61.135.169.105tcpdump -i eth0 dst net 61.135.169.0/24#如果没有指明方向关键字,则缺省是src or dst关键字
三、协议参数
主要包括:fddi, ip, arp, rarp, tcp, udp, icmp
用法:
tcpdump -i eth0 icmp#如果没有指定任何协议,则tcpdump将会监听所有协议的信息包
四、逻辑参数
主要包括:and, or, not
用法:
tcpdump -i eth0 icmp and src 61.135.169.105tcpdump -i eth0 icmp or host 192.168.1.105tcpdump -i eth0 not host 192.168.1.104
五、其它参数
主要包括:gateway, broadcast, less, greater
选项说明:
(1) tcp:ip icmp arp rarp 和 tcp、udp、icmp 这些选项等都要放到第一个参数的位置,用来过滤数据报的类型;
(2) -i eth1:只抓经过接口eth1的包;
(3) -t:不显示时间戳;
(4) -s 0:抓取数据包时默认抓取长度为68字节。加上-S 0 后可以抓到完整的数据包;
(5) -c 100:只抓取100个数据包;
(6) dst port ! 22:不抓取目标端口是22的数据包;
(7) src net 192.168.1.0/24:数据包的源网络地址为192.168.1.0/24;
(8) -w ./target.cap:保存成cap文件,方便用ethereal (即wireshark) 分析;
本文出自 “G加菲_Linux” 博客,请务必保留此出处http://fatgarfield.blog.51cto.com/3610383/1402839