服务器可以访问外网ip无法访问外网域名解决办法
问题描述:项目服务器部署好之后,使用ping命令可以访问外网ip,但是无法访问外网域名;
解决方法:
1、修复上游DNS配置:编辑/etc/systemd/resolved.conf文件。
sudo nano /etc/systemd/resolved.conf添加或者修改如下[Resolve]DNS=8.8.8.8 114.114.114.114sudo systemctl restart systemd-resolved
2、/etc/resolv.conf文件项目上可能是一个指向/run/systemd/resolve/stub-resolv.conf的软链接。如果以上方法无效,可以重建软链接,让其指向可编辑的文件。
# 备份当前文件sudo mv /etc/resolv.conf /etc/resolv.conf.bak# 创建指向可编辑配置文件的新链接sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf# 重启解析服务sudo systemctl restart systemd-resolved
3、 检查Netplan配置如果你的服务器使用Netplan管理网络配置(配置文件在/etc/netplan/目录下),检查其YAML文件中的nameservers设置是否正确。
编辑Netplan配置文件:sudo nano /etc/netplan/01-netcfg.yaml(文件名根据项目实际调整文件名)。确保nameservers部分配置正确,例如:
yamlnetwork:ethernets:eth0:dhcp4: noaddresses: [192.168.1.100/24]gateway4: 192.168.1.1nameservers:addresses: [8.8.8.8, 114.114.114.114]version: 2如缺少8.8.8.8或114.114.114.114,可以增加配置并使用sudo netplan apply命令重启
4、清除DNS缓存,DNS缓存可能会返回过时的解析结果。如果域名解析已更新,可以尝试刷新缓存。
bashsudo systemd-resolve --flush-caches # 旧版命令# 或sudo resolvectl flush-caches # 新版命令重启NetworkManager:bashsudo systemctl restart NetworkManager
5、以上执行完成后再次尝试是否可以访问域名;
ZGL(20260629)
转载请注明作者和出处,并添加本页链接。
原文链接:
//svn.seekcy.com/909