Nenhum domínio definido no /etc/resolv.conf

16

Vejo cada vez mais servidores que não têm domínio definido no /etc/resolv.confarquivo. Apenas uma entrada de pesquisa .
Em que casos essa configuração é usada?
Existem casos em que não deve ser usado?

nameserver xxx.xxx.xxx.xxx
nameserver yyy.yyy.yyy.yyy
nameserver zzz.zzz.zzz.zzz

search domain1 domain2 domain3 ...
Emmanuel
fonte
2
De man resolv.conf: "domínio Nome de domínio local. A maioria das consultas para nomes nesse domínio pode usar nomes abreviados em relação ao domínio local. Se definido como '.', O domínio raiz será considerado. Se nenhuma entrada de domínio estiver presente, o domínio será determinado a partir de o nome do host local retornado por gethostname (2); a parte do domínio é considerada como tudo após o primeiro '.'. Finalmente, se o nome do host não contiver uma parte do domínio, o domínio raiz será assumido. "
Schaiba

Respostas:

21

Quando você especifica um, domainele se torna o primeiro searchdomínio. Esse recurso de pesquisa é o principal uso da configuração de domainmodo que você possa se livrar apenas da definição de uma searchentrada, na maioria das vezes.

Também domainpode ser determinado automaticamente a partir do nome do host da máquina, se o nome do host contiver um .sufixo, ele se tornará o domínio.

A principal diferença para ter um resolv.confsem um domainseria processos locais tentando determinar um nome de domínio totalmente qualificado (FQDN). Os servidores SMTP vêm à mente inicialmente como algo que gosta de conhecer o FQDN local e pode usar a configuração de host / domínio local para resolvê-lo. À medida que o tempo passa, o nome do host local e o domínio são cada vez menores, à medida que se torna sem sentido para o serviço do mundo real que uma máquina realmente representa devido a coisas como NAT, hospedagem virtual e balanceadores de carga. Isso significa que a maioria dos softwares agora oferece opções alternativas de configuração para nomes de domínio, em vez de apenas tentar determiná-las a partir do nome do host local.

man resolv.conf

domínio Nome de domínio local.
A maioria das consultas de nomes nesse domínio pode usar nomes abreviados em relação ao domínio local. Se nenhuma entrada de domínio estiver presente, o domínio será determinado a partir do nome do host local retornado por gethostname (2); a parte do domínio é considerada como tudo após o primeiro '.'. Por fim, se o nome do host não contiver uma parte do domínio, o domínio raiz será assumido.

search Lista de pesquisa para pesquisa de nome de host.
A lista de pesquisa é normalmente determinada a partir do nome do domínio local; por padrão, ele contém apenas o nome de domínio local. Isso pode ser alterado listando o caminho de pesquisa de domínio desejado, seguindo a palavra-chave de pesquisa com espaços ou guias que separam os nomes. As consultas do resolvedor com menos de pontos ndots (o padrão é 1) serão tentadas usando cada componente do caminho de pesquisa sucessivamente até encontrar uma correspondência. Para ambientes com vários subdomínios, leia as opções ndots: n abaixo para evitar ataques man-in-the-middle e tráfego desnecessário para os servidores-dns-raiz. Observe que esse processo pode ser lento e gerará muito tráfego de rede se os servidores dos domínios listados não forem locais e que as consultas expirarão se nenhum servidor estiver disponível para um dos domínios.

Matt
fonte
Só tive um problema com um agente de monitoramento que não foi capaz de determinar o FQDN.
Emmanuel