编辑 /etc/sysconfig/networkscripts/ifcfgeth0,添加 DNS1=8.8.8.8 DNS2=8.8.4.4,保存后执行
service network restart
生效# 调用搜索工具获取centos6.5设置dns地址相关信息 # CentOS 6.5 设置 DNS 地址的详细指南 ## 一、背景与重要性 DNS(Domain Name System)是互联网的核心服务之一,负责将域名解析为IP地址,在CentOS 6.5系统中,正确配置DNS地址是确保网络连通性和软件正常运行的关键步骤,本文将详细介绍如何通过多种方法在CentOS 6.5中设置DNS地址,并提供验证和故障排除方案。 ## 二、临时设置DNS地址(快速生效) ### 1. 修改 `/etc/resolv.conf` 文件 这是最直接的方法,但重启后可能失效。 #### 操作步骤: 1. 打开终端,使用文本编辑器(如 `vi` 或 `nano`)编辑文件: ```bash vi /etc/resolv.conf
-
添加以下内容(以阿里云公共DNS为例):
nameserver 223.5.5.5 nameserver 223.6.6.6
说明:最多可配置3个DNS服务器,按优先级从上到下排列。
-
保存并退出,立即生效。
注意事项:
- 此方法仅对当前会话有效,重启后可能被系统配置覆盖。
- 适合快速测试或临时需求。
永久设置DNS地址(持久化配置)
修改网卡配置文件
通过修改网络接口的配置文件,实现DNS的永久生效。
操作步骤:
-
定位网卡配置文件:
cd /etc/sysconfig/networkscripts/
常见文件名:
ifcfgeth0
(对应网卡eth0
),实际名称需根据系统适配。 -
编辑配置文件:
vi ifcfgeth0
-
添加或修改以下字段:
DNS1=223.5.5.5 DNS2=223.6.6.6
说明:
DNS1
表示主DNS,DNS2
表示备用DNS。- 若原有文件中已有
PEERDNS
或DEFROUTE
字段,需确保其值不影响DNS解析。
-
重启网络服务使配置生效:
service network restart
对比表格:临时设置 vs 永久设置
方法 | 生效范围 | 持久性 | 适用场景 |
---|---|---|---|
/etc/resolv.conf |
当前会话 | 否 | 临时测试或紧急修复 |
网卡配置文件 | 系统重启后 | 是 | 长期稳定配置 |
通过 NetworkManager 配置(图形化工具)
如果系统安装了 NetworkManager
,可通过图形化工具配置DNS。
操作步骤:
- 启动图形化工具:
nmconnectioneditor
- 选择对应的网络连接(如
System eth0
),点击“编辑”。 - 在“IPv4设置”中,选择“自动(DHCP)”或“手动”。
- 手动模式:需在“DNS服务器”栏填写地址(如
5.5.5, 223.6.6.6
)。 - DHCP模式:需确保DHCP服务器返回正确的DNS地址。
- 手动模式:需在“DNS服务器”栏填写地址(如
- 保存并激活配置。
限制:
- 仅适用于桌面版或安装了
NetworkManager
的服务器。 - 部分CentOS 6.5默认未安装该工具。
验证DNS配置是否生效
查看当前DNS配置
执行命令:
cat /etc/resolv.conf
输出示例:
# Generated by NetworkManager nameserver 223.5.5.5 nameserver 223.6.6.6
测试域名解析
使用 dig
或 nslookup
命令:
dig www.baidu.com
成功输出应包含类似:
;; ANSWER SECTION: www.a.shifen.com 300 IN A 123.125.115.110
若显示 server failed
或超时,则DNS配置有问题。
高级配置:自定义搜索域与多DNS
设置搜索域(Search Domain)
在 /etc/resolv.conf
或网卡配置文件中添加:
search example.com
作用:当解析短域名(如 host
)时,自动追加后缀(如 host.example.com
)。
配置多个DNS服务器
在 /etc/resolv.conf
或网卡配置文件中按顺序添加:
nameserver 8.8.8.8 nameserver 8.8.4.4 nameserver 114.114.114.114
优先级规则:从上到下依次尝试,第一个失败后切换到下一个。
常见问题与解决方案
DNS配置未生效
原因:
- 修改了
/etc/resolv.conf
但未重启网络服务。 - 网卡配置文件中未正确设置
DNS1
/DNS2
。 - 防火墙阻止了DNS请求(端口53)。
解决方法:
- 检查
/etc/resolv.conf
内容是否正确。 - 确认网卡配置文件已保存并重启网络:
service network restart
- 检查防火墙规则:
iptables L v n | grep 53
无法解析特定域名
原因:
- DNS服务器缓存错误。
- 本地搜索域配置冲突。
- 目标域名使用了不同的TLD(顶级域)服务器。
解决方法:
- 清除DNS缓存(通过重启网络或
systemctl restart nscd
)。 - 暂时更换其他公共DNS(如Google的8.8.8.8)进行测试。
相关问题与解答
问题1:如何删除多余的DNS服务器?
解答:
- 编辑
/etc/resolv.conf
或网卡配置文件,删除不需要的nameserver
行。 - 若通过NetworkManager配置,需重新编辑连接并移除多余DNS。
- 重启网络服务使更改生效。
问题2:设置DNS后仍无法上网,如何解决?
解答:
- 检查网关(Gateway)是否正确配置:
route n
确保默认路由指向正确的网关地址。
- 确认DNS服务器地址是否可达:
ping 223.5.5.5
- 检查网络接口状态:
ifdown eth0 && ifup eth0
- 排查防火墙或SELinux限制:
setenforce 0 # 临时关闭SELinux