tcpdump命令详解

来源:互联网 发布:vmware上安装ubuntu 编辑:程序博客网 时间:2024/05/19 06:19

tcpdump可以将网络中传送的数据包的“头”完全截获下来提供分析。它支持针对网络层、协议、主机、网络或端口的过滤,并提供andornot等逻辑语句来帮助你去掉无用的信息。
数据过滤
不带任何参数的TcpDump将搜索系统中所有的网络接口,并显示它截获的所有数据,这些数据对我们不一定全都需要,而且数据太多不利于分析。所以,我们应当先想好需要哪些数据,TcpDump提供以下参数供我们选择数据

 

参数

描述

实例

-i <interface>

只过滤指定的接口上通过的数据

tcpdump –i eth0

-i <vlan>

只过滤指定的vlan上通过的数据

tcpdump –i external

-e

显示MAC地址,打印链路层信息

tcpdump -e

-n

不进行IP地址到主机名的转换

tcpdump –n

-nn

保留输出中的端口和协议使用数字格式

 

-c 100

抓取满足条件的100个包再结束。否则会一直抓下去

 

-X

Display packets in hex and decodes inASCII

tcpdump –x

可以看到一些访问的请求信息

-vv

打印详细信息

 

-s <value>

显示指定的字节数,默认是76字节

-s0表示不对包的尺寸进行裁剪,保持原来大小

tcpdump –s 200

-w

将输出内容保存在指定的二进制文件中。-w参数强制按照cap格式输出到文件

tcpdump –w test.pcap

-r

查看(read)指定的二进制文件

tcpdump –r test.pcap

> <filename>

将输出内容保存在指定文件中,非二进制文件

tcpdump > test.pcap

host <ip>

过滤指定的主机,只显示过滤的内容,包括访问与应答

tcpdump host 192.168.10.1

<protocol>

过滤指定的协议

ICMPUDPARPetc.

tcpdump –i exp1 udp

port <port>

过滤指定的端口

tcpdump –i exp1 80

条件1 and条件2

 

tcpdump host 192.168.10.1 and udp

条件1 or 条件2

 

tcpdump host 192.168.10.1 or udp

条件1 not条件2

所有满足指定条件1并且除条件2的数据包

tcpdump host 192.168.10.1 not udp

src <ip>

过滤指定的目标地址,只显示源目标地址为ip的包,不显示目标地址为ip的包

tcpdump src 192.168.10.1 or tcp

dst <ip>

过滤指定的目标地址,只显示目标地址为ip的包,不显示源地址为ip的包