Ubuntu 20.04 server不能ping,提示“Temporary failure in name resolution”的解决方法

Posted donaldsy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Ubuntu 20.04 server不能ping,提示“Temporary failure in name resolution”的解决方法相关的知识,希望对你有一定的参考价值。

问题类似于:【Ubuntu 20.04 server: Temporary failure in name resolution (LAN only)】

 

文章目录

 


1、相关尝试

1-1、修改 /etc/netplan/00-installer-config.yaml 文件

  • 修改 sudo vim /etc/netplan/00-installer-config.yaml文件,新增 nameservers 相关配置(如下图) ,文件名不一定是 00-installer-config.yaml,每一个机器不一样,需要通过ll /etc/netplan/ 命令查看该路径下的文件。
    \'Ubuntu
  • 修改该文件后,执行 sudo network apply命令,仍不能ping,未能解决问题

1-2、创建配置文件 /etc/resolv.conf

  • 使用 sudo vim /etc/resolv.conf,打开文件后,写入后,不能保存
  • 使用 sudo touch /etc/resolv.conf先创建该文件,不能创建

1-3、修改 /etc/systemd/resolved.conf 文件

  • sudo vim /etc/systemd/resolved.conf命令打开文件,之后修改

    [Resolve]
    DNS=8.8.8.8
    
  • 修改完后,重启相关服务,依次执行如下命令

    sudo systemctl daemon-reload
    sudo systemctl restart systemd-networkd.service
    sudo systemctl restart systemd-resolved.service
    
  • 经过如上设置,之后可以ping,但该方法重启后失效。。。再次执行 sudo systemctl restart systemd-resolved.service, 即可工作。

  • 由于为什么这么设置后可以解决DNS解析问题,所以有了自己探索过程:

    • 1、经过测试,发现不用配置 /etc/systemd/resolved.conf 文件,直接键入 sudo systemctl restart systemd-resolved.service命令,也能工作(不知道是否和 /etc/netplan/00-installer-config.yaml文件的修改有关)
    • 2、经过测试, /etc/netplan/00-installer-config.yaml 文件的修改是否都无关系,重启后,如果不能ping,执行 sudo systemctl restart systemd-resolved.service 命令即可
    • 3、查看域名服务器方法中,提到了cat /etc/resolv.conf方法,执行该方法,发现有该文件了(但1-2中尝试过自己创建,不能创建)
      • 此时,其原理大概清楚了,因为重启后,/etc/resolv.conf文件被删除了,所以每次重启都需要执行该命令。
        • 通过如下流程定位,可以确认,系统重启时,该服务未启动,可以将其加入开机启动项中(就可实现不用每次重启都需启动的操作)
          \'Ubuntu

2、最终解决方案

执行sudo systemctl restart systemd-resolved.service 命令。

  • 使用restartstart都可
  • 系统重启时,该服务未启动,可以将其加入开机启动项中(就可实现不用每次重启都需启动的操作)

注:
1、该命令每次都需要重启。
2、可以通过 man systemd-resolved,或者通过 systemd-resolved.service了解其详细介绍

3、DNS Server查看方法

查看当前 DNS相关配置(如下命令都可)

  • cat /etc/resolv.conf
  • resolvectl status
  • dig qq.com, 查看最后几行
    \'Ubuntu

4、reference

 

以上是关于Ubuntu 20.04 server不能ping,提示“Temporary failure in name resolution”的解决方法的主要内容,如果未能解决你的问题,请参考以下文章

给windows宿主机和wsl2的ubuntu-20.04分配固定IP,使能相互ping通

从 Ubuntu 20.04 连接到“Azure Database for MySQL-Server”

Ubuntu零基础教学-Ubuntu20.04网络挂了怎么办?在线等,挺急的!

Ubuntu server 20.04 关闭图形界面

Ubuntu Server 20.04 LTS 使用

Ubuntu Server 20.04 LTS 使用