resolv.conf“搜索”被忽略

resolv.conf“搜索”被忽略

我的/etc/resolv.conf文件很简单,例如:

# Generated by NetworkManager
domain subdomain.example.org
search subdomain.example.org
nameserver 192.0.2.100
nameserver 192.0.2.200

据我所知,如果我有一台计算机,例如machine1.subdomain.example.org,搜索字段只允许我使用其名称来访问它machine1。但我得到的结果如下:

$ ping machine1
ping: unknown host machine1
$ ping machine1.subdomain.example.org
PING machine1.subdomain.example.org (192.0.2.12) 56(84) bytes of data.
.../...

我使用的是 Debian wheezy,如何才能让搜索指令考虑到名称解析?这是配置问题吗?我必须检查哪些参数?

编辑:/etc/nsswitch.conf以下是所要求的 内容:

# /etc/nsswitch.conf                                                        
#                                                                           
# Example configuration of GNU Name Service Switch functionality.           
# If you have the `glibc-doc-reference' and `info' packages installed, try: 
# `info libc "Name Service Switch"' for information about this file.        

passwd:         compat                                                      
group:          compat                                                      
shadow:         compat                                                      

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4             
networks:       files                                                       

protocols:      db files                                                    
services:       db files                                                    
ethers:         db files                                                    
rpc:            db files                                                    

netgroup:       nis                                                         

答案1

我会消除 网络管理器解析配置并重试,验证/etc/resolv.conf仍然有正确的内容。这两个包在服务器上没有位置,并且会在你最不想要的时候弄乱网络和 DNS 配置。我使用- 清除要完全删除它们,请将其保留。您可能还需要验证/etc/网络/接口删除这些软件包并重新启动网络后仍然正确。

apt-get --purge remove network-manager resolvconf

答案2

在 AIX 中,您可以指定有关名称解析查找的 /etc/netsvc.conf

主机=本地,bind4

在 Linux 中 /etc/nsswitch.conf

主机:文件 DNS

相关内容