Linux下Tcpdump抓包工具的使用详解

    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.105
  tcpdump -i eth0 dst 61.135.169.105
  tcpdump -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.105
  tcpdump -i eth0 icmp or host 192.168.1.105
  tcpdump -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)分析;

(9)-v v 输出详细的报文信息;

(10)-nn 直接以 IP 及 Port Number 显示,而非主机名与服务名称;

 

 

 

你可能感兴趣的:(linux,tcpdump,命令,抓包工具,使用详解)