深度剖析WinPcap之(十)——数据包的内核过滤(7)

本文转自http://eslxf.blog.51cto.com/918801/241953

 

TcpdumpWinDump

Tcpdump软件最初是由美国加里福利亚大学伯克利分校洛仑兹实验室的Vin JacobsonCraig LeresSteve McCanne共同开发完成,它可以收集网上的IP报文,井用来分析网络可能存在的问题。现在,Tcpdump已被移植到几乎所有的UNIX系统上,如:HP-UXSCO UNIXSunOSMachLinuxFreeBSD等。更为重要的是,Tcpdump是一个开源软件,可以在Tcpdump的基础上进行改进,诸如添加辅助分析的功能,增强网络分析能力,也可对其离线网络流量文件做进一步分析。
Tcpdump使用语法格式如下:
tcpdump[ -AdDeflLnNOpqRStuUvxX ] [ -c count ]
        [ -C file_size ] [ -F file ]
        [ -i interface ] [ -m module ] [ -M secret ]
        [ -r file ] [ -s snaplen ] [ -T type ] [ -w file ]
        [ -W filecount ][ -E spi@ipaddr algo:secret,...  ]
        [ -y datalinktype ] [ -Z user ]
        [ expression ]
下面列出此处所关心的参数与具体含义,并针对过滤条件ip给出各自对应的输出码:
-d参数 把高层容易理解的过滤字符串编译为代码,以标准格式输出。执行tcpdump -d ip命令,将获得如下输出:
(000) ldh      [12]
(001) jeq      #0x800           jt 2    jf 3
(002) ret      #96
(003) ret      #0
-dd参数 把高层容易理解的过滤字符串编译为代码,以C程序段格式输出。如执行tcpdump -dd ip命令,将获得下面的输出:
{ 0x28, 0, 0, 0x0000000c },
{ 0x15, 0, 1, 0x00000800 },
{ 0x6, 0, 0, 0x00000060 },
{ 0x6, 0, 0, 0x00000000 },
-ddd参数 把高层容易理解的过滤字符串编译成代码,以十进制数值格式输出。如执行tcpdump -ddd ip命令,将获得下面的输出(第一行为输出的指令个数)
4
40 0 0 12
21 0 1 2048
6 0 0 96
6 0 0 0
-O参数 对编译的代码不进行优化。如执行tcpdump -Od ip命令,将获得下面的输出(该过滤条件过于简单,看不出优化与不优化的区别,进一步参见后续章节)
(000) ldh      [12]
(001) jeq      #0x800           jt 2    jf 3
(002) ret      #96
(003) ret      #0
WinDumpWindows实现了Tcpdump的功能,其命令使用格式与功能与Tcpdump一致。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值