银河麒麟操作系统DNS无法解析解决方案
第1章、 处理DNS无法解析问题
1.1、 问题描述
可以ping通外网地址,单ping域名无法ping通,并出现“未知的域名或服务”报错。如下图所示。

1.2、 问题分析
1.2.1、 查看网卡配置文件里是否配置DNS
cat /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
#UUID=0faac61f-d569-473e-9842-0fd11bf5712f
DEVICE=ens33
ONBOOT=yes
IPADDR=10.0.0.201
PREFIX=24
GATEWAY=10.0.0.2
DNS1=223.5.5.5
DNS2=223.6.6.6
IPV6_PRIVACY=no
1.2.2、 重启网卡
systemctl restart network.service
1.2.3、 检查防火墙配置
systemctl restart firewalld.service
1.2.4、 检查hosts文件
编辑/etc/hosts文件,将域名和IP地址写入到该文件中,查看是否可以正常解析
1.2.5、 检查nsswitch文件
检查/etc/nsswitch.conf配置文件
grep hosts /etc/nsswitch.conf
hosts: files myhostname
通过以上步骤进行排查,发现/etc/nsswitch.conf配置文件中hosts行未配置dns选项(如下图所示),导致解析域名时不会读取/etc/resolv.conf文件,从而导致域名解析失败。

1.3、 解决方案
编辑/etc/nsswitch.conf配置文件,执行如下命令:
vim /etc/nsswitch.conf
将该文件中以下内容:hosts: files myhostname
改为如下内容:hosts: files dns myhostname
【提示】/etc/nsswitch.conf配置文件中hosts项的值代表按优先级顺序列出服务,这些服务用于查找域名的IP地址。
1.4、 验证DNS解析
ping www.baidu.com


浙公网安备 33010602011771号