志在指尖
用双手敲打未来

tcpdump(抓包分析命令详解)

tcpdump

TCPDump可以完全拦截网络上传输的数据包以提供分析。它支持对网络层,协议,主机,网络或端口的过滤,并提供逻辑语句(例如和),或不帮助您删除无用的信息。tcpdump

tcpdump抓包分析命令详解

tcpdump是一个用于截取网络分组,并输出分组内容的东西。tcpdump凭仗强壮的功用和灵敏的截取战略,使其成为类UNIX体系下用于网络剖析和问题排查的首选东西。
tcpdump供给了源代码,公开了接口,因而具有很强的可扩展性,对于网络保护和入侵者都是十分有用的东西。tcpdump存在于基本的Linux体系中,由于它需要将网络界面设置为混杂形式,普通用户不能正常执行,但具有root权限的用户能够直接执行它来获取网络上的信息。因而体系中存在网络剖析东西主要不是对本机安全的要挟,而是对网络上的其他计算机的安全存在要挟。
一、概述
顾名思义,tcpdump能够将网络中传送的数据包的“头”完全截获下来供给剖析。它支撑针对网络层、协议、主机、网络或端口的过滤,并供给and、or、not等逻辑句子来帮助你去掉无用的信息。
#tcpdump-vv
tcpdump:listeningoneth0,link-typeEN10MB(Ethernet),capturesize96bytes
11:53:21.444591IP(tos0x10,ttl64,id19324,offset0,flags[DF],proto6,length:92)asptest.localdomain.ssh>192.168.228.244.1858:P3962132600:3962132652(52)ack2726525936win1266
asptest.localdomain.1077>192.168.228.153.domain:[badudpcksum166e!]325+PTR?244.228.168.192.in-addr.arpa.(46)
11:53:21.446929IP(tos0x0,ttl64,id42911,offset0,flags[DF],proto17,length:151)192.168.228.153.domain>asptest.localdomain.1077:325NXDomainq:PTR?244.228.168.192.in-addr.arpa.0/1/0ns:168.192.in-addr.arpa.(123)
11:53:21.447408IP(tos0x10,ttl64,id19328,offset0,flags[DF],proto6,length:172)asptest.localdomain.ssh>192.168.228.244.1858:P168:300(132)ack1win1266
347packetscaptured
1474packetsreceivedbyfilter
745packetsdroppedbykernel
不带参数的tcpdump会收集网络中所有的信息包头,数据量巨大,必须过滤。
二、选项介绍
引用
-A以ASCII格局打印出所有分组,并将链路层的头最小化。
-c在收到指定的数量的分组后,tcpdump就会停止。
-C在将一个原始分组写入文件之前,检查文件当时的巨细是否超过了参数file_size中指定的巨细。假如超过了指定巨细,则关闭当时文件,然后在打开一个新的文件。参数file_size的单位是兆字节(是1,000,000字节,而不是1,048,576字节)。
-d将匹配信息包的代码以人们能够了解的汇编格局给出。
-dd将匹配信息包的代码以c语言程序段的格局给出。
-ddd将匹配信息包的代码以十进制的方式给出。
-D打印出体系中所有能够用tcpdump截包的网络接口。tcpdump2
-e在输出行打印出数据链路层的头部信息。
-E用spi@ipaddralgo:secret解密那些以addr作为地址,并且包含了安全参数索引值spi的IPsecESP分组。
-f将外部的Internet地址以数字的方式打印出来。
-F从指定的文件中读取表达式,忽略命令行中给出的表达式。
-i指定监听的网络接口。
-l使标准输出变为缓冲行方式,能够把数据导出到文件。
-L列出网络接口的已知数据链路。
-m从文件module中导入SMIMIB模块界说。该参数能够被使用多次,以导入多个MIB模块。
-M假如tcp报文中存在TCP-MD5选项,则需要用secret作为同享的验证码用于验证TCP-MD5选选项摘要(概况可参考RFC2385)。
-b在数据-链路层上选择协议,包含ip、arp、rarp、ipx都是这一层的。
-n不把网络地址转换成名字。
-nn不进行端口名称的转换。
-N不输出主机名中的域名部分。例如,‘nic.ddn.mil‘只输出’nic‘。
-t在输出的每一行不打印时刻戳。
-O不运行分组分组匹配(packet-matching)代码优化程序。
-P不将网络接口设置成混杂形式。
-q快速输出。只输出较少的协议信息。
-r从指定的文件中读取包(这些包一般经过-w选项发生)。
-S将tcp的序列号以绝对值方式输出,而不是相对值。
-s从每个分组中读取最开始的snaplen个字节,而不是默许的68个字节。
-T将监听到的包直接解释为指定的类型的报文,常见的类型有rpc远程过程调用)和snmp(简单网络管理协议;)。
-t不在每一行中输出时刻戳。
-tt在每一行中输出非格局化的时刻戳。
-ttt输出本行和前面一行之间的时刻差。
-tttt在每一行中输出由date处理的默许格局的时刻戳。
-u输出未解码的NFS句柄。
-v输出一个稍微具体的信息,例如在ip包中能够包含ttl和服务类型的信息。
-vv输出具体的报文信息。
-w直接将分组写入文件中,而不是不剖析并打印出来。

未经允许不得转载:IT技术网站 » tcpdump(抓包分析命令详解)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载