• 关于 网络trace 的搜索结果

问题

求教-neutron代理报错的分析?报错

爱吃鱼的程序员 2020-06-14 20:28:59 0 浏览量 回答数 1

问题

影响移动应用网络性能的三大因素

sunny夏筱 2019-12-01 21:37:12 5861 浏览量 回答数 7

回答

如果我没记错的话,info是log4j的一个level,log4j有6个level,表示不同的严重程度,从低到高好象是TRACE,DEBUG,INFO,WARN,ERROR,FATAL “答案来源于网络,供您参考” 希望以上信息可以帮到您!

牧明 2019-12-02 02:16:23 0 浏览量 回答数 0

新手开公司,教你化繁为简

开公司到底有没有那么难,传统的手续繁琐,线下跑断腿,场地搞不定等问题,通过阿里云”云上公司注册“解决你的烦恼。

回答

您好!您可以在云监控中查看网络流量,以及CUP,内存等相关信息, 云监控: https://cloudmonitor.console.aliyun.com/index.htm?spm=5176.2020520101.0.0.4a964df50xQLAc&custom_trace=ecs_console#/cloud/ecs/cn-shenzhen/i-wz97toj4996mwjgbfpyt/chart/grand/InternetInRate___IntranetInRate

alvin.zhu 2019-12-02 01:04:26 0 浏览量 回答数 0

回答

现在的工具满天飞。 。。选择虽然多了。 但对于刚入门的简直是折磨。###### 可以使用  http://bitnami.org/stack/redmine#nativeInstaller  这个一键安装工具,svn,ruby,apache,mysql什么都帮你搞定。群英汇的哥们还整理了redmine中文文档。如果在windows下我选择VisualSVN,而不是自动安装的svn。 VisualSVN + bitnami_Redmind =很快装完,甚至都不用知道ruby。###### 开源力量( opensourceforce.org ) 曾经也考虑过redmine,而且做为一个国外开源产品,中文支持也不错,我们用过一段时间,做项目管理基本是够的。 但redmine 的团队交流 功能弱了一些。   我们最后还是放弃了redmine,  ,现在的网站融合了项目管理,博客,wiki, 并且加进一些 SNS的功能以及微博的功能。  不过sns的功能仍然有待加强。   ######这个不错 https://github.com/sciyoshi/redmine-slack###### 有没有更轻量级的?适合10个人左右的小团队使用的###### 我执行rake db:migrate RAILS_ENV="production"出现下面的错误,这是什么原因? rake aborted!Could not find RubyGem rack (~> 1.0.1)(See full trace by running task with --trace)###### 引用来自#3楼“倪森倪”的帖子 可以使用  http://bitnami.org/stack/redmine#nativeInstaller  这个一键安装工具,svn,ruby,apache,mysql什么都帮你搞定。群英汇的哥们还整理了redmine中文文档。如果在windows下我选择VisualSVN,而不是自动安装的svn。 VisualSVN + bitnami_Redmind =很快装完,甚至都不用知道ruby。  这个还是不行啊 下载了 安装了 但是还是进不去啊###### 。。。红薯哥第一句话括弧部分的内容。。看的我很雷~~~~~######http://bitnami.com/stack/redmine  用这个吧 一键安装######嗯,还是这个比较省事,我在两台笔记本上折腾了一天后放弃手动安装了,辛苦半天装上最新的的版本,居然提示我需要用某个更低的版本的rails,崩溃。###### 这里也有安装方法:  http://www.redmine.org/projects/redmine/wiki/RedmineInstall gem install bundler Then you can install all the gems required by Redmine using the following command: bundle install --without development test######thanks!###### 引用来自“GanZhijie”的评论 我执行rake db:migrate RAILS_ENV="production"出现下面的错误,这是什么原因? rake aborted!Could not find RubyGem rack (~> 1.0.1)(See full trace by running task with --trace) 看来版本太新,不适用了 我也报错: rake aborted! no such file to load -- bundler/setup   ######回复 @sevk : 非常感谢:)######回复 @panhan : 网络问题,看这里 : http://ruby.taobao.org######回复 @sevk : 谢谢,我执行后,出现错误提示 Updating RubyGems... ERROR: While executing gem ... (Gem::RemoteSourceException) HTTP Response 301 fetching http://gems.rubyforge.org/yaml 不知道是何缘故######gem update --system gem install rack bundler

kun坤 2020-06-06 14:09:36 0 浏览量 回答数 0

问题

ECS Windows抓包工具(Wireshark, Network Monitor)的使用

boxti 2019-12-01 22:10:16 2141 浏览量 回答数 0

回答

对于处理Windows相关的网络问题,在必要的情况下,抓取网络包分析是最有效的方法。本文给出Windows下抓取网络包的多种方法,但是如何使用Network Monitor,Wireshark来分析网络包,不做进一步描述。 方法1:Network Monitor Network Monitor 3.4 是微软提供的网络抓包分析工具,该工具安装后无需重启。 请参考如下步骤收集网络包: 步骤1: 从微软网站上下载Network Monitor(确认选取目标机器对应平台的安装包) http://www.microsoft.com/downloads/en/details.aspx?spm=a2c4g.11186623.2.13.3e5d4c07C13UVJ&FamilyID=983b941d-06cb-4658-b7f6-3088333d062f&displaylang=en 步骤2: 安装Network Monitor(使用默认选项即可); 步骤3: 右键单击Network Monitor图标,以管理员身份运行; 步骤4: 使用"start pages"页面上"Select Networks"选择对应的网络连接; 步骤5: 点击 "New Capture" ,然后点击"Capture"-> "Start"按钮进行抓包,并"重现问题"; 步骤6: 重现问题后,在Network Monitor上点击 "Capture"->stop” ,点击"File"->"Save as",保存为Cap包,而后发送给售后支持分析。 方法2: Wireshark Wireshark是开源的抓包工具,有强大的各类插件和统计分析功能。 请参考如下步骤收集网络包: 步骤1: 从如下网站上下载Wireshark,根据平台X86,X64选择合适安装包,以默认选项安装 http://www.wireshark.org/download.html?spm=a2c4g.11186623.2.14.3e5d4c07C13UVJ 步骤2: 打开Wireshark,在菜单中选择Capture->Interfaces, 根据实际情况勾选需要抓包的网卡后点击Start 步骤3: Wireshark开始抓包,实时显示抓包情况,请复现问题 步骤4: 问题复现后,请点击Capture->Stop,停止抓包。 步骤5: 点击File->Save as, 保存为pcapng格式后进一步分析。 关于Wireshark其它版本的一些使用,也可以参考知识点 ECS Windows系统抓包工具Wireshark的安装使用 方法3:Windows Netsh命令 在Windows 2008 R2以后,Windows支持使用netsh命令抓取网络包,如果客户不希望安装任何工具,或者Network Monitor,Wireshark抓包存在问题,可以考虑使用该方法。 步骤1: 使用管理员打开CMD, 运行 netsh trace start capture=yes scenario=NetConnection tracefile=C:\net.etl maxSize=200M 注:该命令限定抓包大小200M,循环覆盖,存储抓包信息到C:\net.etl 中。请注意如果多次运行该命令,请务必删除之前生成的C:\net.etl文件。 步骤2: 复现问题,在问题复现后,CMD中运行 netsh trace stop 注:该命令耗时可能较久,如果服务器繁忙,可能达到15分钟左右。 步骤3: 将产生的C:\net.etl, C:\net.cab文件发给售后支持人员分析

KB小秘书 2019-12-02 02:07:31 0 浏览量 回答数 0

问题

oss下载经常出现 远程主机强迫关闭了一个现有的连接

自命不凡 2019-12-01 21:21:22 1667 浏览量 回答数 0

问题

手机移动端网络路由跟踪探测方式有哪些

boxti 2019-12-01 21:51:03 1260 浏览量 回答数 0

回答

在使用移动网络访问服务器中的服务时,如果网络存在异常,可以通过以下方式进行定位: 获取手机移动端的本地公网IP地址。在手机端打开浏览器,访问网站 http://ip.cn,在返回的结果中即可看到您手机的公网IP地址。  获取手机移动端到用户访问的网站的路由跟踪结果。根据移动端的系统不同, iPhone iOS 或  Android,获取方式也不同。  iPhone iOS 路由跟踪探测 1. 首先安装软件 Network Ping Lite,可以通过 App Store下载。 2. 打开 Network Ping Lite 软件后出现下面的界面:         3. 选择 Traceroute 即进入路由探测界面:        4. 在地址栏里输入所要访问的云产品的地址,然后点击 Start 即可开始探测,结束后截图如下:       Android 系统路由跟踪探测 1. 首先安装软件 Traceroute,可以通过各种手机助手或应用市场等来安装。 2. 配置Traceroute:       a) 打开 Traceroute 软件后出现下面的界面:                    b) 然后按手机下方右侧的三横键,也就是手机的菜单键,出现下图界面后选择 Options。                      c) 选择后会出现如下界面:                  d) 然后取消 Enable DNS 的勾选,最后点击 Traceroute method 菜单,会看到如下所示:                   e) 选择 ICMP,选择后回返回刚才的菜单界面,配置操作就完毕了。最后轻触 返回 键即可返回该软件主界面。 3. 进行路由跟踪探测。输入所要访问的云产品的IP地址,点击 Trace,然后等到执行完毕后截屏。

KB小秘书 2019-12-02 01:28:16 0 浏览量 回答数 0

回答

在使用移动网络访问服务器中的服务时,如果网络存在异常,可以通过以下方式进行定位: 获取手机移动端的本地公网IP地址。在手机端打开浏览器,访问网站 http://ip.cn,在返回的结果中即可看到您手机的公网IP地址。  获取手机移动端到用户访问的网站的路由跟踪结果。根据移动端的系统不同, iPhone iOS 或  Android,获取方式也不同。  iPhone iOS 路由跟踪探测 1. 首先安装软件 Network Ping Lite,可以通过 App Store下载。 2. 打开 Network Ping Lite 软件后出现下面的界面:         3. 选择 Traceroute 即进入路由探测界面:        4. 在地址栏里输入所要访问的云产品的地址,然后点击 Start 即可开始探测,结束后截图如下:       Android 系统路由跟踪探测 1. 首先安装软件 Traceroute,可以通过各种手机助手或应用市场等来安装。 2. 配置Traceroute:       a) 打开 Traceroute 软件后出现下面的界面:                    b) 然后按手机下方右侧的三横键,也就是手机的菜单键,出现下图界面后选择 Options。                      c) 选择后会出现如下界面:                  d) 然后取消 Enable DNS 的勾选,最后点击 Traceroute method 菜单,会看到如下所示:                   e) 选择 ICMP,选择后回返回刚才的菜单界面,配置操作就完毕了。最后轻触 返回 键即可返回该软件主界面。 3. 进行路由跟踪探测。输入所要访问的云产品的IP地址,点击 Trace,然后等到执行完毕后截屏。

KB小秘书 2019-12-02 01:29:12 0 浏览量 回答数 0

问题

DRDS功能特性有哪些?

猫饭先生 2019-12-01 21:19:22 980 浏览量 回答数 0

问题

AliOS Things 简介

librae 2019-12-01 21:50:59 3838 浏览量 回答数 2

回答

xUtils框架 项目地址:https://github.com/wyouflf/xUtils 主要有四大模块: (1) 数据库模块:android中的orm框架,一行代码就可以进行增删改查; 支持事务,默认关闭; 可通过注解自定义表名,列名,外键,唯一性约束,NOT NULL约束,CHECK约束等(需要混淆的时候请注解表名和列名); 支持绑定外键,保存实体时外键关联实体自动保存或更新; 自动加载外键关联实体,支持延时加载; 支持链式表达查询,更直观的查询语义,参考下面的介绍或sample中的例子. (2) 注解模块:android中的ioc框架,完全注解方式就可以进行UI,资源和事件绑定; 新的事件绑定方式,使用混淆工具混淆后仍可正常工作; 目前支持常用的20种事件绑定,参见ViewCommonEventListener类和包com.lidroid.xutils.view.annotation.event。 (3) 网络模块:支持同步,异步方式的请求; 支持大文件上传,上传大文件不会oom; 支持GET,POST,PUT,MOVE,COPY,DELETE,HEAD,OPTIONS,TRACE,CONNECT请求; 下载支持301/302重定向,支持设置是否根据Content-Disposition重命名下载的文件; 返回文本内容的请求(默认只启用了GET请求)支持缓存,可设置默认过期时间和针对当前请求的过期时间。 (4) 图片缓存模块:加载bitmap的时候无需考虑bitmap加载过程中出现的oom和android容器快速滑动时候出现的图片错位等现象; 支持加载网络图片和本地图片; 内存管理使用lru算法,更好的管理bitmap内存; 可配置线程加载线程数量,缓存大小,缓存路径,加载显示动画等… ######亲,这些我都知道呀,但是怎么取消网络请求呢???######没有用过这个开源框架,只是知道有这个东东。######有木有这个框架的经典示例代码和说明?学习一下,还没有用过这个.######冒失只有同步才能取消吧。 ###### Handler handler = HttpUtils.send   handler.cancel(); ######只用volley飘过######没什么框架,用框架的,都是有问题的。######写一个。

爱吃鱼的程序员 2020-05-31 00:02:28 0 浏览量 回答数 0

问题

玩转OneAPMBrowserInsight性能指标

sunny夏筱 2019-12-01 21:52:09 5944 浏览量 回答数 2

回答

概述 当网站访问很慢或无法访问时,若已经排除显著的问题,而使用ping命令检测到有明显丢包时,建议您做链路测试。在Windows环境中,推荐优先使用WinMTR工具,或者tracert命令行进行链路测试以判断问题来源。通常情况下,链路测试步骤如下。 利用链路测试工具探测网络状况和服务器状态。 根据链路测试结果分析处理。 详细信息 阿里云提醒您: 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。 WinMTR工具 mtr(My traceroute)作为一款网络测试工具,集成了tracert与ping这两个命令的图形界面。ping与tracert通常被用于检测网络状况和服务器状态,具体说明如下。 命令名称 具体说明 ping 送出封包到指定的服务器。如果服务器有回应就会传送回封包,并附带返回封包来回的时间 tracert 返回从用户的电脑到指定的服务器中间经过的所有节点(路由)以及每个节点的回应速度。 WinMTR是mtr工具在Windows环境下的图形化实现,适合Windows下做路由追踪及ping测试。WinMTR默认发送ICMP数据包进行探测,无法切换。 相比tracert命令行工具,WinMTR能避免节点波动对测试结果的影响,测试结果更正确。Windows环境下,建议优先使用WinMTR进行链路测试。下载WinMTR工具。 下载WinMTR工具后,直接解压运行。运行程序后,在 Host 字段输入目标服务器域名或IP。 1 单击 Start 开始测试。开始测试后,相应按钮变成了 Stop。 运行一段时间后,单击 Stop 停止测试。 说明:您可以多测试几分钟,测试结束后,将结果导出。 常见可选参数说明 Copy Text to clipboard:将测试结果以文本格式复制到粘贴板。 Copy HTML to clipboard:将测试结果以HTML格式复制到粘贴板。 Export TEXT:将测试结果以文本格式导出到指定文件。 Export HTML:将测试结果以HTML格式导出到指定文件。 Options:为可选参数。具体包括以下参数。 Interval(sec):每次探测的间隔(过期)时间,默认为1秒。 Ping size(bytes):ping 探测所使用的数据包大小,默认为64字节。 Max hosts in LRU list:LRU列表支持的最大主机数,默认值为128。 Resolve names:通过反查IP以域名显示相关节点。 WinMTR运行后的返回结果说明 默认配置下,WinMTR测试结果说明如下。 第一列(Hostname):到目标服务器要经过的每个节点主机IP或域名。 第二列(Nr):节点编号。 第三列(Loss%):节点丢包率。ping数据包回复失败的百分比,由此可判断哪个节点(线路)出现故障,是服务器所在机房还是国际路由干路。 第四列(Sent):已发送的数据包数量。 第五列(Recv):已成功接收的数据包数量。 第六、七、八、九列(Best 、Avg、Worst、Last):分别是回应时间的最小值、平均值、最大值和最后一个数据包的回应时间。 tracert命令行工具 tracert (Trace Route) 是Windows自带的网络诊断命令行实用程序,用于跟踪Internet协议(IP)数据包传送到目标地址时经过的路径。 tracert通过向目标地址发送ICMP数据包来确定到目标地址的路由。在这些数据包中,tracert使用了不同的IP生存期 (TTL) 值。由于要求沿途的路由器在转发数据包前至少必须将TTL减少1,因此TTL实际上相当于一个跃点计数器 (hop counter)。当某个数据包的TTL达到零时,相应节点就会向源计算机发送一个ICMP超时的消息。tracert第一次发送TTL为1的数据包,并在每次后续传输时将TTL增加1,直到目标地址响应或达到TTL的最大值。中间路由器发送回来的ICMP超时消息中包含了相应节点的信息。 在桌面底部单击 开始 菜单,选择 运行。 打开运行框后,在框中输入 cmd,并单击 确定。 在命令运行界面中,输入 tracert ,按回车键后,界面将显示tracert的用法说明。 2 根据具体用法,输入待跟踪的目标地址,示例如下。 C:> tracert -d 223.5.5.5 通过最多 30 个跃点跟踪到 223.5.5.5 的路由 1 * * * 请求超时。 2 9 ms 3 ms 12 ms 192.X.X.20 3 4 ms 9 ms 2 ms 111.X.X.41 4 9 ms 2 ms 1 ms 111.X.X.197 5 11 ms * * 211.X.X.57 6 3 ms 2 ms 2 ms 211.X.X.62 7 2 ms 2 ms 1 ms 42.X.X.190 8 32 ms 4 ms 3 ms 42.X.X.238 9 * * * 请求超时。 10 3 ms 2 ms 2 ms 223.5.5.5 分析链路测试结果 以如下链路测试结果示例图为基础进行阐述。 判断各区域是否存在异常,并根据各区域的情况分别处理。 区域A:客户端本地网络,即本地局域网和本地网络提供商网络。针对该区域异常,客户端本地网络相关节点问题,请对本地网络进行排查分析;本地网络提供商网络相关节点问题,请向当地运营商反馈。 区域B:运营商骨干网络。针对该区域异常,可根据异常节点IP查询归属运营商,然后直接或通过阿里云售后技术支持,向相应运营商反馈问题。 区域C:目标服务器本地网络,即目标主机归属网络提供商网络。针对该区域异常,需要向目标主机归属网络提供商反馈问题。 结合Avg(平均值)和StDev(标准偏差),判断各节点是否存在异常。 若StDev很高,则同步观察相应节点的Best和Worst,来判断相应节点是否存在异常。 若StDev不高,则通过Avg来判断相应节点是否存在异常。 注意:上述StDev高或者不高,并没有具体的时间范围标准。而需要根据同一节点其它列的延迟值大小来进行相对评估。比如,如果Avg为30ms,那么,当StDev为25ms,则认为是很高的偏差。而如果Avg为325ms,则同样的StDev为25ms,反而认为是不高的偏差。 查看节点丢包率,若“Loss%”不为零,则说明这一跳路由的网络可能存在问题。导致节点丢包的原因通常有两种。 人为限制了节点的ICMP发送速率,导致丢包。 节点确实存在异常,导致丢包。 确定当前异常节点的丢包原因。 若随后节点均没有丢包,说明当前节点丢包是由于运营商策略限制所致,可以忽略。如前文链路测试结果示例图中的第2跳路由的网络所示。 若随后节点也出现丢包,说明当前节点存在网络异常,导致丢包。如前文链路测试结果示例图中的第5跳路由的网络所示。 说明:前述两种情况可能同时发生,即相应节点既存在策略限速,又存在网络异常。对于这种情况,若当前节点及其后续节点连续出现丢包,而且各节点的丢包率不同,则通常以最后几跳路由的网络的丢包率为准。如前文链路测试结果示例图所示,在第5、6、7跳路由的网络均出现了丢包。所以,最终丢包情况,以第7跳的40%作为参考。 通过查看是否有明显的延迟,来确认节点是否存在异常。通过如下两个方面进行分析。 若某一跳路由的网络之后延迟明显陡增,则通常判断该节点存在网络异常。如前文链路测试结果示例图所示,从第5跳路由的网络之后的后续节点延迟明显陡增,则推断是第5跳路由的网络节点出现了网络异常。 注:高延迟并不一定完全意味着相应节点存在异常,延迟大也有可能是在数据回包链路中引发的,建议结合反向链路测试一并分析。 ICMP策略限速也可能会导致相应节点的延迟陡增,但后续节点通常会恢复正常。如前文链路测试结果示例图所示,第3跳路由的网络有100%的丢包率,同时延迟也明显陡增。但随后节点的延迟马上恢复了正常。所以判断该节点的延迟陡增及丢包是由于策略限速所致。 操作建议 若数据包在目标地址出现了100%的丢包,建议对目标服务器的安全策略配置进行排查。 若数据包出现循环跳转,导致无法到达目标服务器,建议联系相应节点归属运营商处理。 若数据包在跳转后无法收到任何反馈,建议结合反向链路测试作进一步确认,并联系相应节点归属运营商进行处理。 阿里云中国内地机房和其他国家或地区有网络通信的专线,为降低通信时候的丢包率,推荐使用高速通道。 若主机掉包和延迟非常高,建议做WinMTR双向测试,即本地到服务器的和服务器到本地的测试。无法远程登录时,请通过管理终端进行登录。

1934890530796658 2020-03-25 23:51:46 0 浏览量 回答数 0

回答

您好,请查看一下,您主机的安全组是否在入口对22端口进行放行。  业务端口无法访问可能是端口拦截造成的。当客户端访问目标服务器时,如果能 ping 通,业务端口却无法访问,可能是链路中的相关节点拦截了端口所致。您可以利用端口可用性探测的相关工具,执行测试步骤,验证是否有节点拦截了端口。 Windows 环境下端口可用性探测工具介绍 Windows 环境下,您可通过 tracetcp 进行端口可用性探测。 tracetcp 同样通过发送 TCP 数据包进行链路探测,以分析是否有链路中间节点对目标端口做了阻断。 下载安装 tracetcp 的使用依赖于 WinPcap library,因此,您需要前往官网下载。 点击此处前往官网下载最新版 tracetcp。或者,您也可以下载附件 v1.0.2 版 tracetcp(可能并非最新版)。 将下载的 tracetcp 相关文件直接解压到 C:\Windows 目录。(如果解压到非系统目录,则需要手工修改系统环境变量,以确保指令可以直接调用) 使用方法 双击打开 tracetcp 应用程序,tracetcp 的常见用法如下: tracetcp <目标服务器域名或 IP>:<待探测端口号> 示例 C:\ >tracetcp www.aliyun.com:80Tracing route to 140.205.63.8 on port 80Over a maximum of 30 hops.1 3 ms 4 ms 3 ms 30.9.176.12 13 ms 3 ms 4 ms 10.64.200.333 3 ms 3 ms 2 ms 10.64.1.14 4 ms 3 ms 3 ms 42.120.74.45 5 ms 4 ms 7 ms 42.120.253.2336 6 ms 5 ms 7 ms 42.120.247.977 8 ms 8 ms 8 ms 42.120.247.978 10 ms 10 ms 8 ms 123.56.34.2469 9 ms 9 ms 11 ms 42.120.243.11710 * * * Request timed out.11 Destination Reached in 8 ms. Connection established to 140.205.63.8Trace Complete. 关于更多 tracetcp 参数说明,您可以通过 tracetcp -? 获取和查看。 端口可用性探测步骤 通常情况下,您可以: 根据前文所述,使用对应工具对目标地址的目标端口进行可用性探测。排查分析探测结果,确定异常节点。 通过 ip.taobao.com 等 IP 地址查询网站获取相应节点归属运营商及网络。或者提交工单,阿里云将为您向相关运营商反馈问题。 链路测试结果分析简述 异常节点判定方法:如果相关端口在某一跳被阻断,则其后各跳均不会返回数据。据此就可以判定出异常节点。 示例1 C:\&gt;tracetcp www.aliyun.com:135Tracing route to 115.239.210.27 on port 135Over a maximum of 30 hops.1 3 ms 3 ms 3 ms 30.9.176.12 4 ms 3 ms 3 ms 10.64.200.333 3 ms 3 ms 3 ms 10.64.1.14 * * * Request timed out.5 * * * Request timed out.6 * * * Request timed out.7 * * * Request timed out.8 * * * Request timed out.9 * * * Request timed out.10 * * * Request timed out.11 * * * Request timed out.12 * * * Request timed out.13 * * * Request timed out.14 * * * Request timed out.15 * * * Request timed out.16 * * * Request timed out.17 * * * Request timed out.18 * * * Request timed out.19 * * * Request timed out.20 * * * Request timed out.21 * * * Request timed out.22 * * * Request timed out.23 * * * Request timed out.24 * * * Request timed out.25 * * * Request timed out.26 * * * Request timed out.27 * * * Request timed out.28 * * * Request timed out.29 * * * Request timed out.30 * * * Request timed out.Trace Complete. 上述探测数据中,目标端口在第 3 跳之后就没有数据返回。说明相应端口在该节点被阻断。 示例结论:因为该节点为内网 IP,可能是本地网络相关安全策略所致,您需要联系本地网络管理人员做进一步排查分析。 示例2 [root@mycentos ~]# traceroute -T -p 135 www.baidu.comtraceroute to www.baidu.com (111.13.100.92), 30 hops max, 60 byte packets 1 * * * 2 192.168.17.20 (192.168.17.20) 4.115 ms 4.397 ms 4.679 ms 3 111.1.20.41 (111.1.20.41) 901.921 ms 902.762 ms 902.338 ms 4 111.1.34.197 (111.1.34.197) 2.187 ms 1.392 ms 2.266 ms 5 * * * 6 221.183.19.169 (221.183.19.169) 1.688 ms 1.465 ms 1.475 ms 7 221.183.11.105 (221.183.11.105) 27.729 ms 27.708 ms 27.636 ms 8 * * * 9 * * *10 111.13.98.249 (111.13.98.249) 28.922 ms 111.13.98.253 (111.13.98.253) 29.030 ms 28.916 ms11 111.13.108.22 (111.13.108.22) 29.169 ms 28.893 ms 111.13.108.33 (111.13.108.33) 30.986 ms12 * * *13 * * *14 * * *15 * * *16 * * *17 * * *18 * * *19 * * *20 * * *21 * * *22 * * *23 * * *24 * * *25 * * *26 * * *27 * * *28 * * *29 * * *30 * * * 上述探测数据中,目标端口在第 11 跳之后就没有数据返回。说明相应端口在该节点被阻断。 示例结论:因为该节点经查询归属北京移动,所以您需要自行排查,或者提交工单做进一步排查分析。 工单提交须知 如果问题还未解决,请记录端口可用性探测步骤测试结果,然后提交工单联系阿里云。 业务端口无法访问可能是端口拦截造成的。当客户端访问目标服务器时,如果能 ping 通,业务端口却无法访问,可能是链路中的相关节点拦截了端口所致。您可以利用端口可用性探测的相关工具,执行测试步骤,验证是否有节点拦截了端口。

小川游鱼 2019-12-02 00:27:19 0 浏览量 回答数 0

问题

随手科技拥抱OneAPM:打造高标准真实用户体验

sunny夏筱 2019-12-01 21:42:04 7083 浏览量 回答数 4

问题

企业邮箱访问

cemcao 2019-12-01 18:51:31 105 浏览量 回答数 0

问题

UNIX/Linux系统取证之信息采集案例

opensiem 2019-12-01 21:46:20 2034 浏览量 回答数 1

回答

概述 本文主要介绍使用ping命令正常但端口不通时如何进行端口可用性探测。 详细信息 阿里云提醒您: 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。 当客户端访问目标服务器时,如果能ping通,但业务端口无法访问,可能是链路中的相关节点拦截了端口所致。您可以参考如下内容,利用端口可用性探测的相关工具进行测试,验证是否有节点拦截了端口。 端口可用性探测工具的介绍 端口可用性探测步骤 探测结果的案例分析 端口可用性探测工具的介绍 不同的操作系统,端口可用性探测所使用的工具有所不同。此处分别介绍如下系统中的端口可用性探测工具。 Linux系统 Windows系统 Linux系统 traceroute是几乎所有Linux发行版本预装的网络测试工具,用于跟踪Internet协议(IP)数据包传送到目标地址时经过的路径。traceroute通过发送TCP数据包向目标端口进行探测,以检测从数据包源到目标服务器的整个链路上相应端口的连通性情况。该工具的介绍如下。 使用方法 traceroute用于端口可用性探测的常用命令如下。 traceroute [-n] -T -p [$Port] [$Host] 注: -n:直接使用IP地址而非主机名称(禁用DNS反查)。 -T:通过TCP探测。 -p:设置探测的端口号。 [$Port]:需要探测的端口号,比如“80”。 [$Host]:需要探测的目标服务器地址,比如“10.10.1.1”。 更多关于traceroute的用法,您可以通过man命令查阅。 示例 traceroute的示例命令和返回结果如下。 [root@centos~]# traceroute -n -T -p 22 223.5.5.5 traceroute to 223.5.5.5 (223.5.5.5), 30 hops max, 60 byte packets 1 5X.X.X.X 0.431 ms 0.538 ms 0.702 ms 2 1X.X.X.X 0.997 ms 1.030 ms 10.88.16.21 1.309 ms 3 5X.X.1X.2X 0.393 ms 0.390 ms 58.96.160.250 0.423 ms 4 6X.X.X.X 1.110 ms 202.123.74.122 0.440 ms 0.440 ms 5 6X.X.1X.X 1.744 ms 63.218.56.237 1.076 ms 1.232 ms 6 63.2X.1X.1X 1.832 ms 63.223.15.90 1.663 ms 63.223.15.74 1.616 ms 7 20X.97.1X.1X 2.776 ms 63.223.15.154 1.585 ms 1.606 ms 8 * * 202.97.122.113 2.537 ms 9 202.97.61.237 6.856 ms * * 10 * * * 11 * * * 12 * * 119.147.220.222 8.738 ms 13 119.147.220.230 8.248 ms 8.231 ms * 14 * 42.120.242.230 32.305 ms 42.120.242.226 29.877 ms 15 42.120.242.234 11.950 ms 42.120.242.222 23.853 ms 42.120.242.218 29.831 ms 16 42.120.253.2 11.007 ms 42.120.242.234 13.615 ms 42.120.253.2 11.956 ms 17 42.120.253.14 21.578 ms 42.120.253.2 13.236 ms * 18 * * 223.5.5.5 12.070 ms !X Windows系统 在Windows系统中,您可通过tracetcp进行端口可用性探测。tracetcp同样通过发送TCP数据包进行链路探测,以分析链路是否存在中间节点对目标端口做了阻断。该工具的介绍如下。 下载安装 tracetcp的使用依赖于WinPcap library。因此,您需要前往官网下载WinPcap library。 前往tracetcp官网下载最新版tracetcp。 将下载的tracetcp相关文件直接解压到C:\Windows目录。 注:您也可以解压到非系统目录,但是需要手工修改系统环境变量,以确保指令可以直接调用。 使用方法 双击打开tracetcp应用程序,tracetcp的常见用法如下。 tracetcp [$IP]:[$Port] 注: [$IP]指目标服务器的IP地址或者域名。 [$Port]指需要探测的目标端口。 关于更多tracetcp参数说明,您可以通过tracetcp -?命令查看帮助。 示例 tracetcp的示例命令和返回结果如下。 C:\ >tracetcp www.aliyun.com:80 Tracing route to 140.205.63.8 on port 80 Over a maximum of 30 hops. 1 3 ms 4 ms 3 ms 3X.X.X.X 2 13 ms 3 ms 4 ms 1X.X.X.X 3 3 ms 3 ms 2 ms 10.X.X.X 4 4 ms 3 ms 3 ms 4X.X.X.X 5 5 ms 4 ms 7 ms 5X.X.X.X 6 6 ms 5 ms 7 ms 6X.X.X.X 7 8 ms 8 ms 8 ms 42.120.247.97 8 10 ms 10 ms 8 ms 123.56.34.246 9 9 ms 9 ms 11 ms 42.120.243.117 10 * * * Request timed out. 11 Destination Reached in 8 ms. Connection established to 140.205.63.8 Trace Complete. 端口可用性探测步骤 通常情况下,您可以参考如下步骤进行探测。 根据上文所述,使用对应工具对目标服务器和端口进行可用性探测。 排查分析探测结果,确认问题根源。如果相关端口在某一跳被阻断,且其后各跳均不会返回数据。据此就可以判定出异常节点。 如果确实存在异常节点,您可以参考如下两种方式进行解决。 通过ip.aliyun.com等IP地址查询网站获取相应节点的归属运营商及网络。 或者您也可以提交工单,请阿里云技术支持协助您向相关运营商反馈问题。 注:提交工单时,请一并提交端口可用性的探测结果。 探测结果的案例分析 此处介绍两个探测结果的案例,案例中包括探测结果和分析。 案例一 探测结果如下,目标端口在第3跳之后就没有数据返回。 C:>tracetcp www.aliyun.com:135 Tracing route to 115.239.210.27 on port 135 Over a maximum of 30 hops. 1 3 ms 3 ms 3 ms 1X.X.X.X 2 4 ms 3 ms 3 ms 2X.X.X.X 3 3 ms 3 ms 3 ms 3X.X.X.X 4 * * * Request timed out. 5 * * * Request timed out. 6 * * * Request timed out. 7 * * * Request timed out. 8 * * * Request timed out. 9 * * * Request timed out. 10 * * * Request timed out. 11 * * * Request timed out. 12 * * * Request timed out. Trace Complete. 分析 因为该节点为内网IP,可能是本地网络相关安全策略所致,需要联系本地网络管理人员做进一步排查分析。 案例二 探测结果如下,目标端口在第11跳之后就没有数据返回。 [root@mycentos ~]# traceroute -T -p 135 www.baidu.com traceroute to www.baidu.com (111.13.100.92), 30 hops max, 60 byte packets 1 * * * 2 1X.X.X.X (1X.X.X.X) 4.115 ms 4.397 ms 4.679 ms 3 2X.X.X.X (2X.X.X.X) 901.921 ms 902.762 ms 902.338 ms 4 3X.X.X.X (3X.X.X.X) 2.187 ms 1.392 ms 2.266 ms 5 * * * 6 5X.X.X.X (5X.X.X.X) 1.688 ms 1.465 ms 1.475 ms 7 6X.X.X.X (6X.X.X.X) 27.729 ms 27.708 ms 27.636 ms 8 * * * 9 * * * 10 111.13.98.249 (111.13.98.249) 28.922 ms 111.13.98.253 (111.13.98.253) 29.030 ms 28.916 ms 11 111.13.108.22 (111.13.108.22) 29.169 ms 28.893 ms 111.13.108.33 (111.13.108.33) 30.986 ms 12 * * * 13 * * * 14 * * * 15 * * * 16 * * * 17 * * * 18 * * * 19 * * * 20 * * * 分析 因为该节点经查询后归属北京移动,需要您自行向运营商反馈,或者提交工单做进一步排查分析。

1934890530796658 2020-03-25 23:20:24 0 浏览量 回答数 0

回答

MQTT协议 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)最早是IBM开发的一个即时通讯协议,MQTT协议是为大量计算能力有限且工作在低带宽、不可靠网络的远程传感器和控制设备通讯而设计的一种协议。 MQTT协议的优势是可以支持所有平台,它几乎可以把所有的联网物品和互联网连接起来。 它具有以下主要的几项特性:1、使用发布/订阅消息模式,提供一对多的消息发布和应用程序之间的解耦;2、消息传输不需要知道负载内容;3、使用 TCP/IP 提供网络连接;4、有三种消息发布的服务质量:QoS 0:“最多一次”,消息发布完全依赖底层 TCP/IP 网络。分发的消息可能丢失或重复。例如,这个等级可用于环境传感器数据,单次的数据丢失没关系,因为不久后还会有第二次发送。QoS 1:“至少一次”,确保消息可以到达,但消息可能会重复。QoS 2:“只有一次”,确保消息只到达一次。例如,这个等级可用在一个计费系统中,这里如果消息重复或丢失会导致不正确的收费。5、小型传输,开销很小(固定长度的头部是 2 字节),协议交换最小化,以降低网络流量;6、使用 Last Will 和 Testament 特性通知有关各方客户端异常中断的机制;在MQTT协议中,一个MQTT数据包由:固定头(Fixed header)、 可变头(Variable header)、 消息体(payload)三部分构成。MQTT的传输格式非常精小,最小的数据包只有2个bit,且无应用消息头。下图是MQTT为可靠传递消息的三种消息发布服务质量 发布/订阅模型允许MQTT客户端以一对一、一对多和多对一方式进行通讯。 下图是MQTT的发布/订阅消息模式 CoAP协议 CoAP是受限制的应用协议(Constrained Application Protocol)的代名词。由于目前物联网中的很多设备都是资源受限型的,所以只有少量的内存空间和有限的计算能力,传统的HTTP协议在物联网应用中就会显得过于庞大而不适用。因此,IETF的CoRE工作组提出了一种基于REST架构、传输层为UDP、网络层为6LowPAN(面向低功耗无线局域网的IPv6)的CoAP协议。 CoAP采用与HTTP协议相同的请求响应工作模式。CoAP协议共有4中不同的消息类型。CON——需要被确认的请求,如果CON请求被发送,那么对方必须做出响应。NON——不需要被确认的请求,如果NON请求被发送,那么对方不必做出回应。ACK——应答消息,接受到CON消息的响应。RST——复位消息,当接收者接受到的消息包含一个错误,接受者解析消息或者不再关心发送者发送的内容,那么复位消息将会被发送。 CoAP消息格式使用简单的二进制格式,最小为4个字节。 一个消息=固定长度的头部header + 可选个数的option + 负载payload。Payload的长度根据数据报长度来计算。 主要是一对一的协议 举个例子: 比如某个设备需要从服务器端查询当前温度信息。 请求消息(CON): GET /temperature , 请求内容会被包在CON消息里面响应消息 (ACK): 2.05 Content “22.5 C” ,响应内容会被放在ACK消息里面 CoAP与MQTT的区别 MQTT和CoAP都是行之有效的物联网协议,但两者还是有很大区别的,比如MQTT协议是基于TCP,而CoAP协议是基于UDP。从应用方向来分析,主要区别有以下几点: 1、MQTT协议不支持带有类型或者其它帮助Clients理解的标签信息,也就是说所有MQTT Clients必须要知道消息格式。而CoAP协议则相反,因为CoAP内置发现支持和内容协商,这样便能允许设备相互窥测以找到数据交换的方式。 2、MQTT是长连接而CoAP是无连接。MQTT Clients与Broker之间保持TCP长连接,这种情形在NAT环境中也不会产生问题。如果在NAT环境下使用CoAP的话,那就需要采取一些NAT穿透性手段。 3、MQTT是多个客户端通过中央代理进行消息传递的多对多协议。它主要通过让客户端发布消息、代理决定消息路由和复制来解耦消费者和生产者。MQTT就是相当于消息传递的实时通讯总线。CoAP基本上就是一个在Server和Client之间传递状态信息的单对单协议。 HTTP协议http的全称是HyperText Transfer Protocol,超文本传输协议,这个协议的提出就是为了提供和接收HTML界面,通过这个协议在互联网上面传出web的界面信息。 HTTP协议的两个过程,Request和Response,两个都有各自的语言格式,我们看下是什么。请求报文格式:(注意这里有个换行) 响应报文格式:(注意这里有个换行) 方法method:       这个很重要,比如说GET和POST方法,这两个是很常用的,GET就是获取什么内容,而POST就是向服务器发送什么数据。当然还有其他的,比如HTTP 1.1中还有:DELETE、PUT、CONNECT、HEAD、OPTIONS、TRACE等一共8个方法(HTTP Method历史:HTTP 0.9 只有GET方法;HTTP 1.0 有GET、POST、HEAD三个方法)。请求URL:       这里填写的URL是不包含IP地址或者域名的,是主机本地文件对应的目录地址,所以我们一般看到的就是“/”。版本version:       格式是HTTP/.这样的格式,比如说HTTP/1.1.这个版本代表的就是我们使用的HTTP协议的版本,现在使用的一般是HTTP/1.1状态码status:       状态码是三个数字,代表的是请求过程中所发生的情况,比如说200代表的是成功,404代表的是找不到文件。原因短语reason-phrase:       是状态码的可读版本,状态码就是一个数字,如果你事先不知道这个数字什么意思,可以先查看一下原因短语。首部header:       注意这里的header我们不是叫做头,而是叫做首部。可能有零个首部也可能有多个首部,每个首部包含一个名字后面跟着一个冒号,然后是一个可选的空格,接着是一个值,然后换行。实体的主体部分entity-body:       实体的主体部分包含一个任意数据组成的数据块,并不是所有的报文都包含实体的主体部分,有时候只是一个空行加换行就结束了。 下面我们举个简单的例子: 请求报文:GET /index.html HTTP/1.1    Accept: text/*Host: www.myweb.com 响应报文:HTTP/1.1 200 OKContent-type: text/plainContent-length: 3  HTTP与CoAP的区别 CoAP是6LowPAN协议栈中的应用层协议,基于REST(表述性状态传递)架构风格,支持与REST进行交互。通常用户可以像使用HTTP协议一样用CoAP协议来访问物联网设备。而且CoAP消息格式使用简单的二进制格式,最小为4个字节。HTTP使用报文格式对于嵌入式设备来说需要传输数据太多,太重,不够灵活。 XMPP协议 XMPP(可扩展通讯和表示协议)是一种基于可扩展标记语言(XML)的协议, 它继承了在XML环境中灵活的发展性。可用于服务类实时通讯、表示和需求响应服务中的XML数据元流式传输。XMPP以Jabber协议为基础,而Jabber是即时通讯中常用的开放式协议。   基本网络结构 XMPP中定义了三个角色,客户端,服务器,网关。通信能够在这三者的任意两个之间双向发生。 服务器同时承担了客户端信息记录,连接管理和信息的路由功能。网关承担着与异构即时通信系统 的互联互通,异构系统可以包括SMS(短信),MSN,ICQ等。基本的网络形式是单客户端通过 TCP/IP连接到单服务器,然后在之上传输XML。 功能 传输的是与即时通讯相关的指令。在以前这些命令要么用2进制的形式发送(比如QQ),要么用纯文本指令加空格加参数加换行符的方式发送(比如MSN)。而XMPP传输的即时通讯指令的逻辑与以往相仿,只是协议的形式变成了XML格式的纯文本。举个例子看看所谓的XML(标准通用标记语言的子集)流是什么样子的?客户端:123456<?xmlversion='1.0'?>to='example_com'xmlns='jabber:client'xmlns:stream='http_etherx_jabber_org/streams'version='1.0'>服务器:1234567<?xmlversion='1.0'?>from='example_com'id='someid'xmlns='jabber:client'xmlns:stream='http_etherx_jabber_org/streams'version='1.0'>工作原理XMPP核心协议通信的基本模式就是先建立一个stream,然后协商一堆安全之类的东西, 中间通信过程就是客户端发送XML Stanza,一个接一个的。服务器根据客户端发送的信息 以及程序的逻辑,发送XML Stanza给客户端。但是这个过程并不是一问一答的,任何时候 都有可能从一方发信给另外一方。通信的最后阶段是关闭流,关闭TCP/IP连接。  网络通信过程中数据冗余率非常高,网络流量中70% 都消耗在 XMPP 协议层了。对于物联网来说,大量计算能力有限且工作在低带宽、不可靠网络的远程传感器和控制设备,省电、省流量是所有底层服务的一个关键技术指标,XMPP协议看起来已经落后了。 SoAP协议 SoAP(简单对象访问协议)是交换数据的一种协议规范,是一种轻量的、简单的、 基于可扩展标记语言(XML)的协议,它被设计成在WEB上交换结构化的和固化的信息。  SOAP 可以和现存的许多因特网协议和格式结合使用,包括超文本传输协议(HTTP), 简单邮件传输协议(SMTP),多用途网际邮件扩充协议(MIME)。它还支持从消息系统到 远程过程调用(RPC)等大量的应用程序。SOAP使用基于XML的数据结构和超文本传输协议 (HTTP)的组合定义了一个标准的方法来使用Internet上各种不同操作环境中的分布式对象。 总结: 从当前物联网应用发展趋势来分析,MQTT协议具有一定的优势。因为目前国内外主要的云计算服务商,比如阿里云、AWS、百度云、Azure以及腾讯云都一概支持MQTT协议。还有一个原因就是MQTT协议比CoAP成熟的要早,所以MQTT具有一定的先发优势。但随着物联网的智能化和多变化的发展,后续物联网应用平台肯定会兼容更多的物联网应用层协议。 作者:HFK_Frank 来源:CSDN 原文:https://blog.csdn.net/acongge2010/article/details/79142380 版权声明:本文为博主原创文章,转载请附上博文链接!

auto_answer 2019-12-02 01:55:21 0 浏览量 回答数 0

问题

Docker 1.12 重磅推出,容器领域划时代

妙正灰 2019-12-01 21:08:42 3504 浏览量 回答数 1

问题

AliOS Things v1.1.1新特性

librae 2019-12-01 21:54:10 2207 浏览量 回答数 2

问题

SQL 优化基本有什么?

猫饭先生 2019-12-01 21:20:54 982 浏览量 回答数 0

问题

Android共享文件的Runtime权限

sunny夏筱 2019-12-01 20:58:02 5548 浏览量 回答数 0

回答

概述 当客户端访问目标服务器出现ping丢包或ping不通时,可以通过tracert或mtr等工具进行链路测试来判断问题根源。本文介绍如何通过工具进行链路测试和分析。 详细信息 阿里云提醒您: 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。 本文分别介绍如下链路测试方法。 链路测试工具 测试结果的简要分析 常见的链路异常场景 链路测试步骤 测试完成后的解决方法 链路测试工具 操作系统类型不同,链路测试所使用的工具也有所不同。简要介绍如下。 Linux系统 此处简单介绍两个链路测试工具。 工具一:mtr命令 mtr(My traceroute)几乎是所有Linux发行版本预装的网络测试工具。其将ping和traceroute的功能合并,所以功能更强大。mtr默认发送ICMP数据包进行链路探测。您也可以通过“-u”参数来指定使用UDP数据包进行探测。相对于traceroute只会做一次链路跟踪测试,mtr会对链路上的相关节点做持续探测并给出相应的统计信息。所以,mtr能避免节点波动对测试结果的影响,所以其测试结果更正确,建议优先使用。 用法说明 mtr [-BfhvrwctglxspQomniuT46] [--help] [--version] [--report] [--report-wide] [--report-cycles=COUNT] [--curses] [--gtk] [--csv|-C] [--raw] [--xml] [--split] [--mpls] [--no-dns] [--show-ips] [--address interface] [--filename=FILE|-F] [--ipinfo=item_no|-y item_no] [--aslookup|-z] [--psize=bytes/-s bytes] [--order fields] [--report-wide|-w] [--inet] [--inet6] [--max-ttl=NUM] [--first-ttl=NUM] [--bitpattern=NUM] [--tos=NUM] [--udp] [--tcp] [--port=PORT] [--timeout=SECONDS] [--interval=SECONDS] HOSTNAME 常见可选参数说明 --report:以报告模式显示输出。 --split:将每次追踪的结果分别列出来,而非统计整个结果。 --psize:指定ping数据包的大小。 --no-dns:不对IP地址做域名反解析。 --address:主机有多个IP地址时,设置发送数据包的IP地址。 -4:只使用IPv4协议。 -6:只使用IPv6协议。 另外,也可以在mtr运行过程中,输入类似如下的字母来快速切换模式。 ?或h:显示帮助菜单。 d:切换显示模式。 n:启用或禁用DNS域名解析。 u:切换使用ICMP或UDP数据包进行探测。 命令输出示例 返回结果说明 默认配置下,返回结果中各数据列的说明如下。 第一列(Host):节点IP地址和域名。按 n 键可切换显示。 第二列(Loss%):节点丢包率。 第三列(Snt):每秒发送数据包数。默认值是10,可以通过“-c”参数指定。 第四列(Last):最近一次的探测延迟。 第五、六、七列(Avg、Best、Worst):分别是探测延迟的平均值、最小值和最大值。 第八列(StDev):标准偏差。越大说明相应节点越不稳定。 工具二:traceroute命令 traceroute也是几乎所有Linux发行版本预装的网络测试工具,用于跟踪Internet协议(IP)数据包传送到目标地址时经过的路径。traceroute先发送小的具有最大存活时间值(Max_TTL)的UDP探测数据包,然后侦听从网关开始的整个链路上的ICMP TIME_EXCEEDED响应。探测从TTL=1开始,TTL值逐步增加,直至接收到ICMP PORT_UNREACHABLE消息。ICMP PORT_UNREACHABLE消息用于标识目标主机已经被定位,或命令已经达到允许跟踪的最大TTL值。traceroute默认发送UDP数据包进行链路探测。可以通过“-I”参数来指定使用ICMP数据包进行探测。 用法说明 traceroute [-I] [ -m Max_ttl ] [ -n ] [ -p Port ] [ -q Nqueries ] [ -r ] [ -s SRC_Addr ] [ -t TypeOfService ] [ -f flow ] [ -v ] [ -w WaitTime ] Host [ PacketSize ] 常见可选参数说明 -d:使用Socket层级的排错功能。 -f:设置第一个检测数据包的存活数值TTL的大小。 -F:设置不要分段标识。 -g:设置来源路由网关,最多可设置8个。 -i:主机有多个网卡时,使用指定的网卡发送数据包。 -I:使用ICMP数据包替代UDP数据包进行探测。 -m:设置检测数据包的最大存活数值TTL的大小。 -n:直接使用IP地址而非主机名称(禁用DNS反查)。 -p:设置UDP传输协议的通信端口。 -r:忽略普通的Routing Table,直接将数据包发送到目标主机上。 -s:设置本地主机发送数据包的IP地址。 -t:设置检测数据包的TOS数值。 -v:详细显示指令的执行过程。 -w:设置等待远端主机回包时间。 -x:开启或关闭数据包的正确性检验。 命令输出示例 Windows系统 此处简单介绍两个链路测试工具。 工具一:WinMTR(建议优先使用) WinMTR是mtr工具在Windows环境下的图形化实现,但进行了功能简化,只支持部分mtr的参数。WinMTR默认发送ICMP数据包进行探测,无法切换。和mtr一样,相比tracert,WinMTR能避免节点波动对测试结果的影响,所以测试结果更正确。所以在WinMTR可用的情况下,建议优先使用WinMTR进行链路测试。 用法说明 WinMTR无需安装,直接解压运行即可。操作方法非常简单,说明如下。 如下图所示,运行程序后,在 Host 字段输入目标服务器域名或IP,注意不要包含空格。 单击 Start 开始测试。开始测试后,相应按钮变成了 Stop。 运行一段时间后,单击 Stop 停止测试。 其它选项说明如下。 Copy Text to clipboard:将测试结果以文本格式复制到粘贴板。 Copy HTML to clipboard:将测试结果以HTML格式复制到粘贴板。 Export TEXT:将测试结果以文本格式导出到指定文件。 Export HTML:将测试结果以HTML格式导出到指定文件。 Options:可选参数,包括的可选参数如下。 Interval(sec):每次探测的间隔(过期)时间。默认为1秒。 ping size(bytes):ping探测所使用的数据包大小,默认为64字节。 Max hosts in LRU list:LRU列表支持的最大主机数,默认值为128。 Resolve names:通过反查IP地址,以域名显示相关节点。 返回结果说明 默认配置下,返回结果中各数据列的说明如下。 第一列(Hostname):节点的IP或域名。 第二列(Nr):节点编号。 第三列(Loss%):节点丢包率。 第四列(Sent):已发送的数据包数量。 第五列(Recv):已成功接收的数据包数量。 第六、七、八、九列(Best 、Avg、Worst、Last):分别是到相应节点延迟的最小值、平均值、最大值和最后一次值。 工具二:tracert命令行工具 tracert(Trace Route)是Windows自带的网络诊断命令行程序,用于跟踪Internet协议(IP)数据包传送到目标地址时经过的路径。 tracert通过向目标地址发送 ICMP 数据包来确定到目标地址的路由。在这些数据包中,tracert使用了不同的IP“生存期”,即TTL值。由于要求沿途的路由器在转发数据包前必须至少将TTL减少1,因此TTL实际上相当于一个跃点计数器(hop counter)。当某个数据包的TTL达到0时,相应节点就会向源计算机发送一个ICMP超时的消息。 tracert第一次发送TTL为1的数据包,并在每次后续传输时将TTL增加1,直到目标地址响应或达到TTL的最大值。中间路由器发送回来的ICMP超时消息中包含了相应节点的信息。 用法说明 tracert [-d] [-h maximum_hops] [-j host-list] [-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name 常见可选参数说明 -d:不要将地址解析为主机名(禁用DNS反解)。 -h:maximum_hops,指定搜索目标地址时的最大跃点数。 -j: host-list,指定沿主机列表的松散源路由。 -w:timeout,等待每个回复的超时时间(以毫秒为单位)。 -R:跟踪往返行程路径(仅适用于IPv6)。 -S:srcaddr,要使用的源地址(仅适用于IPv6)。 -4:强制使用IPv4。 -6:强制使用IPv6。 target_host:目标主机域名或IP地址。 命令输出示例 C:> tracert -d 223.5.5.5 通过最多 30 个跃点跟踪到 223.5.5.5 的路由 1 请求超时。 2 9 ms 3 ms 12 ms 192.168.X.X 3 4 ms 9 ms 2 ms X.X.X.X 4 9 ms 2 ms 1 ms XX.XX.XX.XX 5 11 ms 211.XX.X.XX 6 3 ms 2 ms 2 ms 2XX.XX.1XX.XX 7 2 ms 2 ms 1 ms 42.XX.2XX.1XX 8 32 ms 4 ms 3 ms 42.XX.2XX.2XX 9 请求超时。 10 3 ms 2 ms 2 ms 223.5.5.5 跟踪完成。 测试结果的简要分析 由于mtr(WinMTR)有更高的准确性,本文以其测试结果为例,参考如下要点进行分析。此处分析时以如下示例图为基础。 要点一:网络区域 正常情况下,从客户端到目标服务器的整个链路中会包含如下区域。 客户端本地网络,即本地局域网和本地网络提供商网络。如上图中的区域A。如果该区域出现异常,并且是客户端本地网络中的节点出现异常,则需要对本地网络进行相应的排查分析。如果是本地网络提供商网络出现异常,则需要向当地运营商反馈问题。 运营商骨干网络。如上图中的区域B。如果该区域出现异常,可以根据异常节点的IP查询其所属的运营商,直接向对应运营商进行反馈,或者通过阿里云技术支持,向运营商进行反馈。 目标服务器本地网络,即目标服务器所属提供商的网络。如上图中的区域C。如果该区域出现异常,需要向目标服务器所属的网络运营商反馈问题。 要点二:链路负载均衡 如上图中的区域D。如果中间链路某些部分启用了链路负载均衡,则mtr只会对首尾节点进行编号和探测统计。中间节点只会显示相应的IP或域名信息。 要点三:结合Avg(平均值)和StDev(标准偏差)综合判断 由于链路抖动或其它因素的影响,节点的Best和Worst值可能相差很大。Avg统计了自链路测试以来所有探测的平均值,所以能更好的反应出相应节点的网络质量。而StDev越高,则说明数据包在相应节点的延时值越不相同,即越离散。所以标准偏差值可用于协助判断Avg是否真实反应了相应节点的网络质量。例如,如果标准偏差很大,说明数据包的延迟是不确定的。可能某些数据包延迟很小,例如25ms,而另一些延迟却很大,例如350ms,但最终得到的平均延迟反而可能是正常的。所以,此时Avg并不能很好的反应出实际的网络质量情况。 综上,建议的分析标准如下。 如果StDev很高,则同步观察相应节点的Best和Worst,来判断相应节点是否存在异常。 如果StDev不高,则通过Avg来判断相应节点是否存在异常。 注:上述StDev高或者不高,并没有具体的时间范围标准。而需要根据同一节点其它列的延迟值大小来进行相对评估。比如,如果Avg为30ms,那么,当StDev为25ms,则认为是很高的偏差。而如果Avg为325ms,则StDev同样为25ms,反而认为是不高的偏差。 要点四:Loss%(丢包率)的判断 任一节点的Loss%(丢包率)如果不为零,则说明这一跳网络可能存在问题。导致相应节点丢包的原因通常有如下两种。 运营商基于安全或性能需求,限制了节点的ICMP发送速率,导致丢包。 节点确实存在异常,导致丢包。 结合异常节点及其后续节点的丢包情况,并参考如下内容,判定丢包原因。 如果随后节点均没有丢包,则通常表示异常节点丢包是由于运营商策略限制所致。可以忽略相关丢包。如上图中的第2跳所示。 如果随后节点也出现丢包,则通常说明异常节点确实存在网络异常,导致丢包。如上图中的第5跳所示。 另外,上述两种情况可能同时发生,即相应节点既存在策略限速,又存在网络异常。对于这种情况,如果异常节点及其后续节点连续出现丢包,而且各节点的丢包率不同,则通常以最后几跳的丢包率为准。如上图所示,在第 5、6、7跳均出现了丢包。所以,最终丢包情况,以第7跳的40%作为参考。 要点五:关于延迟 关于延迟,有如下两种场景。 场景一:延迟跳变 如果在某一跳之后延迟明显陡增,则通常判断该节点存在网络异常。如上图所示,从第5跳之后的后续节点延迟明显陡增,则推断是第5跳节点出现了网络异常。不过,高延迟并不一定完全意味着相应节点存在异常。如上图所示,第5跳之后,虽然后续节点延迟明显陡增,但测试数据最终仍然正常到达了目的主机。所以,延迟大也有可能是在数据回包链路中引发的。所以,需要结合反向链路测试一并分析。 场景二:ICMP限速导致延迟增加 ICMP策略限速也可能会导致相应节点的延迟陡增,但后续节点通常会恢复正常。如上图所示,第3跳有100%的丢包率,同时延迟也明显陡增。但随后节点的延迟马上恢复了正常。所以判断该节点的延迟陡增及丢包是由于策略限速所致。 常见的链路异常场景 常见的链路异常场景及测试报告如下。 场景一:目标主机网络配置不当 示例数据如下。 [root@mycentos6 ~]# mtr —no-dns www.google.com My traceroute [v0.75] mycentos6.6 (0.0.0.0) Wed Jun 15 19:06:29 2016 Keys: Help Display mode Packets Pings Host Loss% Snt Last Avg Best Wrst StDev 1. ??? 2. ??? 3. 1XX.X.X.X 0.0% 10 521.3 90.1 2.7 521.3 211.3 4. 11X.X.X.X 0.0% 10 2.9 4.7 1.6 10.6 3.9 5. 2X.X.X.X 80.0% 10 3.0 3.0 3.0 3.0 0.0 6. 2X.XX.XX.XX 0.0% 10 1.7 7.2 1.6 34.9 13.6 7. 1XX.1XX.XX.X 0.0% 10 5.2 5.2 5.1 5.2 0.0 8. 2XX.XX.XX.XX 0.0% 10 5.3 5.2 5.1 5.3 0.1 9. 173.194.200.105 100.0% 10 0.0 0.0 0.0 0.0 0.0 在该示例中,数据包在目标地址出现了100%的丢包。从数据上看是数据包没有到达,其实很有可能是目标服务器相关安全策略(比如防火墙、iptables 等)禁用了ICMP所致,导致目的主机无法发送任何应答。所以,该场景需要排查目标服务器的安全策略配置。 场景二:ICMP限速 示例数据如下。 [root@mycentos6 ~]# mtr --no-dns www.google.com My traceroute [v0.75] mycentos6.6 (0.0.0.0) Wed Jun 15 19:06:29 2016 Keys: Help Display mode Packets Pings Host Loss% Snt Last Avg Best Wrst StDev 1. 63.247.X.X 0.0% 10 0.3 0.6 0.3 1.2 0.3 2. 63.247.X.XX 0.0% 10 0.4 1.0 0.4 6.1 1.8 3. 209.51.130.213 0.0% 10 0.8 2.7 0.8 19.0 5.7 4. aix.pr1.atl.google.com 0.0% 10 6.7 6.8 6.7 6.9 0.1 5. 72.14.233.56 60.0% 10 27.2 25.3 23.1 26.4 2.9 6. 209.85.254.247 0.0% 10 39.1 39.4 39.1 39.7 0.2 7. 64.233.174.46 0.0% 10 39.6 40.4 39.4 46.9 2.3 8. gw-in-f147.1e100.net 0.0% 10 39.6 40.5 39.5 46.7 2.2 在该示例中,在第5跳出现了明显的丢包,但后续节点均未见异常。所以推断是该节点ICMP限速所致。该场景对最终客户端到目标服务器的数据传输不会有影响,所以,分析的时候可以忽略。 场景三:环路 示例数据如下。 [root@mycentos6 ~]# mtr —no-dns www.google.com My traceroute [v0.75] mycentos6.6 (0.0.0.0) Wed Jun 15 19:06:29 2016 Keys: Help Display mode Packets Pings Host Loss% Snt Last Avg Best Wrst StDev 1. 63.247.7X.X 0.0% 10 0.3 0.6 0.3 1.2 0.3 2. 63.247.6X.X 0.0% 10 0.4 1.0 0.4 6.1 1.8 3. 209.51.130.213 0.0% 10 0.8 2.7 0.8 19.0 5.7 4. aix.pr1.atl.google.com 0.0% 10 6.7 6.8 6.7 6.9 0.1 5. 72.14.233.56 0.0% 10 0.0 0.0 0.0 0.0 0.0 6. 72.14.233.57 0.0% 10 0.0 0.0 0.0 0.0 0.0 7. 72.14.233.56 0.0% 10 0.0 0.0 0.0 0.0 0.0 8. 72.14.233.57 0.0% 10 0.0 0.0 0.0 0.0 0.0 9 ??? 0.0% 10 0.0 0.0 0.0 0.0 0.0 在该示例中,数据包在第5跳之后出现了循环跳转,导致最终无法到达目标服务器。这通常是由于运营商相关节点路由配置异常所致。所以,该场景需要联系相应节点归属运营商处理。 场景四:链路中断 示例数据如下。 [root@mycentos6 ~]# mtr —no-dns www.google.com My traceroute [v0.75] mycentos6.6 (0.0.0.0) Wed Jun 15 19:06:29 2016 Keys: Help Display mode Packets Pings Host Loss% Snt Last Avg Best Wrst StDev 1. 63.247.7X.X 0.0% 10 0.3 0.6 0.3 1.2 0.3 2. 63.247.6X.X 0.0% 10 0.4 1.0 0.4 6.1 1.8 3. 209.51.130.213 0.0% 10 0.8 2.7 0.8 19.0 5.7 4. aix.pr1.atl.google.com 0.0% 10 6.7 6.8 6.7 6.9 0.1 5. ??? 0.0% 10 0.0 0.0 0.0 0.0 0.0 6. ??? 0.0% 10 0.0 0.0 0.0 0.0 0.0 7. ??? 0.0% 10 0.0 0.0 0.0 0.0 0.0 8. ??? 0.0% 10 0.0 0.0 0.0 0.0 0.0 9 ??? 0.0% 10 0.0 0.0 0.0 0.0 0.0 在该示例中,数据包在第4跳之后就无法收到任何反馈。这通常是由于相应节点中断所致。建议结合反向链路测试做进一步确认。该场景需要联系相应节点归属运营商处理。 链路测试步骤 通常情况下,链路测试步骤如下图所示。 相关步骤的详情说明如下。 步骤一:获取本地网络对应的公网IP 在客户端本地网络内访问淘宝IP地址库,获取本地网络对应的公网IP地址。 步骤二:正向链路测试(ping和mtr) 从客户端向目标服务器做如下测试。 从客户端向目标服务器域名或IP做持续的ping测试,建议至少ping 100个数据包,记录测试结果。 根据客户端操作系统的不同,使用WinMTR或mtr,设置测试目的地址为目标服务器域名或IP,然后进行链路测试,记录测试结果。 步骤三:反向链路测试(ping和mtr) 进入目标服务器系统内部做如下测试。 从目标服务器向步骤一获取的客户端IP做持续的ping测试,建议至少ping 100个数据包,记录测试结果。 根据目标服务器操作系统的不同,使用WinMTR或mtr,设置测试目的地址为客户端的IP地址,然后进行链路测试,记录测试结果。 步骤四:测试结果分析 参阅测试结果的简要分析,对测试结果进行分析。确认异常节点后,访问如下链接或其他可以查询IP归属地的网站,获取该异常节点的归属运营商信息。如果是客户端本地网络相关节点出现异常,则需要对本地网络进行相应排查分析。如果是运营商相关节点出现异常,则需要向运营商反馈问题。查询结果类似如下。 测试完成后的解决方法 当出现ping丢包或ping不通时,首先请参考云服务器ECS网络故障诊断,排查是否为网络故障。 如果确认是因系统中病毒导致使用ping命令测试ECS实例的IP地址间歇性丢包,则可参考使用ping命令测试ECS实例的IP地址间歇性丢包进行处理。 如果是因删除ECS实例的默认安全组规则导致无法ping通ECS实例,可参考删除ECS实例的默认安全组规则导致无法ping通ECS实例进行处理。 如果在Linux系统内核没有禁PING的情况下,是因系统内部防火墙策略设置导致ECS服务器PING不通。可参考Linux系统的ECS中没有禁PING却PING不通的解决方法。

1934890530796658 2020-03-25 23:17:54 0 浏览量 回答数 0

问题

DRDS 监控如何实现?

猫饭先生 2019-12-01 21:20:38 1185 浏览量 回答数 0

问题

能 ping 通但端口不通时端口可用性探测说明

boxti 2019-12-01 21:51:00 3793 浏览量 回答数 0

回答

作为一个javaer,我以前写过很多关于Linux的文章。但经过多年的观察,发现其实对于大部分人,有些东西压根就用不着。用的最多的,就是到线上排查个问题而已,这让人很是苦恼。那么,我们就将范围再缩小一下。 Linux生产环境上,最常用的一套“Sed“技巧 Linux生产环境上,最常用的一套“AWK“技巧 Linux生产环境上,最常用的一套“vim“技巧 Linux命令好像还真不少,根本原因就是软件多,也有像ag这样的命令想替代grep,但大多数命令古老而坚挺。不是因为这些软件设计的有多好,原因是一些软件最开始入驻了系统,时间久了,就变成了一种约定,这种习惯改变代价太大,就像把所有键盘的L和F换一下一样。 这片文章假定你已经了解大多数Linux命令,并了解操作系统的基本元素。如果你现在了解的命令还不足10个,下面的内容就不用看了。除了最基本的东西,本文列出一些对你的面试最常见的最能加分的地方,有些组合可能是你没见过的技巧。但本文仅仅是给出一个大致的轮廓和印象,为以后的专题性考察点作一个序。 本文中出现的所有命令,应该熟记并熟练使用。 几种比较典型的Linux系统 首先对目前的Linux版本有个大体的印象,大体分Desktop版和Server版,已经是百花齐放。 Ubuntu 最常见的Linux个人发行版,一位有情怀的南非富豪,有了钱你也可以这么做 CentOS 最常用Linux服务器发新版,RHEL的开放版本,因版权而生的轮子 Arch 滚动升级,海量二进制包,社区活跃,个人最爱 Gentoo 安装软件需要从源码开始编译,稳定,但用起来会很痛 LFS 从零构建Linux,跟着做一遍,Linux每根毛都看的清清楚楚 Kali 专做渗透用的,代表了发行版的一个发展路径,就是领域 首先要了解的概念 KISS Keep it Simple and Stupid,据说是哲学 一切皆文件 通常是文件的东西叫文件,进程、磁盘等也被抽象成了文件,比较离谱的管道、设备、socket等,也是文件。 这是Linux最重要的组织方式。 管道 | 分隔,前面命令的输出作为后面命令的输入,可以串联多个 重定向 < 将文件做为命令的输入 将命令的输出输出到文件 将命令的输出追加到文件 SHELL 首先确认你的shell,一般最常用的是bash,也有不少用csh,zsh等的,通过echo $SHELL可以看到当前用户的shell,对应的配置文件也要相应改变。 比如.zshrc,.bashrc 四大元素 进入linux,我们首先关注的是四个元素: 内存,cpu,存储,网络。 Linux提供了足够的命令,让你窥探它的每个角落。 接下来的命令都是些最常用的,不管精通不精通,想不起来要打屁股。 CPU 使用top查看cpu的load,使用shift+p按照cpu排序。 需要了解wa,us等都是什么意思 使用uptime查看系统启动时间和load,load是什么意思呢? 什么算是系统过载? 这是个高频问题,别怪我没告诉你 ps命令勃大茎深,除了查进程号外,你还需要知道R、S、D、T、Z、<、N状态位的含义 top和ps很多功能是相通的,比如watch "ps -mo %cpu,%mem,pid,ppid,command ax" 相当于top的进程列表; top -n 1 -bc 和ps -ef的结果相似。 有生就有死,可以用kill杀死进程。 对java来说,需要关注kill -9、kill -15、kill -3的含义,kill的信号太多了,可以用kill -l查看,搞懂大多数信号大有裨益。 如果暂时不想死,可以通过&符号在后台执行,比如tail -f a.log &。 jobs命令可以查看当前后台的列表,想恢复的话,使用fg回到幕前。 这都是终端作业,当你把term关了你的后台命令也会跟着消失,所以想让你的程序继续执行的话, 需要nohup命令,此命令需要牢记 mpstat 显示了系统中 CPU 的各种统计信 了解cpu亲和性 内存 free -m 命令,了解free、used、cached、swap各项的含义 cat /proc/meminfo 查看更详细的内存信息 细心的同学可能注意到,CPU和内存的信息,通过top等不同的命令显示的数值是一样的。 slabtop 用来显示内核缓存占用情况,比如遍历大量文件造成缓存目录项。 曾在生产环境中遇到因执行find /造成dentry_cache耗尽服务器内存。 vmstat 命令是我最喜欢也最常用的命令之一,可以以最快的速度了解系统的运行状况。 每个参数的意义都要搞懂。 swapon、swapoff 开启,关闭交换空间 sar 又一统计类轮子,一般用作采样工具 存储 使用df -h查看系统磁盘使用概况 lsblk 列出块设备信息 du 查看目录或者文件大小 网络 rsync 强大的同步工具,可以增量哦 netstat 查看Linux中网络系统状态信息,各种 ss 它能够显示更多更详细的有关TCP和连接状态的信息,而且比netstat更快速更高效。 curl、wget 模拟请求工具、下载工具。 如wget -r http://site 将下载整个站点 ab Apache服务器的性能测试工具 ifstat 统计网络接口流量状态 nslookup 查询域名DNS信息的工具,在内网根据ip查询域名是爽爆了 nc 网络工具中的瑞士军刀,不会用真是太可惜了 arp 可以显示和修改IP到MAC转换表 traceroute 显示数据包到主机间的路径,俗称几跳,跳的越少越快 tcpdump 不多说了,去下载wireshark了 wall 向当前所有打开的终端上输出信息。 使用who命令发现女神正在终端上,可以求爱 网络方面推荐安装体验一下kaliLinux,上面的工具会让你high到极点。 如何组织起来 linux的命令很有意思,除了各种stat来监控状态,也有各种trace来进行深入的跟踪,也有各种top来统计资源消耗者,也有各种ls来查看系统硬件如lsblk、lsusb、lscpi。基本上跟着你的感觉走,就能找到相应的工具,因为约定是系统中最强大的导向。 Linux有个比较另类的目录/proc,承载了每个命令的蹂躏。像sysctl命令,就是修改的/proc/sys目录下的映射项。不信看看find /proc/sys -type f | wc -l和sysctl -a| wc -l的结果是不是很像? /proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。只不过以文件系统的方式为访问系统内核数据的操作提供接口。系统的所有状态都逃不过它的火眼金睛。例如: cat /proc/vmstat 看一下,是不是和vmstat命令的输出很像? cat /proc/meminfo 是不是最全的内存信息 cat /proc/slabinfo 这不就是slabtop的信息么 cat /proc/devices 已经加载对设备们 cat /proc/loadavg load avg原来就躺在这里啊 cat /proc/stat 所有的CPU活动信息 ls /proc/$pid/fd 静静地躺着lsof的结果 一般排查问题的方法 一般排查问题也是围绕着内存cpu等几个元素去排查。下图是一张大体的排查故障或者性能问题的过程,看图,不多说。 应用场景举例 下面举例从具体应用场景来说明各种命令的组合应用,此类场景数不胜数,需要个人积累。但强烈建议将sed和awk练的熟练一些。 怎么查看某个Java进程里面占用CPU最高的一个线程具体信息? 获取进程中占用CPU最高的线程,计为n。 使用top top -H -p pid,肉眼观察之 使用ps ps -mo spid,lwp,stime,time,%cpu -p pid 将线程号转化成十六进制printf 0x%x n 使用jstack找到相应进程,打印线程后的100行信息 jstack -l pid| grep spid -A 100 统计每种网络状态的数量 netstat -ant | awk '{print $6}' | sort | uniq -c | sort -n -k 1 -r![5.jpg](https://ucc.alicdn.com/pic/developer-ecology/655b656daf0344d58dbfd798fe1460b8.jpg) 首先使用netstat查看列表,使用’awk’截取第六列,使用uniq进行统计,并对统计结果排序。当然,也可以这样。 netstat -ant | awk '{arr[$6]++}END{for(i in arr){print arr[i]" "i }}' | sort -n -k 1 -r 这和“分析apache日志,给出当日访问ip的降序列表”是一样的问题。 怎么查看哪个进程在用swap 首先要了解/proc/$pid/smaps里有我们所需要的各种信息,其中Swap字段即是我们所需要的。只要循环遍历一下即可。 for i in `cd /proc;ls |grep "^[0-9]"|awk ' $0 >100'` ;do awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M"}' /proc/$i/smaps ;done |sort -k2nr End 软件领域有两种人才,一种是工程型的,一种是研究型的。在Linux领域里,相对于搞内核研究的来说,搞命令行的就属于工程型。工程型也有他自己的苦衷,比如,背诵命令就挺痛苦的,一般来说不太推荐背诵,第一覆盖的面不广,第二记的快忘的也快,浪费脑细胞。牛逼的记法就是用,用时间来冲淡烟云,见微知著,并体验其中的喜悦。爱她并天天抱她上床,真爱才成。 原创:小姐姐味道。

剑曼红尘 2020-04-01 11:01:13 0 浏览量 回答数 0
阿里云大学 云服务器ECS com域名 网站域名whois查询 开发者平台 小程序定制 小程序开发 国内短信套餐包 开发者技术与产品 云数据库 图像识别 开发者问答 阿里云建站 阿里云备案 云市场 万网 阿里云帮助文档 免费套餐 开发者工具 云栖号物联网 小程序开发制作 视频内容分析 企业网站制作 视频集锦 代理记账服务 2020阿里巴巴研发效能峰会 企业建站模板 云效成长地图 高端建站 云栖号弹性计算 阿里云云栖号 云栖号案例 云栖号直播