无法ping通ECS服务器公网IP的排查方法

简介: 无法ping通ECS服务器公网IP的排查方法

无法ping通ECS实例的原因较多,您可以参考九河云编辑的文章进行排查。

问题现象

本地客户端无法ping通目标ECS实例公网IP,例如:

  • 本地客户端为Linux系统,ping目标ECS实例公网IP时无响应,如下所示:

  • 本地客户端为Windows系统,ping目标ECS实例公网IP时提示请求超时错误,如下所示:

检查ECS实例状态

只有当ECS实例状态为运行中时,才能对外提供业务访问。检查步骤如下:

  1. 登录ECS管理控制台。
  2. 在左侧导航栏,选择实例与镜像>实例。
  3. 在顶部菜单栏左上角处,选择地域。
  4. 在实例列表页面,检查目标实例的状态。


1.目标实例不是运行中状态,请根据实例状态,选择对应的解决方案。更多信息,请参见实例的生命周期。


2.目标实例是运行中状态,请执行检查ECS实例安全组规则。


检查ECS实例安全组规则

ECS实例的安全组中默认包含开放ICMP协议的规则,即允许ping通ECS实例,若该规则被删除,则无法ping通ECS实例。您可以通过以下步骤进行排查:

  1. 登录ECS管理控制台
  2. 在左侧导航栏,选择实例与镜像 > 实例
  3. 在页面左侧顶部,选择目标资源所在的地域。

  4. 在ECS实例列表页面,单击目标ECS实例ID。
  5. 在ECS实例详情页面,单击安全组页签。
  6. 安全组列表页签下,单击安全组ID。
  7. 在安全组规则页面,查看入方向规则是否存在ICMP协议的安全组规则。

1.不存在ICMP协议的安全组规则,请添加以下入方向安全组规则。具体操作,请参见添加安全组规则。


授权策略选择允许,优先级保持默认,协议类型选择全部ICMP(IPv4),端口范围为-1/-1,授权对象:建议仅允许特定的IP访问。


2.存在ICMP协议的安全组规则,请执行检查ECS实例防火墙配置。


检查ECS实例防火墙配置

请根据ECS实例操作系统,选择相应的检查方式。

检查Linux系统内核参数和防火墙配置

检查Windows防火墙配置

Linux系统是否允许ping由内核参数icmp_echo_ignore_all和防火墙设置共同决定,任何一个禁止,都会无法ping通。

检查Linux系统内核参数

  1. 使用VNC远程连接ECS实例。
    具体操作,请参见使用VNC登录实例

2.执行如下命令,查看内核参数icmp_echo_ignore_all值。

cat /proc/sys/net/ipv4/icmp_echo_ignore_all
  • 若回结果为0,表示允许所有的ICMP请求,请执行检查Linux防火墙配置
  • 若返回结果为1,表示禁止所有的ICMP请求,请执行步骤3
  1. 执行如下命令,修改内核参数icmp_echo_ignore_all值为0允许所有ICMP请求。
  1. 临时允许
echo 0 >/proc/sys/net/ipv4/icmp_echo_ignore_all

2.永久允许

echo net.ipv4.icmp_echo_ignore_all=0 >> /etc/sysctl.conf
sysctl -p

检查Linux防火墙配置

  1. 使用VNC远程连接ECS实例。
    具体操作,请参见使用VNC登录实例
  2. 执行以下命令,查看防火墙规则。
iptables -L

1.若返回如下结果,表示ICMP对应规则未被禁止,请执行检查ECS实例CPU使用率或带宽使用率

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     icmp --  anywhere             anywhere             icmp echo-request        
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  
ACCEPT     icmp --  anywhere             anywhere             icmp echo-reque

2.若返回结果ICMP对应规则被禁止,请执行以下命令,启用对应规则。

#Chain INPUT
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
#Chain OUTPUT
iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT

检查ECS实例CPU使用率或带宽使用率

检查外网相关资源使用率,如公网带宽使用率达到100%等。

  • 突发性能实例性能约束模式,当CPU使用率达到100%时可能导致无法ping通或ping丢包,具体信息,请参见突发性能实例概述
  • EIP或固定公网IP资源被占满时,可能会导致ping操作被限速丢弃而无法ping通。

检查云安全中心是否存在安全告警

请检查云安全中心是否有异常的安全告警通知,被恶意入侵也会有可能导致ECS实例无法ping通。更多信息,请参见什么是云安全中心

检查您的实例是否为中国香港或海外实例

在中国内地ECS实例访问中国香港或海外ECS实例时,链路质量会有可能受到运营商线路影响,建议过一段时间再次尝试。

检查是否为某个客户端环境ping不通

如果只有某个客户端环境ping不通,其他客户端环境可以ping通。建议在客户端和ECS实例中进行链路测试的。具体操作,请参见使用ping命令丢包或不通时的链路测试方法

检查域名是否备案或域名解析配置

如果可以ping通公网IP,但是ping不通域名,可能是域名没有备案或者域名解析异常导致。


根据工信部要求,域名解析至中国内地服务器必须先完成网站备案,才能正常开通网站访问。因此,网站在未取得备案号之前不允许开通访问,即未备案成功的网站均不能对外开通Web服务,否则将被阿里云监测系统识别并阻断网站服务。


  • 如果域名未备案,请先进行备案。更多信息,请参见什么是ICP备案。


  • 如果域名已备案,请检查域名解析是否失效。更多信息,请参见解析生效测试方法和域名解析不生效的排查思路。


相关实践学习
通义万相文本绘图与人像美化
本解决方案展示了如何利用自研的通义万相AIGC技术在Web服务中实现先进的图像生成。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
6月前
|
JSON 监控 API
在线网络PING接口检测服务器连通状态免费API教程
接口盒子提供免费PING检测API,可测试域名或IP的连通性与响应速度,支持指定地域节点,适用于服务器运维和网络监控。
710 0
|
弹性计算 安全 Linux
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
阿里云国际版使用ping命令测试ECS云服务器不通的排查方法
|
弹性计算 安全 Linux
阿里云国际版ECS云服务器ping不通的原因分析
阿里云国际版ECS云服务器ping不通的原因分析
|
Linux 网络安全 Android开发
高级 ping 命令及技巧
Ping命令是一种常用的网络诊断工具,用于测试网络连接的可达性和延迟等信息
1834 57
|
Linux iOS开发 网络架构
如何使用 Ping 命令监测网络丢包情况?
如何使用 Ping 命令监测网络丢包情况?
12243 48
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
1694 20
|
Python 机器学习/深度学习 人工智能
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
【10月更文挑战第1天】本文通过构建一个简单的强化学习环境,演示了如何创建和训练智能体以完成特定任务。我们使用Python、OpenAI Gym和PyTorch搭建了一个基础的智能体,使其学会在CartPole-v1环境中保持杆子不倒。文中详细介绍了环境设置、神经网络构建及训练过程。此实战案例有助于理解智能体的工作原理及基本训练方法,为更复杂应用奠定基础。首先需安装必要库: ```bash pip install gym torch ``` 接着定义环境并与之交互,实现智能体的训练。通过多个回合的试错学习,智能体逐步优化其策略。这一过程虽从基础做起,但为后续研究提供了良好起点。
2195 4
手把手教你从零开始构建并训练你的第一个强化学习智能体:深入浅出Agent项目实战,带你体验编程与AI结合的乐趣
|
Linux iOS开发 MacOS
如何设置 Ping 命令的超时时间?
如何设置 Ping 命令的超时时间?
2457 3
|
运维 监控 Linux
别再只会使用简单的 ping 命令了,Linux 中这些高级 ping 命令可以提高工作效率!
在 Linux 系统中,ping 命令不仅用于检测网络连通性和延迟,还拥有多种高级选项和技巧,如定制数据包大小、获取详细统计信息、持续 ping、指定源地址和多目标 ping。本文详细介绍这些高级命令及其在性能测试、故障排查和网络监控中的实际应用,帮助你提升网络管理效率。
1224 3

热门文章

最新文章