No resolv.conf, por que meus domínios de pesquisa têm um período depois deles?

3

Qual é a diferença entre server.com e server.com. na seção de pesquisa de um arquivo /etc/resolv.conf ?

user@host /etc/sysconfig/network-scripts $ head -n 3 /etc/resolv.conf
# Generated by NetworkManager
domain sub.company.com
search sub.company.com sub.company.com. company.com. company.com
    
por CHK 27.01.2014 / 18:30

3 respostas

7

. é o ponto mais alto na hierarquia do DNS. com , org , net , etc estão todos abaixo de . . O motivo pelo qual você não vê pessoas digitar http://google.com. em seus navegadores ou outros aplicativos é que, com o tempo, os aplicativos foram desenvolvidos para "ajudar" você, não sendo necessário. Um FQDN adequado ainda tem um período no final, embora não importe muito nos casos mais de hoje em dia.

Quando você tem vários sufixos de pesquisa que podem ser anexados a uma consulta DNS, a especificação de um ponto final impedirá que o cliente tente "ajudar" você com sufixos adicionais adicionados. Basicamente, está dizendo "Este é o endereço completo e completo. Não tente acrescentar nada a mais".

    
por 27.01.2014 / 18:37
5

Como os nomes de domínio totalmente qualificados sempre têm um período no final.

RFC 1034

Since a complete domain name ends with the root label, this leads to a
printed form which ends in a dot.  We use this property to distinguish between:

   - a character string which represents a complete domain name
     (often called "absolute").  For example, "poneria.ISI.EDU."

   - a character string that represents the starting labels of a
     domain name which is incomplete, and should be completed by
     local software using knowledge of the local domain (often
     called "relative").  For example, "poneria" used in the
     ISI.EDU domain.
    
por 27.01.2014 / 18:36
2

Se você não tiver um '.' no final, outras coisas do caminho de pesquisa podem ser anexadas ao seu nome de host. No entanto, eu geralmente não vejo isso nos caminhos de pesquisa nos arquivos /etc/resolv.conf como '.' no final é usado em uma especificação de nome de host.

Se você /etc/resolv.conf tiver uma pesquisa para incluir aaa.domain.com e bbb.domain.com quando você solicitar a resolução de qqq, o resolvedor tentará qqq, caso contrário tente qqq.aaa.domain.com e, em seguida, bbb.domain.com até que um tenha sucesso ou você tenha uma falha total.

No mesmo exemplo, se você colocar ddd.domain.com, o resolvedor tentará ddd.domain.com e, em seguida, tente ddd.domain.com.aaa.domain.com e ddd.domain.com.bbb.domain. com de maneira semelhante.

Se você inserir ddd.domain.com. (note o período final), o resolvedor procura apenas ddd.domain.com APENAS e não anexa nada do caminho de pesquisa /etc/resolv.conf.

    
por 27.01.2014 / 18:37