tcpdump命令参数解释

Usage: tcpdump [-aAbdDefhHIJKlLnNOpqRStuUvxX#] [ -B size ] [ -c count ]
                [ -C file_size ] [ -E algo:secret ] [ -F file ] [ -G seconds ]
                [ -i interface ] [ -j tstamptype ] [ -M secret ] [ --number ]
                [ -Q in|out|inout ]
                [ -r file ] [ -s snaplen ] [ -T type ] [ --version ] [ -V file ]

                [ -w file ] [ -W filecount ] [ -y datalinktype ] [ -z command ]

                [ -Z user ] [ expression ]

这是-h出来的所有参数,下面解释一下常用的几个吧, 谷歌翻译自http://www.tcpdump.org/manpages/tcpdump.1.html

-a:    将网络地址和广播地址转变成名字

-A:    以ASCII码的方式显示每一个数据包(不包括链路层头部信息), 方便在抓取网页时查看数据

-b:     以ASDOT表示法而不是ASPLAIN表示法在BGP数据包中打印AS号

-d:     将已编译的数据包匹配代码以人类可读形式转储到标准输出并停止。

-D:     等同于--list-interfaces, 打印系统上可用的网络接口列表以及tcpdump可以捕获数据包的列表。对于每个网络接口,都会打印一个编号和一个接口名称,可能后跟接口的文本描述。可以将接口名称或编号提供给-i标志以指定要捕获的接口。(对于linux系统可以直接用ifconfig -a)

-e:    打印链路层的头部, 例如Ethernet和IEEE 802.11协议中的MAC地址

-h:   

     --help

帮助
    --version
打印tcpdump 和libpcap的版本号

-I:          
    --immediate-mode

在immediate mode下捕包. 这个模式下, 数据包一到达就会被送给tcpdump. 当在terminal中打印包而不是在文件或者管道中时默认开启此模式.

    --monitor-mode 

使接口处于monitor mode中. 只支持某些操作系统上的IEEE 802.11 Wi-Fi接口. 可以通过iwconfig eth0 mode managed改回来.

-n:     不要将地址(即主机地址,端口号等)转换为名称

-N:    不要打印主机的FQDN(fully qualified domain name)。例如tcpdump将打印“nic”而不是“nic.ddn.mil”

-O:

-p:

-q:      quick output, 输出更简洁的信息

-R:

-S:

-t:      不打印时间

-tt:     打印时间戳(自 January 1, 1970, 00:00:00, UTC以来的秒数)

-ttt:     打印当前和上一个包之间的时间差(单位是微秒)

-tttt:    打印更详细的时间戳(有日期)

-ttttt:    打印当前和第一个包之间的时间差(单位是微秒)

-u:

-U:

-v:    解析和打印时,产生(稍微多一些)详细的输出。例如,打印IP包中的生存时间,标识,总长度和选项。还启用其他数据包完整性检查,例如验证IP和ICMP头校验和。 使用-w选项写入文件时,每秒报告一次捕获的数据包数量。

-vv:    更详细

-vvv:    更更详细

-x:    解析和打印时,除了打印每个数据包的标题外,还要以十六进制格式打印每个数据包的数据(减去其链接层头部)。整个数据包或snaplen字节中的较小者将被打印。请注意,这是整个链路层数据包,因此对于填充的链接层(例如以太网),当高层数据包比所需的填充长度短时,填充字节也将被打印。

-xx:    解析和打印时,除了打印每个数据包的标题外,还要以十六进制格式打印每个数据包的数据,包括其链接层头部。

-X:    解析和打印时,除了打印每个数据包的标题外,还要以十六进制和ASCII格式打印每个数据包的数据(减去链接层头部)。这对分析新协议非常方便。

-XX:    解析和打印时,除了打印每个数据包的标题外,还要以十六进制和ASCII格式打印每个数据包的数据,包括其链接层头部。

-#:     在每个包的开头加上序号

 [ -B size ] 将操作系统捕获缓冲区大小设置为buffer_size,单位为KiB(1024字节)。

[ -c count ] 在捕获指定数量的数据包之后退出

[ -C file_size ] 在将原始数据包写入保存文件之前,检查该文件当前是否大于file_size,如果是,关闭当前保存文件并打开一个新文件。第一个保存文件后的保存文件将具有用-w标志指定的名称,后面跟着一个数字,从1开始并继续向上。 file_size的单位是1,000,000字节(不是1,048,576字节)

[ -E algo:secret ] 

[ -F file ] 使用文件作为过滤器表达式的输入. 在命令行上给出的附加表达式将被忽略.

[ -G seconds ] 

[ -i interface ] 监听指定的端口

[ -j tstamptype ] 

[ -M secret ]

[ -Q in|out|inout ] 选择只捕获某个方向的包

[ -r file ] 从文件中读取

[ -s snaplen ] Snarf从每个数据包中取出数据字节,而不是默认的262144字节。在输出中用``[| proto]''指示由于快照有限而截断的数据包,其中proto是发生截断的协议级别的名称。 请注意,拍摄较大的快照既增加了处理数据包所需的时间,也有效地减少了数据包缓冲量。这可能会导致数据包丢失。还要注意,拍摄较小的快照将丢弃来自传输层以上协议的数据,这会丢失可能很重要的信息。例如,NFS和AFS请求和回复非常大,如果选择了过短的快照长度,则很多细节将不可用。 如果您需要将快照大小降至默认值以下,则应将snaplen限制为捕获您感兴趣的协议信息的最小数目。将snaplen设置为0会将其设置为默认值262144,以便与最近较旧的tcpdump的版本适配。

[ -T type ] 由“expression”选择的强制数据包被解释为指定的类型。

[ -V file ] 从文件中读取文件列表, 如果文件是'-'的话则使用标准输入

[ -w file ] 将捕获到的数据包直接输出到文件, 如果文件是'-'的话则使用标准输入

[ -W filecount ] 输出的最大文件数, 当超过时将会覆盖之前的

[ -y datalinktype ] 

[ -z postrotate-command ] 

[ -Z user ] 

[ expression ] 过滤表达式, 格式参见http://www.tcpdump.org/manpages/pcap-filter.7.html




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值