继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Centos 6 DNS 配置 解决 Unknown host

萌褚
关注TA
已关注
手记 190
粉丝 9
获赞 25

测试服务器Maven 打包时遇到了如下的错误

maven.aliyun.com: Name or service not known: Unknown host maven.aliyun.com: Name or service not known

看上去应该是对 maven.aliyun.com的DNS 域名解析出问题了。

登录到服务器上 ping maven.aliyun.com 果然ping 不通, 而本地机器上是可以的。基本可以确定是 DNS的问题。

于是百度了下centos6 如何配置DNS 。 较多的结果是。

vi /etc/resolv.conf

在resolv.conf中增加一行,配置一个有效的dns 服务器保存如下。

nameserver 114.114.114.114

重新ping了下也确实解决了。 能够正常解析了。但是 resolve.conf文件中的一行文字引起了我的注意。

; generated by /sbin/dhclient-script

这应该说明这个文件是被自动生成的, 在这里的修改会不会不持久呢。 于是进一步搜索了下。果然发现这不是个持久的修改,重启后,会被覆盖。

查看下网卡的网络配置。单网卡通常是 ifcfg-eth0,有几个网卡有几个 ethX ,具体可以通过 ifconfig查看

vi /etc/sysconfig/network-scripts/ifcfg-eth0

其中也存在对应DNS的相关配置

DNS1=192.168.1.2

那么 /etc/sysconfig/network-scripts/ifcfg-eth0 与 resolve.conf 中对于DNS的配置是什么关系呢?网上没有找到比较确切的说法。

在官网查到了网卡配置文件的说明。在这里

相关的几个配置指令

DNS{1,2}=address

指定一个DNS服务器地址, 当 PEERDNS指令 设置为YES时,将被写入 /etc/resolv.conf 文件。

上面提到了resolv.conf 确实会被这里的DNS配置修改。

再看下PEERDNS指令

PEERDNS=answer

当为YES时,如果使用了DNS设置, 或者启用了DHCP,或者 使用了那啥(Microsoft’s RFC 1877 IPCP extensions with PPP),/etc/resolv.conf 文件将会被修改。默认为YES
当为NO时, 不修改 /etc/resolv.conf

测试了下, 如果只修改resolv.conf中的DNS, 重启系统后, 确实会被刷新为ifcfg-ethX中的配置。

总结如下

1. 系统需要进行域名解析时,是会优先使用resolv.conf中的DNS配置。所以直接修改resolv.conf DNS配置是可以生效的。

2. resolv.conf中的配置可能会被ethX中的DNS配置覆盖,规则如上PEERDNS指令说明。

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP