肝了三天,万字长文教你玩转 tcpdump,从此抓包不用愁.docxVIP

肝了三天,万字长文教你玩转 tcpdump,从此抓包不用愁.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
肝了三天,万字长文教你玩转 tcpdump,从今抓包不用愁 大家都晓得,网络上的流量、数据包,格外的多,因而要想抓到我们所需要的数据包,就需要我们定义一个精准的过滤器,把这些目标数据包,从巨大的数据包网络中抓取出来。 所以学习抓包工具,其实就是学习如何定义过滤器的过程。 而在 tcpdump 的世界里,过滤器的实现,都是通过一个又一个的参数组合起来,一个参数不够精准,那就再加一个,直到我们能过滤掉无用的数据包,只留下我们感爱好的数据包。 tcpdump 的参数格外的多,初学者在没有把握 tcpdump 时,会对这个命令的众多参数产生很多的怀疑。 就比如下面这个命令,我们要通过 host 参数指定 host ip 进行过滤 $?tcpdump?host?00 主程序 + 参数名+ 参数值 ?这样的组合才是我们正常认知里面命令行该有的样子。 可 tcpdump 却不走寻常路,我们竟然还可以在 host 前再加一个限定词,来缩小过滤的范围? $?tcpdump?src?host?00 从字面上理解,的确很简约理解,但是这不符合编写命令行程序的正常规律,导致我们会有所疑虑: 除了 src ,dst,可还有其它可以用的限定词? src,host 应当如何理解它们,叫参数名?不合适,由于 src 明显不合适。 假如你在网上看到有关 tcpdump 的博客、教程,无一不是给你一个参数组合,告知你这是实现了怎样的一个过滤器?这样的教学方式,很简约让你依靠别人的文章来使用 tcpdump,而不能将 tcpdump 这样神器消化,达到机警应用,机警搭配过滤器的效果。 上面加了 src 本身就颠覆了我们的认知,你可晓得在 src 之前还可以加更多的条件,比如 tcp, udp, icmp 等词,在你之前的基础上再过滤一层。 $?tcpdump?tcp?src?host?00 这种参数的不确定性,让大多数人对 tcpdump 的学习一直无法得其精髓。 因而,在学习 tcpdump 之前,我觉得有必要要先让你晓得:tcpdump 的参数是如何组成的?这格外重要。 为此,我画了一张图,便利你直观的理解 tcpdump 的各种参数: option 可选参数:将在后边逐一解释,对应本文?第四节:可选参数解析 proto 类过滤器:依据协议进行过滤,可识别的关键词有:upd, udp, icmp, ip, ip6, arp, rarp,ether,wlan, fddi, tr, decnet type 类过滤器:可识别的关键词有:host, net, port, portrange,这些词后边需要再接参数。 direction 类过滤器:依据数据流向进行过滤,可识别的关键字有:src, dst,同时你可以使用规律运算符进行组合,比如 src or dst proto、type、direction 这三类过滤器的内容比较简约,也最常用,因而我将其放在最前面,也就是 第三节:常规过滤规章一起引见。 而 option 可选的参数格外多,有的甚至也不经常用到,因而我将其放到后面一点,也就是 第四节:可选参数解析 当你看完前面六节,你对 tcpdump 的生疏会上了一个台阶,至少能够满足你 80% 的使用需求。 你肯定会问了,还有 20% 呢? 其实 tcpdump 还有一些过滤关键词,它不符合以上四种过滤规章,可能需要你单独记忆。关于这部分我会在? 第六节:特殊过滤规章? 里进行引见。 2. 理解 tcpdump 的输出 2.1 输出内容结构 tcpdump 输出的内容虽然多,却很规律。 这里以我任凭抓取的一个 tcp 包为例来看一下 21:26:49.013621?IP?.15605??.5920:?Flags?[P.],?seq?49:97,?ack?106048,?win?4723,?length?48 从上面的输出来看,可以总结出: 第一列:时分秒毫秒 21:26:49.013621 其次列:网络协议 IP 第三列:发送方的ip地址+端口号,其中是 ip,而15605 是端口号 第四列:箭头 , 表示数据流向 第五列:接收方的ip地址+端口号,其中 是 ip,而5920 是端口号 第六列:冒号 第七列:数据包内容,包括Flags 标识符,seq 号,ack 号,win 窗口,数据长度 length,其中 [P.] 表示 PUSH 标志位为 1,更多标识符见下面 2.2 Flags 标识符 使用 tcpdump 抓包后,会遇到的 TCP 报文 Flags,有以下几种: [S] : SYN(开头连接) [P] : PSH(推送数据) [F] : FIN (结束连接) [R] : RST(重置连接) [.] : 没有 Flag,由于除了 SYN 包外全部的数据包

文档评论(0)

duanbingbing + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档