全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

tcpdump:截获与分析网络数据包的实用工具及命令实例 媒体软文营销推广和内容

简单来说,它是把数据包 dump 到某个地方,能依据使用者的定义截取网络上的数据包进行包分析的工具。可以完整截获网络中传送数据包的“头”以供分析。它支持针对网络层、协议、主机、网络或端口进行过滤,还能提供 and、or、not 等逻辑语句来去除无用信息。

实用命令实例

默认启动

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump</pre></p>

通常情况下,会直接启动并监视第一个网络接口上所有经过的数据包。

监视指定网络接口的数据包

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump -i eth1</pre></p>

如果没有指定网卡,那么默认只会对第一个网络接口进行监视,通常这个接口是 eth0,并且下面的例子都没有指定网络接口。

监视指定主机的数据包

打印所有进入或离开的数据包.

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump host sundown</pre></p>

可以指定 ip ,比如截获所有来自 210.27.48.1 的主机所接收的以及发出的所有数据包

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump host <span style="font-family:&#39;Courier New&#39;!important; color:#80080; line-height:1.5!important; font-size:12px!important">210.27</span>.<span style="font-family:&#39;Courier New&#39;!important; color:#80080; line-height:1.5!important; font-size:12px!important">48.1</span> </pre></p>

打印 与 hot 或者与 ace 之间通信的数据包

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump 对 helios 进行监听并且(对 hot 进行监听或者对 ace 进行监听)</pre></p>

截获主机 210.27.48.1 的通信,或者截获主机 210.27.48.2 的通信,或者截获主机 210.27.48.3 的通信

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump 捕获主机为 210.27.48.1 且(主机为 210.27.48.2 或 210.27.48.3)</pre></p>

打印 ace 与其他主机通信的 IP 数据包,不包括与某些特定主机之间的数据包。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">使用 tcpdump 捕获 IP 主机为 ace 且不是 helios 的数据包。</pre></p>

如果想要获取主机 210.27.48.1 与除主机 210.27.48.2 之外其他主机通信的 ip 包,就使用该命令:

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">使用 tcpdump 命令来捕获 IP 数据包,这些数据包的源地址或目的地址是 210.27.48.1 ,并且不是 210.27.48.2 。</pre></p>

截获主机发送的所有数据

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">使用 tcpdump 命令并指定网络接口为 eth0,同时指定源主机为 hostname</pre></p>

监视所有送到主机的数据包

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">使用 tcpdump 命令并指定接口为 eth0,目标主机为 hostname</pre></p>

监视指定主机和端口的数据包

要获取主机 210.27.48.1 接收或发出的包,可使用如下命令。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump tcp port <span style="font-family:&#39;Courier New&#39;!important; color:#80080; line-height:1.5!important; font-size:12px!important">23</span> host <span style="font-family:&#39;Courier New&#39;!important; color:#80080; line-height:1.5!important; font-size:12px!important">210.27</span>.<span style="font-family:&#39;Courier New&#39;!important; color:#80080; line-height:1.5!important; font-size:12px!important">48.1</span></pre></p>

对本机的udp 123端口进行监视123为ntp的服务端口

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump udp port 123 </pre></p>

监视指定网络的数据包

打印本地主机与网络上主机之间的通信数据包。其中,网络地址为 ucb-ether,此表达式最初的含义是打印网络地址为 ucb-ether 的所有数据包。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump net ucb-ether</pre></p>

打印通过网关 snup 的 ftp 数据包。需要注意的是,表达式被单引号括起来了,这样做可以防止 shell 对其中的括号进行错误解析。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump <span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">gateway snup 以及(port ftp 或者 ftp-data)</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span></pre></p>

打印所有源地址或目标地址是本地主机的IP数据包

如果本地网络是通过网关与另一个网络相连接的,那么另一个网络不能被视为本地网络。(注:此句翻译较为曲折,需要进行补充说明)在实际使用中,要将其真正替换成本地网络的名称。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">使用 tcpdump 来捕获包含 IP 协议且不属于本地网络的数据包。通过这种方式,可以对特定网络环境中的 IP 流量进行监控和分析,以便更好地了解网络活动和排查网络问题。它能够过滤出那些来自或去往外部网络的 IP 数据包,而不包括本地网络内部的通信流量。</pre></p>

监视指定协议的数据包

打印 TCP 会话中的开始数据包,并且数据包的源或目的不是本地网络上的主机。打印 TCP 会话中的结束数据包,并且数据包的源或目的不是本地网络上的主机。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump <span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">tcp 的 tcpflags 与 (tcp-syn 或 tcp-fin) 进行按位与运算的结果不为 0 ,并且没有 src ,同时 dst 属于 localnet 。</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span></pre></p>

打印的数据包需满足以下条件:源或目的端口为 80,网络层协议为 IPv4,且含有数据,同时不能是 SYN、FIN 以及 ACK-only 等不含数据的数据包。(ipv6 的版本的表达式可做练习)

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump <span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">tcp 端口 80 以及 (((ip 的第 2 位到第 2 位 减去 ((ip 的第 0 位与 0xf 进行按位与运算后的结果 )<<2)) - ((tcp[12]&0xf0)>>2)) != 0)</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span></pre></p>

可理解为,ip 的第 2 位到第 2 位表示整个 ip 数据包的长度,ip 的第 0 位与 0xf 进行与运算后再大于 4 表示 tcp 头的长度,此域的单位是 32bit,换算成比特数为 ((tcp 的第 12 位与 0xf0 进行与运算后再右移 4 位)乘以 2)。整个 ip 数据包的长度减去 ip 头的长度,再减去 (ip 的第 0 位与 0xf 进行与运算后乘以 2)不等于 0 表示:整个 ip 数据包的长度减去 ip 头的长度,再减去

tcp 头的长度不为 0 ,这意味着 ip 数据包中有数据。对于 ipv6 版本,只需考虑 ipv6 头中的“ ”与“tcp 头的长度”的差值,并且其中的表达方式“ip[]”需换成“ip6[]”。

打印长度超过 576 字节的数据包,且该数据包的网关地址是 snup 的 IP 地址

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump <span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">网关 snup 以及 ip 的第 2 位到第 2 位大于 576 。</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span></pre></p>

打印所有属于 IP 层的广播或多播数据包,并且这些数据包不是物理以太网层的广播或多播数据报。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump <span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">ether[0] 与 1 进行按位与运算的结果为 0 ,并且 ip[16] 大于或等于 224 。</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span></pre></p>

打印以下类型的 ICMP 数据包:不是“echo ”类型,也不是“echo reply”类型。例如,当需要打印所有非 ping 程序产生的数据包时,可以使用此表达式。

“echo”类型和“echo reply”类型的 ICMP 数据包一般是由 ping 程序生成的。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">tcpdump <span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">icmp 的 icmptype 不等于 icmp-echo ,并且 icmp 的 icmptype 也不等于 icmp-echoreply 。</span><span style="font-family:&#39;Courier New&#39;!important; line-height:1.5!important; font-size:12px!important">&#39;</span></pre></p>

  与

曾经有一款非常简单易用的抓包工具。然而,在 Linux 系统中,很难找到一个令人满意的图形化抓包工具。

还好有。我们能够通过以下完美组合来实现:在 Linux 系统中进行抓包操作,接着在相应的环境里对包进行分析。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">最后将抓取到的数据包保存到./target.cap 文件中。</pre></p>

tcp、ip、icmp、arp、rarp 这些选项以及 tcp、udp、icmp 等都需放置在第一个参数的位置,以用于过滤数据报的类型。

(2)-i eth1 : 只抓经过接口eth1的包

(3)-t : 不显示时间戳

抓取数据包时,原本默认抓取的长度是 68 字节。当加上-S 0 之后,就能够抓到完整的数据包。

(5)-c 100 : 只抓取100个数据包

不抓取目标端口为 22 的数据包。

数据包的源网络地址是 192.168.1.0 且子网掩码为 255.255.255.0

将其保存为 cap 文件,这样便于进行分析。

使用抓取HTTP包

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre style="margin-top:0px; font-family:&#39;Courier New&#39;!important; word-wrap:break-word; white-space:pre-wrap; margin-bottom:0px; font-size:12px!important">使用 tcpdump 进行抓包操作,设置参数为 -XvvennSs 0 并指定网络接口为 eth0 ,抓取的条件是 tcp 报文头部的第 20 字节到第 21 字节的值为 0x4745 或者为 0x4854 。</pre></p>

“GET”的前两个字母是“GE”,“HTTP”的前两个字母是“HT”。

截获的数据未被彻底解码,数据包内的大部分内容是以十六进制形式直接打印输出的。这显然不利于分析网络故障。通常的解决办法是,先使用带 -w 参数的方式截获数据并保存到文件中,接着再使用其他程序(如)进行解码分析。当然,也需要定义过滤规则,以防止捕获的数据包将整个硬盘填满。


# tcpdump:截获与分析网络数据包的实用工具及命令实例  # tcpdump  # 截获与分析网络数据包的实用工具及命令实例  # 数据包  # 第一个  # 到第  # 网络地址  # 不为  # 不等于  # 进行分析  # 的是  # 或多  # 源地址  # 也不  # 还能  # 是由  # 中有  # 只需  # 将其  # 它是  # 而不  # 这样做  # 如果没有  # 社交媒体营销推广的特点  # 宁陵网站建设报价公示  # seo建站推广  # 专业的网站建设兼职  # 企业seo排名有 名  # 海外营销推广哪里好点  # 符合抖音seo规则  # 济宁营销推广获客系统  # 最新外贸seo  # 成都营销推广哪家服务好  # 科技主题营销推广策略  # 校园网站建设计划  # seo引擎优化怎么念  # 黑河网站优化怎么做  # 如何使用seo打造  # 网络营销设计推广招聘  # 个人网站建设免费咨询  # 网站建设拓扑结构包括  # 英文网站百度能推广吗  # 陇南seo公司联系21火星 


相关文章: 大连网站推广,助力企业品牌崛起,抢占互联网市场先机,大连企业品牌崛起新引擎,互联网市场抢占攻略,大连企业品牌崛起,互联网市场抢占攻略,网站推广新引擎  分享10个很火的淘客联盟赚钱渠道,副业搞起来!  UCMS:引领智慧医疗新时代,打造数字化健康未来,淮安智能网站建设市价  联盟营销是什么意思?最早的联盟营销平台是哪个你知道吗?  引流转化日入1000+的引流思路方法分享!  SEO而且:打造高效网站流量增长的秘密武器,滁州抖音营销推广软件  国外广告联盟是什么?该怎么做?  SEO就业前景如何?打造数字时代的职业新风口,福永seo策略  引流se粉的绝密方法分享,不看绝对后悔!  app推广渠道有哪些?app快速引流获客你得这样做!  SEO立刻:快速提升网站排名,带你走在搜索引擎前沿,seo文章素材撰写  一键创作,助你轻松实现创意梦想,美国小众网站推广  SEO场景下的数字营销:如何通过精准优化提升网站流量,电器公司营销短信推广  福建百度推广返点一般是多少?解析营销背后的策略,辽宁pc网站建设价格  手机赚钱软件有哪些?想通过手机赚钱这10款软件千万不容错过!  免费爬虫-轻松抓取网络数据,打造个人化数据神器,铁岭网站推广哪家便宜  SEO网:让你的数字营销更加精准高效,开启网络引流新时代,seo望族希望  SEO做法-提升网站流量与排名的关键秘诀,私房米线怎么营销推广的  交友联盟收益怎么样?哪家靠谱?  SEO适合-提升网站排名的关键策略,网站优化后收录越来越少  没本钱怎么在手机一天赚500?这3个简单无门槛的方法轻松实现!  关键引擎-驱动未来创新的动力源泉,如何建设网站免费游戏  揭秘通过广告联盟年入百万所需要哪些条件!  QQ群里的这个日赚500的赚钱方法,你知道吗?  为什么“蜘蛛弛查询”能成为提升网站排名的秘密武器?,无锡荣巷街道网站建设  SEO爱站:提升网站排名,赢得流量的秘密武器,福州厦门网站建设优化推广  SEO新手必看:从零开始SEO优化的终极指南,淄川英文网站建设价格  通过qq引流推广广告联盟上的产品的13个小技巧!  SEO和品牌营销:如何通过搜索引擎优化打造品牌影响力,广东营销推广套餐怎么样  关键效果:如何通过聚焦核心要素,突破瓶颈,创造卓越成就,营销和定向计划怎么推广  百度经验怎么赚钱?利用百度经验赚钱的5个方法!  文章引流该怎么做?做好这6点流量源源不断!  如何快速提升app推广注册量,吸引大量粉丝关注?  SEO伪创:提升网站排名的危险策略与如何避免,城市营销推广  做网赚项目,为什么总觉得别人能赚的多但是自己赚的少?  新手如何通过在日付广告联盟上做推广赚钱?  SEO项目:如何通过精确优化提升企业网站排名与转化率,陕西网站建设方案书范文  app推广拉新之通过产品策略来实现用户拉新的四个方法!  SEO本站:提升网站流量与排名的秘密武器,店铺如何做营销推广工作  全网采集:让数据为您服务,助力决策的强大引擎,扬州网站推广价格  揭秘利用百度小程序挂广告赚钱的操作玩法,竟然还可以这样玩?  广告是什么意思?还能赚钱吗,前景如何?  足不出户在家赚钱的项目有哪些呢?推荐这7种!  SEO通过-如何通过SEO优化让你的业务在搜索引擎中脱颖而出,忠县网站seo优化排名  利用社交软件和引流脚本自动引流,推广交友类app赚钱干货分享!  伪免费时代:真正的“免费”背后隐藏的秘密,会计考试网站建设  【站长联盟】个人站长怎么通过网站赚钱?  APP有效拉新推广需要哪些问题?  3种非常火爆的APP推广方法以及实用小技巧分享!  黄江SEO网站优化公司,让您的品牌在网络世界中熠熠生辉,企业网站关键词推广 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。