AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1536806
Accepted
Ken Mandelberg
Ken Mandelberg
Asked: 2024-12-31 02:23:10 +0800 CST2024-12-31 02:23:10 +0800 CST 2024-12-31 02:23:10 +0800 CST

Adicionando um segundo servidor de nomes permanentemente no Ubuntu 24.04

  • 772

Preciso adicionar um segundo nameserver. Posso fazer isso temporariamente em resolve.conf, mas quero uma solução que permaneça após a reinicialização.

A interface gráfica de usuário (GUI) de configurações tem um preenchimento para DNS quando o automático está desativado, mas isso não parece fazer nada.

dns
  • 3 3 respostas
  • 81 Views

3 respostas

  • Voted
  1. Micronux
    2024-12-31T02:43:46+08:002024-12-31T02:43:46+08:00

    Primeiro abra o terminal e digite estes comandos:

    sudo su
    sudo systemctl status resolvconf.service
    sudo apt update
    

    Se você ainda não tiver o resolvconf instalado, faça isto primeiro:

    sudo apt install resolvconf
    sudo systemctl enable resolvconf.service
    sudo systemctl start resolvconf.service
    sudo systemctl status resolvconf.service
    

    Se você já tiver o resolvconf instalado, conclua a instalação aqui ou se tiver concluído:

    sudo nano /etc/resolvconf/resolv.conf.d/head
    sudo resolvconf --enable-updates
    sudo resolvconf -u
    sudo nano /etc/resolvconf
    
    • 0
  2. Alexandru Gologan-Dalimon
    2024-12-31T04:41:45+08:002024-12-31T04:41:45+08:00

    Não está muito claro que tipo de diversão combinada você está tendo no momento.

    Presumo que a configuração que você está usando atualmente seja o systemd-resolved padrão e provavelmente o servidor DHCP ao qual você está se conectando para atualizar a configuração, caso esteja recebendo-os automaticamente ou simplesmente não esteja recebendo nada no momento.

    De qualquer forma, uma opção para possivelmente resolver o problema seria tentar fazer alterações em: /etc/systemd/resolved.conf da mesma maneira que você fez em /etc/resolved.conf

    Parece que o systemd-resolved teria /etc/systemd/resolved.conf tendo precedência sobre todos os outros lugares onde você poderia adicioná-lo.

    Além disso, dependendo da configuração, você também pode ter referências a coisas em /etc/systemd/resolved.conf.d/ que podem ser adicionadas/alteradas com o mesmo resultado de uma alteração em /etc/systemd/resolved.conf. (então é melhor verificar lá também, para ser limpo e organizado)

    Mais referências/detalhes sobre o acima:

    https://wiki.archlinux.org/title/Systemd-resolved

    24.04 - Como descobrir "o que" está alterando as configurações de DNS em /etc/resolv.conf

    https://forum.cloudron.io/topic/12384/no-dns-after-upgrade-ubuntu-22-04-to-24-04/5

    • 0
  3. Best Answer
    mpboden
    2024-12-31T12:55:51+08:002024-12-31T12:55:51+08:00

    Existem algumas maneiras de definir servidores DNS com várias compensações entre cada opção. Também descreverei como ter um Domínio de Pesquisa.

    1. Por meio da GUI usando as configurações de rede
    2. Por meio da GUI usandonm-connection-editor
    3. Ao definir servidores DNS globais e domínios de pesquisa em/etc/systemd/resolved.conf
    4. Ao usar o comandonmcli

    Mas, primeiro, não edite /etc/resolv.conf. Este arquivo é gerenciado pelo sistema, e não há necessidade de editá-lo diretamente. O nameserver definido neste arquivo é 127.0.0.53, que é o resolvedor de stub de cache local. Este é o primeiro servidor consultado em qualquer pesquisa com servidores de uplink consultados somente quando uma consulta não está no cache.

    Por padrão, /etc/resolv.confé um symlink para /run/systemd/resolve/stub-resolv.conf. Se esse não for mais o caso e for um arquivo estático que você editou, retorne ao seu estado padrão executando os seguintes comandos:

    sudo rm /etc/resolv.conf
    sudo ln -s /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf`
    

    Em segundo lugar, não há necessidade de instalar resolveconf. Ainda pode haver alguns casos de uso, mas para suas necessidades, é totalmente desnecessário instalar um aplicativo simplesmente para definir outro servidor DNS.


    NOTA: Parece que sua configuração de rede atual é adquirir um endereço IP e quaisquer servidores DNS via DHCP. Os exemplos a seguir para adicionar servidores DNS adicionais assumem DHCP e não endereços IP definidos estaticamente.


    1. Defina servidores DNS por meio da GUI com as configurações de rede

    Se você quiser atribuir servidores DNS manualmente em vez de adquiri-los via DHCP, basta desmarcar a caixa "Automático" e defini-los. Após clicar em aplicar, eles entrarão em vigor, mas tenha em mente que isso substitui quaisquer servidores DNS que foram enviados a você via DHCP. Além disso, você não pode definir nenhum Domínio de Pesquisa com este método.

    Como exemplo:

    Com "Automático" marcado:

    insira a descrição da imagem aqui

    Veja a saída resolvectlpara ver os servidores DNS atuais efetivamente enviados a você via DHCP:

    $ resolvectl
    Global
             Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
      resolv.conf mode: stub
    
    Link 2 (enp0s3)
        Current Scopes: DNS
             Protocols: +DefaultRoute -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
    Current DNS Server: 208.65.212.2
           DNS Servers: 208.65.212.2 208.65.212.34
    

    Após configurar manualmente os servidores DNS no painel de configurações, clique em Aplicar :

    insira a descrição da imagem aqui

    Verifique a saída de resolvectlpara ver as alterações em vigor. Observe que os nameservers enviados a você via DHCP não estão mais presentes.

    $ resolvectl
    Global
             Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
      resolv.conf mode: stub
    
    Link 2 (enp0s3)
        Current Scopes: DNS
             Protocols: +DefaultRoute -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
           DNS Servers: 8.8.8.8 1.1.1.1
    

    2. Defina servidores DNS por meio da GUI usandonm-connection-editor

    Abra um terminal e execute o seguinte comando para abrir nm-connection-editor:

    sudo -E nm-connection-editor
    

    Uma janela será aberta. Clique na sua conexão e depois clique no ícone de engrenagem.

    insira a descrição da imagem aqui

    Vá para a aba IPV4 Settings . Insira quaisquer servidores DNS adicionais (separados por uma vírgula) e Search Domains (também separados por uma vírgula). Então clique em Save .

    insira a descrição da imagem aqui

    Feche a janela e volte para o terminal. Reinicie o Network Manager com sudo systemctl restart NetworkManagere veja a saída de resolvectl. Você notará que um servidor DNS adicional foi adicionado ao seu link junto com seu Domínio de Pesquisa personalizado (listado como Domínio DNS).

    $ sudo systemctl restart NetworkManager
    $ resolvectl
    Global
             Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
      resolv.conf mode: stub
    
    Link 2 (enp0s3)
        Current Scopes: DNS
             Protocols: +DefaultRoute -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
    Current DNS Server: 8.8.8.8
           DNS Servers: 8.8.8.8 208.65.212.2 208.65.212.34
            DNS Domain: mycustomdomain
    

    3. Defina servidores DNS e domínios de pesquisa editando/etc/systemd/resolved.conf

    Ao definir Servidores DNS e Domínios de Pesquisa em /etc/systemd/resolved.conf, você está definindo Servidores DNS Globais e Domínios de Pesquisa, o que significa que eles estão disponíveis para todos os links. Se isso for aceitável, abra um terminal e simplesmente edite o arquivo com sudo nano /etc/systemd/resolved.conf.

    Para definir um servidor DNS adicional, adicione a seguinte estrofe:

    DNS=8.8.8.8
    

    Para adicionar um Domínio de Pesquisa, adicione a seguinte estrofe:

    Domains=mycustomdomain
    

    Após salvar e fechar, execute sudo systemctl restart systemd-resolved. Em seguida, verifique a saída de resolvectl. Observe que agora há um Servidor DNS Global e um Domínio de Pesquisa (listados como Domínio DNS), além dos Servidores DNS enviados a você.

    $ sudo systemctl restart systemd-resolved
    $ resolvectl
    Global
             Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
      resolv.conf mode: stub
           DNS Servers: 8.8.8.8
            DNS Domain: mycustomdomain
    
    Link 2 (enp0s3)
        Current Scopes: DNS
             Protocols: +DefaultRoute -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
           DNS Servers: 208.65.212.2 208.65.212.34
    
    

    4. Defina os servidores DNS usando o comandonmcli

    Primeiro você precisa encontrar o nome da conexão. Use o comando nmcli con:

    $ nmcli con
    NAME            UUID                                  TYPE      DEVICE 
    netplan-enp0s3  1eef7e45-3b9d-3043-bee3-fc5925c90273  ethernet  enp0s3 
    lo              ae2370cb-4852-4da8-8894-2acd8467ad5a  loopback  lo    
    

    Do comando acima, o nome da conexão no meu sistema é netplan-enp0s3. Substitua o seu pelos comandos abaixo:

    Para definir um servidor DNS adicional:

    nmcli con mod "netplan-enp0s3" ipv4.dns "8.8.8.8"
    

    Para definir um domínio de pesquisa:

    nmcli con mod "netplan-enp0s3" ipv4.dns-search "mycustomdomain"
    

    Em seguida, reinicie o Network Manager e observe a saída de resolvectl:

    $ sudo systemctl restart NetworkManager
    $ resolvectl
    Global
             Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
      resolv.conf mode: stub
    
    Link 2 (enp0s3)
        Current Scopes: DNS
             Protocols: +DefaultRoute -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
    Current DNS Server: 8.8.8.8
           DNS Servers: 8.8.8.8 208.65.212.2 208.65.212.34
            DNS Domain: mycustomdomain
    

    Observe que, neste caso, ele adicionou o Servidor DNS e o Domínio de Pesquisa ao link específico e não como uma configuração Global . Além disso, ele manteve os servidores DNS enviados via DHCP.

    Se você quiser atribuir vários servidores DNS e um domínio de pesquisa e ignorar quaisquer servidores DNS enviados a você via DHCP, execute os seguintes comandos:

    $ nmcli con mod "netplan-enp0s3" ipv4.dns "8.8.8.8 1.1.1.1"
    $ nmcli con mod "netplan-enp0s3" ipv4.dns-search "mycustomdomain"
    $ nmcli con mod "netplan-enp0s3" ipv4.ignore-auto-dns yes
    $ sudo systemctl restart NetworkManager
    $ resolvectl
    Global
             Protocols: -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
      resolv.conf mode: stub
    
    Link 2 (enp0s3)
        Current Scopes: DNS
             Protocols: +DefaultRoute -LLMNR -mDNS -DNSOverTLS DNSSEC=no/unsupported
    Current DNS Server: 8.8.8.8
           DNS Servers: 8.8.8.8 1.1.1.1
            DNS Domain: mycustomdomain
    
    

    Por fim, observe que ao adicionar um Domínio de Pesquisa por meio de qualquer método descrito acima, ele /etc/resolv.conftambém será atualizado para refletir o Domínio de Pesquisa adicional:

    $ cat /etc/resolv.conf 
    # This is /run/systemd/resolve/stub-resolv.conf managed by man:systemd-resolved(8).
    # Do not edit.
    #
    # This file might be symlinked as /etc/resolv.conf. If you're looking at
    # /etc/resolv.conf and seeing this text, you have followed the symlink.
    #
    # This is a dynamic resolv.conf file for connecting local clients to the
    # internal DNS stub resolver of systemd-resolved. This file lists all
    # configured search domains.
    #
    # Run "resolvectl status" to see details about the uplink DNS servers
    # currently in use.
    #
    # Third party programs should typically not access this file directly, but only
    # through the symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a
    # different way, replace this symlink by a static file or a different symlink.
    #
    # See man:systemd-resolved.service(8) for details about the supported modes of
    # operation for /etc/resolv.conf.
    
    nameserver 127.0.0.53
    options edns0 trust-ad
    search mycustomdomain
    
    • 0

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve