You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

Ubuntu 22.04.4服务器无法克隆Git仓库且域名解析失败求助

Ubuntu 22.04.4服务器无法克隆Git仓库且域名解析失败求助

看起来你的问题核心就是域名解析失败了——不管是Git克隆还是ping都因为找不到域名对应的IP才报错的。结合你给出的resolvectl status输出,我给你几个具体的排查和解决步骤,你可以一步步试:

  • 先测试当前配置的DNS服务器是否能正常工作
    你当前的DNS服务器是147.75.16.11和147.75.16.12,先直接用这两个服务器解析域名试试,在服务器上运行:

    dig gitlab.com @147.75.16.11
    dig gitlab.com @147.75.16.12
    

    如果这两个命令都没有返回正常的IP结果,要么是这两个DNS服务器本身故障,要么是你的服务器到这些DNS的网络连接被阻断了。

  • 临时切换公共DNS快速验证
    可以临时把公共DNS(比如谷歌的8.8.8.8或者Cloudflare的1.1.1.1)加到网卡配置里,测试是不是DNS服务器的问题:

    sudo resolvectl dns ens192 8.8.8.8
    

    然后再运行ping google.com或者git clone https://gitlab.com/jillii/XXXXX.git试试。如果能正常解析和克隆,那基本可以确定是原来的DNS服务器出问题了,接下来就需要修改永久的DNS配置。

  • 修改永久DNS配置(针对Netplan)
    Ubuntu 22.04默认用Netplan管理网络,你可以找到/etc/netplan目录下的配置文件(一般是类似00-installer-config.yaml的文件),编辑它的nameservers部分:

    network:
      ethernets:
        ens192:
          addresses: [你的服务器IP/子网掩码]
          nameservers:
            addresses: [8.8.8.8, 1.1.1.1] # 替换成你想用的DNS
          routes:
            - to: default
              via: 你的网关IP
      version: 2
    

    保存后运行sudo netplan apply让配置生效,之后再测试解析是否正常。

  • 检查防火墙是否阻断了DNS请求
    DNS请求默认用UDP 53端口,你可以检查服务器的防火墙规则,比如用sudo ufw status看看有没有禁止出站的53端口。也可以用telnet 147.75.16.11 53测试能不能连接到DNS服务器的53端口,如果连接失败,可能是本地防火墙或者上游网络策略阻断了DNS流量。

  • 重启域名解析服务
    有时候systemd-resolved服务可能出现异常,重启一下试试:

    sudo systemctl restart systemd-resolved
    

    重启后用resolvectl status确认服务状态正常,再测试域名解析。

备注:内容来源于stack exchange,提问作者Jillian Hoenig

火山引擎 最新活动