能够ping通服务器的同时端口不通的排查方法
nanshan 2024-10-07 11:01 41 浏览 0 评论
概述
当您在客户端访问目标服务器时,如果能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.
相关推荐
- 如何为MySQL服务器和客户机启用SSL?
-
用户想要与MySQL服务器建立一条安全连接时,常常依赖VPN隧道或SSH隧道。不过,获得MySQL连接的另一个办法是,启用MySQL服务器上的SSL封装器(SSLwrapper)。这每一种方法各有其...
- Mysql5.7 出现大量 unauthenticated user
-
线上环境mysql5.7突然出现大量unauthenticateduser,进mysql,showprocesslist;解决办法有:在/etc/hosts中添加客户端ip,如192.16...
- MySQL 在 Windows 系统下的安装(mysql安装教程windows)
-
更多技术文章MySQL在Windows系统下的安装1.下载mysql和Framework链接链接:百度网盘请输入提取码提取码:6w3p双击mysql-installer-communit...
- MySql5.7.21.zip绿色版安装(mysql数据库绿色版安装)
-
1、去网上下载满足系统要求的版本(mysql-5.7.21-winx64.zip)2、直接解压3、mysql的初始化(1)以管理员身份运行cmd,在mysql中的bin目录下shift+右键-在...
- MySQL(8.0)中文全文检索 (亲测有效)
-
在一堆文字中找到含有关键字的应用。当然也可以用以下语句实现:SELECT*FROM<表名>WHERE<字段名>like‘%ABC%’但是它的效率太低,是全盘扫描。...
- 新手教程,Linux系统下MySQL的安装
-
看了两三个教程。终于在哔哩哔哩找到一个简单高效的教程,成功安装,up主名叫bili逍遥bili,感兴趣可以去看看。下面这个是我总结的安装方法环境:CentOS764位1.下载安装包,个人觉得在...
- 麒麟服务器操作系统安装 MySQL 8 实战指南
-
原文连接:「链接」Hello,大家好啊,今天给大家带来一篇麒麟服务器操作系统上安装MySQL8的文章,欢迎大家分享点赞,点个在看和关注吧!MySQL作为主流开源数据库之一,被广泛应用于各种业务...
- 用Python玩转MySQL的全攻略,从环境搭建到项目实战全解析
-
这是一篇关于“MySQL数据库入门实战-Python版”的教程,结合了案例实战分析,帮助初学者快速掌握如何使用Python操作MySQL数据库。一、环境准备1.安装Python访问Pytho...
- 安装MySQL(中标麒麟 安装mysql)
-
安装MySQL注意:一定要用root用户操作如下步骤;先卸载MySQL再安装1.安装包准备(1)查看MySQL是否安装rpm-qa|grepmysql(2)如果安装了MySQL,就先卸载rpm-...
- Mysql最全笔记,快速入门,干货满满,爆肝
-
目录一、MySQL的重要性二、MySQL介绍三、软件的服务架构四、MySQL的安装五、SQL语句六、数据库相关(DDL)七、表相关八、DML相关(表中数据)九、DQL(重点)十、数据完...
- MAC电脑安装MySQL操作步骤(mac安装mysqldb)
-
1、在官网下载MySQL:https://dev.mysql.com/downloads/mysql/根据自己的macOS版本,选择适配的MySQL版本根据自己需求选择相应的安装包,我这里选择macO...
- mysql主从(mysql主从切换)
-
1、本章面试题什么是mysql主从,主从有什么好处什么是读写分离,有什么好处,使用mycat如何实现2、知识点2.1、课程回顾dubboORM->MVC->RPC->SOApro...
- 【linux学习】以MySQL为例,带你了解数据库
-
做运维的小伙伴在日常工作中难免需要接触到数据库,不管是MySQL,mariadb,达梦还是瀚高等其实命令都差不多,下面我就以MySQL为例带大家一起来了解下数据库。有兴趣的小伙伴不妨评论区一起交流下...
- 玩玩WordPress - 环境简介(0)(玩玩网络科技有限公司)
-
简介提到开源博客系统,一般都会直接想到WordPress!WordPress是使用PHP开发的,数据库使用的是MySQL,一般会在Linux上运行,Nginx作为前端。这时候就需要有一套LNMP(Li...
- 服务器常用端口都有哪些?(服务器端使用的端口号范围)
-
下面为大家介绍一下,服务器常用的一些默认端口,以及他们的作用: 21:FTP服务所开放的端口,用于上传、下载文件。 22:SSH端口,用于通过命令行模式远程连接Linux服务器或vps。 23:...
你 发表评论:
欢迎- 一周热门
-
-
极空间如何无损移机,新Z4 Pro又有哪些升级?极空间Z4 Pro深度体验
-
如何在安装前及安装后修改黑群晖的Mac地址和Sn系列号
-
UOS服务器操作系统防火墙设置(uos20关闭防火墙)
-
日本海上自卫队的军衔制度(日本海上自卫队的军衔制度是什么)
-
爱折腾的特斯拉车主必看!手把手教你TESLAMATE的备份和恢复
-
10个免费文件中转服务站,分享文件简单方便,你知道几个?
-
如何修复用户配置文件服务在 WINDOWS 上登录失败的问题
-
手机如何设置与显示准确时间的详细指南
-
【系统配置】信创终端挂载NAS共享全攻略:一步到位!
-
[常用工具] OpenCV_contrib库在windows下编译使用指南
-
- 最近发表
- 标签列表
-
- linux 查询端口号 (58)
- docker映射容器目录到宿主机 (66)
- 杀端口 (60)
- yum更换阿里源 (62)
- internet explorer 增强的安全配置已启用 (65)
- linux自动挂载 (56)
- 禁用selinux (55)
- sysv-rc-conf (69)
- ubuntu防火墙状态查看 (64)
- windows server 2022激活密钥 (56)
- 无法与服务器建立安全连接是什么意思 (74)
- 443/80端口被占用怎么解决 (56)
- ping无法访问目标主机怎么解决 (58)
- fdatasync (59)
- 405 not allowed (56)
- 免备案虚拟主机zxhost (55)
- linux根据pid查看进程 (60)
- dhcp工具 (62)
- mysql 1045 (57)
- 宝塔远程工具 (56)
- ssh服务器拒绝了密码 请再试一次 (56)
- ubuntu卸载docker (56)
- linux查看nginx状态 (63)
- tomcat 乱码 (76)
- 2008r2激活序列号 (65)