tcpdump

tcpdump

描述

转储网络流量(dump traffic on a network)。tcpdump打印输出指定网络接口上,匹配指定布尔表达式(过滤器)的数据包。

tcpdump 能截获指定网络接口上所有你感兴趣的包,不足之处是tcpdump对截获的数据并没有进行彻底解码,数据包内的大部分内容是使用十六进制的形式直接打印输出的。显然这不利于分析网络故障,通常的解决办法是先使用带-w参数的tcpdump 截获数据并保存到文件中,然后再使用其他程序(如Wireshark)进行解码分析。当然也应该定义过滤规则,以避免捕获的数据包填满整个硬盘。

 

输出与输入重定向

通过使用 -w 标志可以把数据包保存到文件,以供稍后分析。

通过时用 -r 标志可以从一个保存的包文件中,而不是一个网络接口读取数据包。

使用格式:tcpdump [ -r file] [ -w file]

tcpdump表达式(适用于wireshark)

表达式实际上就是tcpdump的过滤器。表达式用于决定哪些数据包将被打印。如果没有指定表达式,就会答应输出网络接口截获的所有的包。

表达式由一个或多个表达元组成。 表达元可理解为组成表达式的基本元素。一个表达元通常由一个或多个关键字后跟一个参数组成。有三种不同类型的关键字:

第一种类型是关于类型(type)的关键字,主要包括host, net, port, portrange。例如:host 192.168.1.210,指明192.168.1.210是一台主机。 net 192.168.1.0,指明192.168.1.0是一个网络。port 53指明53是一个端口。portrange 5000-5005指定端口范围为5000至5005。 缺省类型是host。

第二种类型是关于方向(dir)的关键字,主要包括src, dst, dst or src, dst and src,这些关键字指明了传输的方向。 例如:dst host 192.168.1.210指明ip包中目标地址是192.168.1.210。缺省是dst or src。

第三种是协议(proto)的关键字,主要包括fddi, ether, tr, wlan, ip, ip6, arp, rarp, decnet, tcp, udp, http等。ether, fddi, tr, 具体含义未知, 需补充。 可理解为物理以太网传输协议,光纤分布数据网传输协议,以及用于路由跟踪的协议。  wlan, 无线局域网协议;ip,ip6 即通常的TCP/IP协议栈中所使用的ipv4以及ipv6网络层协议;arp, rarp 即地址解析协议,反向地址解析协议;decnet, Digital Equipment Corporation开发的, 最早用于PDP-11 机器互联的网络协议; tcp and udp, 即通常TCP/IP协议栈中的两个传输层协议。如果没有指定任何协议,则tcpdump将会监听所有协议的包。例如:arp net 128.3:发往或来自128.3网络的arp协议数据包。

除了上述三种类型,其它重要的关键字还包括:gateway, broadcast, less, greater。less, greater用于指定数据包的长度。

表达元之间可以通过andor以及not进行连接, 也可以使用相应的&&||!。从而可以组成比较复杂的条件表达式。例如, tcpdump -i eth0 ip and host www.baidu.com:截

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值