在很多时候,我们会需用使用域名去访问(特别在集群环境中,经常用到),这个时候我们一般就需要配置DNS去解析。当然在没有DNS服务器的情况,也可以手动维护服务器本身的hosts文件实现。本文阐述2种配置DNS解析的方法。

1 配置resolv.conf文件

PS:Docker容器默认DNS配置也是从宿主机的此文件同步获取。

文件位于/etc/resolv.conf,但是DNS配置文件 /etc/resolv.conf 每次重启就会失效(可能会因操作系统版本而异)。

若有注释,注释也提示了这个信息:

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)

# DO NOT EDIT THIS FILE BY HAND — YOUR CHANGES WILL BE OVERWRITTEN

提示我们这是一个动态文件,不要手动改此文件,这里每次重启会被覆盖。如果只是需要临时使用,便可直接编辑此文件加入域名服务器配置。如:

#nameserver  DNS服务器IP

nameserver 8.8.8.8

这时,若想永久生效,有2种方法(若有多个DNS,配置多行即可):

(1)可编辑/etc/resolvconf/resolv.conf.d/base文件,添加DNS配置,比如nameserver 8.8.8.8

nameserver 8.8.8.8

(2)编辑/etc/network/interfaces加入DNS配置,编辑保存后执行resolvconf -u生效同步配置。

#dns-nameservers DNS服务器IP

dns-nameservers 8.8.8.8

若没有以上文件,可先尝试配置/etc/resolv.conf文件,查看是否永久生效。

2 编辑对应网卡文件

此文件配置永久生效,配置后需重启网络服务。

编辑/etc/sysconfig/network-scripts/ifcfg-网卡名

如:/etc/sysconfig/network-scripts/ifcfg-ens192

加入DNS配置:

DNS1=8.8.8.8

DNS2=114.114.114

重启网络服务

systemctl restart network 

Logo

更多推荐