Temporary failure in name resolution错误解决方法

在服务器迁移后,程序出现'Temporary failure in name resolution'错误,实为域名解析失败。经检查DNS设置无误,问题在于主机名解析。通过编辑/etc/hosts文件,增加主机名映射,即可解决此问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

       今天迁移服务器之后原本正常运行的程序报"Temporary failure in name resolution"错误,意思是域名解析失败,但是DNS什么的设置没有问题,其实是主机名解析失败。

常见解决方案

       常见解决方案是在hosts里配置一下即可:

1.打开/etc/hosts

#vi /etc/hosts

2.增加主机名映射

按 i 键进入编辑模式,在 文件最后增加:

127.0.0.1 hostname(主机名)

3.保存退出,即可恢复正常

#wq!

其他参考方案

检查网络连接

  • 检查物理连接:如果你使用的是有线网络,确保网线已正确插入路由器和电脑的网卡接口。如果是无线网络,确认WiFi已开启并成功连接到正确的网络。

  • 重启路由器:关闭路由器电源,等待至少两分钟后再重新开启,等待路由器完全启动后再检查网络连接。

  • 检查其他设备连接:尝试在其他设备上访问互联网,如果其他设备也无法连接,可能是网络服务提供商的问题。

检查DNS配置

  • 检查/etc/resolv.conf文件:在Linux系统中,使用文本编辑器打开/etc/resolv.conf文件,确保其中至少包含一个有效的nameserver,如Google的公共DNS服务器8.8.8.88.8.4.4。如果文件中没有有效的DNS服务器,添加一个或多个可靠的DNS服务器。

  • 检查文件权限:如果/etc/resolv.conf文件包含有效的DNS服务器但错误仍然存在,可能是文件权限设置不当。使用命令sudo chown root:root /etc/resolv.conf将文件的所有者设置为root用户,并使用命令sudo chmod 644 /etc/resolv.conf确保所有用户都可以读取该文件。

  • 重启DNS解析服务:修改完/etc/resolv.conf文件后,运行命令sudo systemctl restart systemd-resolved.service重启DNS解析服务,然后通过ping命令测试新的DNS服务器是否正常工作。

检查防火墙设置

  • 检查UFW防火墙:如果你使用的是UFW防火墙,运行命令sudo ufw allow 43/tcpsudo ufw allow 53/tcp打开用于whois查询和域名解析的端口,然后运行sudo ufw reload重新加载UFW规则。

  • 检查firewalld防火墙:对于使用firewalld防火墙的Linux发行版,运行命令sudo firewall-cmd --add-port=43/tcp --permanentsudo firewall-cmd --add-port=53/tcp --permanent打开相应的端口,然后运行sudo firewall-cmd --reload重新加载防火墙规则。

检查安全软件

  • 暂时禁用安全软件:某些安全软件如杀毒软件、防火墙或VPN可能会干扰DNS解析。暂时禁用这些软件,查看是否能解决问题。如果禁用后问题解决,可以调整软件的设置以允许正常的DNS功能。

清除DNS缓存

  • Windows系统:打开命令提示符,输入ipconfig /flushdns命令来清除DNS缓存。

  • Mac系统:打开终端,输入sudo dscacheutil -flushcache命令来清除DNS缓存。

  • Linux系统:对于大多数Linux发行版,可以使用命令systemd-resolve --flush-caches来清除DNS缓存。

释放和更新IP地址

  • Windows系统:打开命令提示符,输入ipconfig /release && ipconfig /renew命令来释放并更新IP地址。

  • Mac系统:打开终端,输入sudo ifconfig en0 release && sudo ifconfig en0 renew命令来释放并更新IP地址。

  • Linux系统:打开终端,输入sudo dhclient -r eth0 && sudo dhclient eth0命令来释放并更新IP地址。

检查TCP/IP设置

  • Windows系统:通过“网络状态”工具检查网络连接属性,确保IP分配设置为“自动”(DHCP),并检查DNS服务器地址是否正确。

  • Linux系统:在“有线设置”中检查IPv4设置,确保IP分配和DNS设置为“自动(DHCP)”,并应用新的设置。

检查网站本身

  • 使用ping命令:如果问题出现在访问特定网站时,使用ping命令检查该网站是否正常响应。如果ping命令没有响应,可能是网站服务器端的问题。

评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ssxueyi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值