百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术文章 > 正文

能够ping通服务器的同时端口不通的排查方法

ahcoder 2025-03-26 09:20 19 浏览

概述

当您在客户端访问目标服务器时,如果能ping通,但业务端口无法访问,您可以参见以下方法进行排查。


步骤一:实例安全组检查

1. 登录ECS管理控制台,单击实例

2. 在顶部菜单栏左上角处,选择地域。

3. 在实例列表页面,单击对应的实例ID。

4、在实例详情页面,单击安全组,在安全组列表区域,单击对应的安全组ID。

5. 在安全组规则页面,单击入方向,查看访问规则,查看是否有端口相关的授权。

o 如果没有相应端口的授权,请添加相应端口的授权,详情请参见添加安全组规则

o 如果有相应端口的授权,请检查授权对象是否允许本地IP地址的访问。

步骤二:端口相关服务检查

通过VNC远程连接登录目标服务器之后,执行以下命令,检查端口是否被监听。

说明

· Linux系统如何通过VNC远程连接到Linux实例,请参见通过VNC远程连接登录Linux实例

· Windows系统如何通过VNC远程连接到Windows实例,请参见通过VNC远程连接Windows实例

netstat -ntpl|grep [$Port]

说明:[$Port]为相应的端口号。


系统显示类似如下。

说明

· 0.0.0.0代表本机上可用的任意地址。比如,0.0.0.0:135表示本机上所有地址的135端口。

· tcp 0.0.0.0:80表示在所有的可用接口上监听TCP的80端口

· 如果返回结果为空,说明端口对应的服务未启动,请将相应的服务启动即可。

· 如果有返回结果,说明服务为启动状态。在确认服务可以重启的情况下,重启相应的服务,待服务重启完成后,再测试端口的连通性。


步骤三:检查目标服务器的防火墙配置

Linux系统

通过VNC远程连接登录目标服务器之后,执行以下命令,检查防火墙配置。

iptables -nL

如果返回结果中存在相应端口的配置规则,可删除相应的规则或者先关闭防火墙,然后再测试端口连通性。关闭防火墙的具体操作如下:

1. 执行以下命令,查看防火墙状态。

systemctl status firewalld.service


2. 执行以下命令,关闭防火墙。

systemctl stop firewalld.service


3. 执行以下命令,设置开机不自启防火墙服务。

systemctl disable firewalld.service


Windows系统

先关闭防火墙,然后再测试端口连通性,具体操作如下:

1. 通过VNC远程连接登录目标服务器,在控制面板中打开Windows防火墙

2. 在Windows防火墙窗口,单击启动或关闭防火墙,进入自定义设置界面。

3. 将专用网络设置公用网络设置设置为关闭 Windows 防火墙,单击确定

步骤四:通过探测工具进行检查

端口无法访问可能是链路中的相关节点拦截了端口所致,请利用端口可用性探测的相关工具进行测试,验证是否有节点拦截了端口。

端口可用性探测步骤

通常情况下,您可以参见以下步骤进行探测:

1. 根据上文所述,使用对应工具对目标服务器和端口进行可用性探测。

2. 排查分析探测结果,确认问题根源。如果相关端口在某一跳被阻断,且其后各跳均不会返回数据。据此就可以判定出异常节点。

3. 如果确实存在异常节点,您可以参见以下两种方式进行解决。

· 通过淘宝IP地址库等IP地址查询网站获取相应节点的归属运营商及网络。

· 或者您也可以提交工单,请驰网技术支持协助您向相关运营商反馈问题。

说明:提交工单时,请一并提交端口可用性的探测结果。


探测结果的案例分析

此处介绍两个探测结果的案例,案例中包括探测结果和分析。

案例一

探测结果如下,目标端口在第3跳之后就没有数据返回。

C:\>tracetcp www.idc02.com:135
Tracing route to 115.X.X.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 * * *

案例分析

因为该节点经查询后归属北京移动,需要您自行向运营商反馈,或者提交工单做进一步排查分析。

更多信息

不同的操作系统,端口可用性探测所使用的工具有所不同。此处分别介绍如下系统中的端口可用性探测工具。

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,可以参考以下步骤安装。

1. tracetcp的使用依赖于WinPcap library。因此,您需要前往官网下载WinPcap library。

2. 前往tracetcp官网下载最新版tracetcp。

3. 将下载的tracetcp相关文件直接解压到C:\Windows目录。

说明:您也可以解压到非系统目录,但是需要手工修改系统环境变量,以确保指令可以直接调用。


使用方法

双击打开tracetcp应用程序,tracetcp的常见用法如下:

tracetcp [$IP]:[$Port]

说明

· [$IP]指目标服务器的IP地址或者域名。

· [$Port]指需要探测的目标端口。

· 关于更多tracetcp参数说明,您可以通过tracetcp -?命令查看帮助。

测试示例

tracetcp的示例命令和返回结果如下:

C:\ >tracetcp www.idc02.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.

相关推荐

安装 Debian 10 后要做的30件事(安装debian sid)

1.修复CD-ROM错误仅从DVD安装Debian的用户才需要此修复程序,因为从DVD安装Debian之后,每次尝试更新系统时都会出现错误“存储库cdrom没有发行文件”:要解决此错误,请打开“软...

Linux 的 18 个装 B 命令,记得全部搂一遍

1、sl命令你会看到一辆火车从屏幕右边开往左边……安装$sudoapt-getinstallsl运行$sl命令有-alFe几个选项,-aAnaccidentseemsto...

Fedora 39提高虚拟机max_map_count以满足一些Steam游戏

有一个关于Fedora39提升其默认vm的建议正在进行中。max_map_count,以满足通过Valve的SteamPlay在Linux上运行的一些Windows游戏。Fedora工程和指导委员...

Linux面板,宝塔Linux正式版 7.9.4发布

【增加】增加日志审计功能【增加】增加对7z格式压缩包的支持【增加】数据库增加PgSQL管理模型【增加】通知设置-消息通道增加微信公众号模块【增加】创建网站时增加一键部署【增加】完善首页【安全风险】的扫...

真榨干Switch!NS被刷Linux系统超频成功运行鬼泣5和战神等游戏

NS的性能已经是被玩家吐槽的不想再吐槽了,都希望任天堂快出新机。而任天堂高管之前则表示switch的性能完全是够用的,是玩家和开发者要求太高了!那么具体情况是如何呢?用实际例子告诉大家switch的真...

Slimbook Manjaro游戏本发布:RTX 4060显卡,Linux定制系统

IT之家2月16日消息,新款SlimbookManjaro游戏笔记本电脑于近日发布,配备英特尔酷睿i7-13620H处理器、英伟达GeForceRTX4060显卡、15.6...

Alienware高层认为Steam游戏机将会为Linux游戏销量带来30倍提升

Diana认为,随着Steam游戏机的推出,将会有越来越多的开发者在Linux上使用OpenGL来开发游戏。Diana预计将有700多部游戏将在SteamOS上的Steam游戏机上发行,其他平台上于...

通过将PS4注入自编译Linux系统,开发者成功运行Steam游戏

本世代的家用机和上世代的一个重要的区别就是架构十分接近x86,而不是PS3/Xbox360世代的的自有架构Cell、Xenon。自从出世以来关于运行PC游戏的讨论一直没有停息,各路好手也不断的尝试更...

在国产优麒麟(Linux)上使用 Steam 畅玩大型游戏

Steam平台是目前全球最大的综合性数字发行平台之一,由Counter-Strike(CS)的开发公司Valve聘请出的BT软件编写者Bram.Cohen亲自开发创建。原先只是作为...

大神给PS4装了“Linux”系统 竟然还能玩Steam游戏!

PS4游戏虽然挺多,但是对比起Steam平台来说,就有点相形见绌了。这不日前,就有一位国外大神努力研究之后,竟然给PS4装上了Linux系统,这还不是最关键的,关键的是他竟然还成功的在Steam平台玩...

Linux系统之安装Ninvaders太空入侵者小游戏

Linux系统之安装Ninvaders太空入侵者小游戏1.1Ninvaders小游戏简介1.2项目预览2.1本地环境规划2.2本次实践介绍3.1检查系统镜像源3.2更新软件列表4.1安装...

还未正式发售:《文明7》Linux版已经被破解!

在万众瞩目的期待中,《文明7》这一备受期待的策略游戏巨作即将于2月11日(国区则为2月12日)正式发售。对于许多热爱这一系列的玩家而言,这无疑是一个振奋人心的消息。预购了豪华版和奠基者版的幸运儿们,更...

在国产系统(Linux)上,安装运行Steam游戏详解

前言经过多年发展,Linux已经相当成熟!只是一直以来,使用者相对不多,软件、游戏等厂商不够重视。因此,能直接在Linux上玩的游戏不多!但是随着国产化的推进,越来越多的人开始接触和使用Linux,比...

在 V 社和 NVIDIA 的联手下,Linux 游戏体验已经接近 Windows 了

出于一些原因,越来越多的用户不再喜欢Windows系统。但如果你是一名PC玩家,似乎只有Windows一个选择。其实不然,在Windows的阴影下,一个操作系统正在游戏方面暗自发力,等待...

Linux 游戏中间层 Proton 7.0-4 发布:新增《祖玛的复仇》等

IT之家8月21日消息,Proton是一个基于Wine修改版的工具分发,由Valve设计和提供资金,可兼容Windows平台游戏。近日,Proton7.0-4已在GitHu...