You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法从SCM服务器克隆仓库 能ping通IP但报No route to host怎么办

同局域网可ping通SCM-Manager但克隆仓库报No route to host解决方法

注:可正常ping通服务器IP说明三层网络路由连通性正常,该场景下的No route to host报错基本为TCP端口监听异常、端口被拦截导致,无需排查IP冲突、静态路由配置类问题。

按以下优先级排查:

  • 确认SCM-Manager服务已对外监听端口
    SCM-Manager为Java应用,默认开放两个端口:HTTP访问端口8080、SSH克隆端口2222。在SCM服务器上执行命令ss -tulnp | grep java查看监听状态:
    • 如果对应端口的Local Address列显示为127.0.0.1:8080/127.0.0.1:2222,说明服务仅绑定本地回环地址,局域网其他设备无法访问。
    • 修复方式:修改SCM-Manager配置文件中的server.address(HTTP)、ssh.bindAddress(SSH)配置项为0.0.0.0,重启SCM服务即可。
  • 放通服务器防火墙的SCM对应端口
    系统默认防火墙会拦截未授权的TCP端口访问,这是该问题最高发的原因。如果你手动修改过SCM的默认服务端口,将以下命令中的8080、2222替换为你实际配置的端口即可:
    • 若服务器使用firewalld(CentOS/RHEL/Fedora默认防火墙),依次执行以下命令放通端口:
      firewall-cmd --add-port=8080/tcp --permanent
      firewall-cmd --add-port=2222/tcp --permanent
      firewall-cmd --reload
      
    • 若服务器使用ufw(Ubuntu/Debian默认防火墙),依次执行以下命令放通端口:
      ufw allow 8080/tcp
      ufw allow 2222/tcp
      ufw reload
      
    • 如果服务器安装了第三方安全防护软件,需同步在软件规则中放通上述两个端口。
  • 核对克隆地址的端口正确性
    检查SCM-Manager仓库页面给出的克隆地址,确认地址中带的端口和服务实际监听端口一致:HTTP克隆不要默认用80端口、SSH克隆不要默认用22端口,SCM-Manager默认不使用这两个端口提供服务。
  • 客户端侧连通性验证
    在执行克隆操作的工作站上,用telnet 192.168.1.172 8080、telnet 192.168.1.172 2222命令测试端口连通性:
    • 如果telnet能连通,再执行clone操作即可正常拉取代码,后续commit、push操作只要账号权限配置正确即可正常使用。
    • 如果telnet依然报错,临时关闭客户端本地防火墙重试,同时检查客户端是否配置了全局代理、静态路由规则拦截了对应网段的TCP请求。
  • 局域网ACL规则检查
    如果是企业办公局域网,确认上联交换机、路由器没有配置端口ACL规则,拦截了终端到SCM服务器8080、2222端口的TCP请求。

内容的提问来源于stack exchange,提问作者Tushar Bhattacharyya

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.29 17:06:27