概述 本文主要介绍使用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 * * *
分析 因为该节点经查询后归属北京移动,需要您自行向运营商反馈,或者提交工单做进一步排查分析。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。