Como forço o NetworkManager a atualizar o /etc/resolv.conf?

14

Se eu adicionar um novo servidor DNS usando nmcli connection modify eth0 +ipv4.dns 8.8.8.8, ainda preciso atualizar /etc/resolv.confpara o resolvedor pegar as alterações, certo? Então, como forço a atualização?

A única maneira que eu encontrei foi reiniciar o serviço de rede: /etc/init.d/network restart. Existe uma maneira menos invasiva - um nmclicomando, talvez?

Mihai
fonte
Com o que você deseja que o NetworkManager o atualize?
Konrad Gajewski
Adicionados alguns esclarecimentos à pergunta.
Mihai
Desde a minha nmcli não tem esse comando Modificar, eu só posso adivinhar :) Tente: resolvconf -u
Konrad Gajewski

Respostas:

6

com base em http://www.certdepot.net/rhel7-configure-ipv4-addresses/

nmcli connection up eth0 

correr atrás de chamadas mod, funcionou para mim.

PS, você pode usar "nmcli -p connection show eth0" para ver as configurações versus configurações ativas

maximbr
fonte
Salve seus dedos! connectionpode ser abreviado, até o fim c.
Michael Hampton
Curiosamente, o artigo de ajuda do RH sugere nmcli c reloadque não funcionou para alterar as entradas DNS.
Rots
1
  • Mostrar dispositivo disponível para configurar: nmcli c s

    Você precisará do NAME ou do UUID dessa lista. Vamos supor que o nome da conexão seja eth0.

  • Mostre as configurações atuais de DNS IPv4 de eth0: nmcli c s eth0 | grep ipv4.dns:

  • Defina as configurações de DNS do IPv4 para as entradas 8.8.8.8 e 8.8.4.4 do DNS do Google: sudo nmcli c m eth0 ipv4.dns "8.8.8.8 8.8.4.4"
  • Salve as alterações nos arquivos do sistema (como /etc/resolv.conf, etc.) com: sudo nmcli c up eth0

Bônus:

  • Faça a coisa toda em um servidor remoto através do ssh: ssh remote-server 'sudo nmcli c m eth0 ipv4.dns "8.8.8.8 8.8.4.4" && sudo nmcli c up eth0'
MadMike
fonte
0

Adicione o seguinte ao arquivo de configuração da interface ( /etc/sysconfig/network-scripts/ifcfg-ethX):

PEERDNS=yes
DNS1=1.2.3.4
DNS2=1.2.3.4
NM_CONTROLLED=yes

abrir interface:

ifup ethX
GioMac
fonte
0

Para fazer isso, você precisará identificar sua interface de rede (ie eth0)

# nmcli  conn
NAME  UUID                                  TYPE            DEVICE
eth0  74315f7c-1573-4150-9c0e-e06ad28cac95  802-3-ethernet  eth0
#

# nmcli conn edit eth0

===| nmcli interactive connection editor |===

Editing existing '802-3-ethernet' connection: 'eth0'

Type 'help' or '?' for available commands.
Type 'describe [<setting>.<prop>]' for detailed property description.

You may edit the following settings: connection, 802-3-ethernet (ethernet), 802-1x, ipv4, ipv6, dcb
nmcli> print ipv4.dns-search
ipv4.dns-search: mydomain.linux.com
nmcli>
nmcli> set ipv4.dns-search mylinuxdomain.com,anotherdomain.com
nmcli>
nmcli> save permanent

Em seguida, reinicie sua rede. Eu uso o nmcli para fazer isso: 1. Para derrubar

# nmcli conn down eth0

2. Para trazer à tona

# nmcli conn up eth0
Linux Cli Aik
fonte
Você não não precisa trazer o baixo conexão. Basta fazer um nmcli conn up eth0para salvar /etc/resolv.conf.
MadMike 29/08/19