宝塔面板DNS配置异常需通过修改resolv.conf、NetworkManager或systemd-resolved三种方式解决:一、编辑/etc/resolv.conf添加nameserver;二、用nmcli为NetworkManager连接设置DNS;三、修改/etc/systemd/resolved.conf并重启服务;最后在面板SSL申请或curl测试验证。

如果您已成功安装宝塔面板,但发现面板后台或服务器上的域名解析异常、软件包下载失败、SSL证书申请超时等问题,可能是操作系统的DNS服务器未正确配置所致。以下是为宝塔面板所在操作系统配置DNS服务器的具体步骤:
一、通过修改resolv.conf文件配置DNS
该方法直接编辑系统DNS解析配置文件,适用于CentOS、Ubuntu、Debian等主流Linux发行版,修改后对所有网络服务生效,包括宝塔面板调用的curl、wget、acme.sh等工具。
1、使用SSH登录服务器,执行命令切换至root用户:sudo su -
2、备份原始DNS配置文件:cp /etc/resolv.conf /etc/resolv.conf.bak
3、使用vi编辑器打开resolv.conf:vi /etc/resolv.conf
4、按i键进入插入模式,删除原有内容,添加以下两行(以阿里DNS为例):nameserver 223.5.5.5
nameserver 223.6.6.6
5、按Esc键退出插入模式,输入:wq保存并退出vi编辑器。
6、验证DNS是否生效:nslookup www.bt.cn,若返回有效IP地址则配置成功。
二、通过NetworkManager持久化设置DNS(适用于启用NetworkManager的系统)
部分新版Ubuntu/Debian系统使用NetworkManager管理网络,直接修改resolv.conf可能被自动覆盖。此方法通过nmcli命令将DNS配置写入连接配置,确保重启后仍有效。
1、查看当前激活的网络连接名称:nmcli connection show --active
2、假设连接名为“System eth0”,执行以下命令设置DNS:nmcli connection modify "System eth0" ipv4.dns "114.114.114.114 8.8.8.8"
3、设置DNS优先级为手动模式:nmcli connection modify "System eth0" ipv4.ignore-auto-dns yes
4、重启该连接使配置生效:nmcli connection down "System eth0" && nmcli connection up "System eth0"
5、检查当前DNS配置:nmcli device show | grep DNS
三、通过systemd-resolved服务配置DNS(适用于使用systemd-resolved的系统)
某些较新版本的Ubuntu(如20.04+)或CentOS 8+默认启用systemd-resolved作为本地DNS解析代理。直接修改resolv.conf无效,需通过其专用配置方式设定上游DNS。
1、确认systemd-resolved服务状态:systemctl is-active systemd-resolved
2、编辑resolved配置文件:vi /etc/systemd/resolved.conf
3、取消注释并修改DNS行,例如:DNS=1.1.1.1 1.0.0.1
4、取消注释FallbackDNS行(可选):FallbackDNS=8.8.8.8 8.8.4.4
5、重启服务:systemctl restart systemd-resolved
6、验证解析结果:resolvectl query www.bt.cn
四、在宝塔面板内验证DNS配置效果
宝塔面板自身依赖系统DNS完成站点SSL申请、插件更新、软件商店访问等操作。配置完成后需在面板中触发实际DNS请求以确认生效。
1、登录宝塔面板,在左侧菜单点击网站,选择任一已添加站点。
2、点击该站点右侧的SSL按钮,进入证书页面。
3、点击申请按钮,观察日志输出中是否出现域名解析失败提示(如“Could not resolve host”)。
4、若申请流程顺利进入验证阶段,说明DNS配置已起效;若仍报错,需返回前三个方法核查配置路径与权限。
5、也可在面板终端中执行:curl -I https://www.bt.cn,检查HTTP响应头是否正常返回。









