untu 16.04 可用公共 DNS,如谷歌的 8.8.8.8、8.8.4.4,或国内运营商提供的本地 DNS,也可自建 BIND9 服务实现内网
是关于Ubuntu 16.04可用的DNS服务器的详细说明,涵盖配置方法、推荐选项及实操步骤:
主流公共DNS推荐
DNS名称 | IP地址 | 特点与适用场景 |
---|---|---|
Google Public DNS | 8.8.8 / 8.4.4 |
全球覆盖广,解析速度快,适合普通用户日常使用 |
Cloudflare DNS | 1.1.1 / 0.0.1 |
注重隐私保护(无日志记录),兼顾性能优化 |
中国电信DNS | 114.114.114 |
国内访问延迟低,稳定性强,尤其适合中国大陆地区用户 |
阿里DNS | 5.5.5 / 6.6.6 |
针对亚洲网络环境深度调优,移动端兼容性好 |
OpenDNS | 67.222.222 |
提供家庭防护等附加功能,适合需要基础安全防护的场景 |
系统配置实现方式
图形界面设置(桌面版)
- 路径:系统设置 → 网络 → 选中有线/无线连接 → 点击齿轮图标进入详细配置。
- 操作:在IPv4标签页手动添加上述DNS地址,保存后重启网络服务:
sudo systemctl restart NetworkManager.service
,可通过命令验证生效情况:nmcli dev show
查看当前使用的DNS列表。
命令行永久修改(服务器版通用)
- 编辑主配置文件:使用文本编辑器打开
/etc/resolv.conf
,添加以下内容:nameserver 8.8.8.8 # Google首选 nameserver 114.114.114.114 # 国内高速节点
- 同步到本地缓存:执行
sudo resolvconf u
使更改全局生效;若文件不存在则需先创建,并确保权限正确。
网卡绑定静态设置(特殊场景)
对于需要固定IP的环境(如服务器集群),可在网卡配置文件中指定DNS:编辑/etc/network/interfaces
,添加参数:
dnsnameservers 8.8.8.8 dnsnameservers 114.114.114.114 ```随后重启网络服务:`sudo /etc/init.d/networking restart`,此方法在系统启动时自动加载,避免被动态覆盖。 ### 三、自建内部DNS方案(BIND9) 若需管理私有域名解析(如数据中心多主机环境),可部署BIND服务: 1. **安装组件**:运行`sudo aptget install bind9 bind9utils bind9doc`; 2. **切换IPv4模式**:通过`sudo systemctl edit full bind9`修改启动参数为`ExecStart=/usr/sbin/named f u bind 4`; 3. **配置可信客户端列表**:编辑`/etc/bind/named.conf.options`,定义ACL块允许递归查询; 4. **主从架构部署**:设置主服务器(ns1)与辅助服务器(ns2),实现高可用性,该方案适用于企业级内网环境,支持自定义域名映射和负载均衡。 ### 四、常见问题与解答 #### Q1: 修改DNS后无法上网怎么办? **A**: 检查两点:①确认新DNS是否可达(用`ping`测试);②回退到默认设置临时恢复:`sudo mv /etc/resolv.conf{,.bak}`然后重启网络。 #### Q2: 如何验证DNS是否生效? **A**: 使用工具`dig @<目标DNS> example.com`查看解析过程,或通过在线检测网站(如whatsmydns.net)比对不同服务器的结果差异。 #### Q3: 为何有时需要设置多个DNS? **A**: 出于冗余设计和负载分担考虑,当首选DNS故障时自动切换至备用节点,提升整体可靠性,例如同时配置Google和Cloudflare的DNS即可实现此效果。 ### Ubuntu 16.04支持灵活多样的DNS配置方案,从公共节点到自建服务均可实现,建议根据实际需求选择合适的DNS组合,并通过命令行或图形界面进行持久化设置,对于关键业务场景,推荐部署主从架构的内部DNS