首页 > 代码库 > tcpdump实用笔记

tcpdump实用笔记

前言:
本文是关于tcpdump抓包的文章,是一篇对于本人而言比较实用轻便的文章,如您需要更详细的介绍,
以下链接的文章相比最适合您,而且网络知识要非常扎实才能理解透彻:

tcpdump详细介绍

 

简介:
用简单的话来定义tcpdump,就是:dump the traffic on a network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。

 

命令:tcpdump

  -c  在抓到指定数量的包后,tcpdump停止
  -e  每行的打印输出中将包括数据包的数据链路层头部信息
  -i  选择监听的网络接口,如eth0
  -n  不把网络地址转换为名字
  -nn 不进行端口名称的转换
  -q  仅列出较为简短的数据包信息,每一行的内容比较精简。
  -w  直接将分组写入到文件中,而不是不分析并打印出来
  -v  输出一个稍微详细的信息,例如在ip包中可以包括ttl和服务类型的信息。 
  -vv 输出详细的报文信息。
  -r  从-w选项产生的文件中读取包,文件可以是标准输入- 
  -w  直接将分组写入文件中,而不是不分析并打印出来。可以输出到标准输入-
  -s  设置tcpdump的数据包抓取长度,设置为0 意味着让tcpdump自动选择合适的长度来抓取数据包

关键字:

 1.类型关键字 host,net,port ,默认是host
 2.传输方向关键字 src,dst,默认是src or dst关键字
 3.协议关键字 fddi,ip,arp,rarp,tcp,udp,icmp
 4.逻辑关键字 and or not 
 5.其他关键字 gateway broadcast less greater

 

应用实例:

抓取主机192.168.0.1接收或发送的80端口的包

tcpdump -nn -i eth0 tcp and host 192.168.0.1 and port 80

以合适的长度抓取除了22端口的数据包,并把它保存到1.cap文件中

tcpdump -nn -vs0 tcp and port not 22 -c 100 -w 1.cap

截获主机210.27.48.1 和主机210.27.48.2 或210.27.48.3的通信

tcpdump host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 \) 

 

tcpdump实用笔记