在很多时候,我们会需用使用域名去访问(特别在集群环境中,经常用到),这个时候我们一般就需要配置DNS去解析。当然在没有DNS服务器的情况,也可以手动维护服务器本身的hosts文件实现。本文阐述2种配置DNS解析的方法。
1 配置文件
PS:Docker容器默认DNS配置也是从宿主机的此文件同步获取。
文件位于/etc/,但是DNS配置文件 /etc/ 每次重启就会失效(可能会因操作系统版本而异)。
若有注释,注释也提示了这个信息:
# Dynamic (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//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/文件,查看是否永久生效。
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