linux下tcpdump的使用简介

来源:互联网 发布:a站是什么软件 编辑:程序博客网 时间:2024/06/07 11:23
简介
用简单的话来定义tcpdump,就是:dump the traffic on a
network,根据使用者的定义对网络上的数据包进行截获的包分析工具。 tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支
持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。

监视指定网络接口的数据包
tcpdump -i eth0 监视指定主机的数据包
tcpdump host 192.168.1.100

监视指定主机和端口的数据包
如果想要获取主机192.168.1.100接收或发出的telnet包,使用如下命令
tcpdump tcp port 23 and host 192.168.1.100

【参数说明

(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)分析

抓取网卡eht0上主机地址为192.168.1.100的数据包,不限长度并保存为文件out.cap  
 tcpdump -s 0 host 192.168.1.100 -i eth0 -w ./out.cap
0 0