Relacionamento entre a configuração múltipla possível de servidores de nomes de domínio

0

Existem muitos lugares (IMHO, muitos) para configurar o (s) servidor (es) DNS usado (s) e não tenho certeza sobre o relacionamento entre eles. Algumas perguntas são: Quais configurações são consultadas apenas condicionalmente (por exemplo, se eu entendi corretamente, a configuração do systemd não será consultada se o serviço correspondente não estiver sendo executado)? Quais configurações sobrescrevem quais? Qual é a maneira recomendada de configurar o DNS?

Para nomear alguns lugares para configurar o servidor DNS (juntamente com algumas outras informações que eu conheço, que devem ser corrigidas se houver algum mal-entendido),

  1. Escreva em /etc/resolv.conf e use chattr para forçá-lo a permanecer persistente após a reinicialização (acho que este é desencorajado)
  2. %código%. Config nos vários arquivos em resolvconf . Use /etc/resolvconf/resolv.conf.d para adicionar um DNS e resolvconf -a para atualizá-lo
  3. resolvconf -u , uma unidade de systemd-resolve(d) . Config em systemd . Ele usa o endereço /etc/systemd/resolvd.conf como o resolvedor de DNS fictício em 127.0.0.53 . O% real/etc/resolv.conf é encontrado em resolv.conf . Em versões mais recentes (desde que versão?), /var/run/systemd/resolve/resolv.conf pode ser usado para consultar o status atual do DNS.
  4. %código%. Este está relacionado com systemd-resolve --status
  5. /etc/network/interfaces , um componente que direciona o menu de contexto de configuração de rede na GUI. Se uma interface estiver configurada em /etc/systemd/system/network-online.target.wants/networking.service , ela se recusará a gerenciá-la novamente (mostrada como Network-Manager no menu de contexto da GUI).

Estou executando o /etc/network/interfaces no ambiente de área de trabalho do Unity.

    
por Weijun Zhou 08.06.2018 / 08:51

1 resposta

1

What is the recommended way to configure DNS?

...

I am running Ubuntu 18.04 LTS with Unity desktop environment.

Sempre que possível , seria recomendável que você usasse este:

5. Network-Manager, a component that drives the network configuration context menu in GUI.

Por exemplo, isso é o que o Guia oficial do Ubuntu Desktop diz. Não verifiquei se isso está atualizado, mas não tenho motivos para duvidar disso.

link

If your network doesn’t automatically assign network settings to your computer, you may have to manually enter the settings yourself. This topic assumes that you already know the correct settings to use. If not, you may need to ask your network administrator or look at the settings of your router or network switch.

To manually set your network settings:

...

7. In the DNS section ...

Na maioria dos sistemas, o único local onde o sistema ficará é o conteúdo de /etc/resolv.conf . (Mas pode haver vários sistemas diferentes que editam o conteúdo deste arquivo).

Como apontado por Patrick, em alguns sistemas, haverá um plugin de maior prioridade visto em grep '^hosts:' /etc/nsswitch.conf . dns é o plugin glibc padrão que lê /etc/resolv.conf .

Em particular, se você tiver resolve antes de dns , isso se refere a systemd-resolved . Ele tentará acessar systemd-resolved antes de usar o servidor DNS em /etc/resolv.conf .

Como você aponta, é possível consultar os servidores DNS, se houver, que systemd-resolved pode consultar, executando systemd-resolve --status .

Como você apontou, não é esperado que o método NetworkManager seja compatível com edições manuais em /etc/resolv.conf (como o NetworkManager irá editar este arquivo). É claro que se você bloquear o NetworkManager de editar /etc/resolv.conf , o método NetworkManager não funcionará.

    
por 09.06.2018 / 13:19