Qual é o relacionamento adequado entre / etc / hosts e DNS A registros para um servidor Linux?

3

Eu tenho um servidor Ubuntu. Será um servidor da web com um URI de www.example.com . Eu tenho um registro DNS A apontando www.example.com para o endereço IP do servidor.

Digamos que eu escolha "trinity" como o nome do host desse servidor.

Eu quero configurar os registros DNS corretamente. Eu preciso de DNS reverso para www.example.com , então um CNAME para www.example.com não parece apropriado. Aqui está a minha pergunta:

A melhor prática é configurar dois registros DNS (que no meu caso provavelmente seriam dois registros A), um para www.example.com e um para trinity.example.com , ambos apontando para o endereço IP desse servidor? (Ou, mesmo que não seja aceito como uma prática recomendada, é uma boa ideia?)

Em caso afirmativo, o seguinte seria um arquivo / etc / hosts adequado?

$ cat /etc/hosts
127.0.1.1       trinity.local          trinity
99.100.101.102  trinity.example.com    trinity        www.example.com

Este servidor é um Linode e os documentos do Linode parecem indicar que a abordagem acima é melhor (se eu os estiver lendo corretamente). Aqui está a seção relevante. Eu corri a linha que parece se aplicar aqui.

Update /etc/hosts

Next, edit your /etc/hosts file to resemble the following example, replacing "plato" with your chosen hostname, "example.com" with your system's domain name, and "12.34.56.78" with your system's IP address. As with the hostname, the domain name part of your FQDN does not necesarily need to have any relationship to websites or other services hosted on the server (although it may if you wish). As an example, you might host "www.something.com" on your server, but the system's FQDN might be "mars.somethingelse.com."

File:/etc/hosts

127.0.0.1        localhost.localdomain    localhost
12.34.56.78      plato.example.com        plato

The value you assign as your system's FQDN should have an "A" record in DNS pointing to your Linode's IP address. For more information on configuring DNS, please see our guide on configuring DNS with the Linode Manager.

    
por MountainX 22.06.2012 / 08:00

3 respostas

4

O relacionamento adequado entre as entradas /etc/hosts e o DNS é que, se você tiver DNS / etc / hosts em funcionamento, deve conter apenas entradas para localhost (apontando para 127.0.0.1 e ::1 ). Mexer com um arquivo de hosts quando você tem o DNS em funcionamento é apenas uma maneira de criar um comportamento estranho e problemas mais tarde. 1

Se você precisar de DNS reverso, entre em contato com seu ISP (Linode) e solicite que ele defina um registro PTR apropriado para o seu endereço IP.
Não há nenhum requisito para o registro PTR para coincidir com um registro A (ou mesmo para qualquer host com esse nome exista: 69.18.136.215 reverte para cl136-215.invision.net, o que não ter um endereço de encaminhamento), para que você possa definir o nome do PTR para corresponder a um registro A, a um CNAME ou a qualquer nome DNS válido que você desejar.

1 Como em todas as regras, existem exceções. Seu caso não parece um deles.

    
por 22.06.2012 / 17:01
1

Na configuração do sistema, o arquivo /etc/hosts provavelmente é lido antes de recorrer a pesquisas de DNS. Então, eu provavelmente forneceria o IP do sistema, o nome de domínio totalmente qualificado (trinity.example.com), o nome abreviado (trinity) e o endereço do site (www.example.com).

Aqui está um guia para o formato do seu arquivo de hosts. Veja: Definindo o hostname: FQDN ou nome abreviado?

    
por 22.06.2012 / 08:21
1

Se você colocar essas entradas no arquivo /etc/hosts , seu sistema irá ignorar o DNS e usar a entrada do arquivo hosts.
Isso pode complicar a depuração se algo em uma dessas configurações (arquivo DNS ou hosts) estiver errado. Ou você tem comportamentos estranhos se você alterar os registros DNS e esquecer o arquivo /etc/hosts .

Você pode usar o arquivo /etc/hosts para fins de teste, por exemplo, testando seu site antes que as alterações de DNS sejam feitas.

    
por 22.06.2012 / 08:26