tcpdump使用
tcpdump unix环境下的抓包工具
参数:
-i:指定网络接口
-w:将监听到的数据包保存指定到文件
-c:指定要抓取的数据包数量
-T:将数据包解析为指定的类型报文,如rpc(远程过程调用)、SNMP等
-n:以数字显示主机及端口
关键字:
类型关键字
host,net,port, 例如 host 210.27.48.2,指明210.27.48.2是一台主机,net 202.0.0.0 指明 202.0.0.0是一个网络地址,port 23指明端口号是23。如果没有指定类型,缺省的类型是host.
传输方向关键字
src , dst ,dst or src, dst and src,这些关键字指明了传输的方向。举例说明,src 210.27.48.2 ,指明ip包中源地址是210.27.48.2 , dst net202.0.0.0 指明目的网络地址是202.0.0.0 。如果没有指明方向关键字,则缺省是src or dst关键字。
协议关键字
主要包括fddi,ip,arp,rarp,tcp,udp等类型。Fddi指明是在FDDI(分布式光纤数据接口网络)上的特定的网络协议,实际上它是"ether"的别名,fddi和ether具有类似的源地址和目的地址,所以可以将fddi协议包当作ether的包进行处理和分析。其他的几个关键字就是指明了监听的包的协议内容。如果没有指定任何协议,则tcpdump将会监听所有协议的信息包。
其他关键字
gateway,broadcast,less,greater,还有三种逻辑运算,取非运算是 'not ' '! ',与运算是'and','&&';或运算 是'or','││';
关键字之间用amd
示例:
1、监听所有tcp9000端口的数据包
tcpdump tcp port 9000
2、监听从eth0通过目的地址是10.246.16.63并且端口是80的数据包
tcpdump -i eth0 dst host 10.246.16.63 and port 80