¿Cómo fuerzo a NetworkManager a actualizar /etc/resolv.conf?

14

Si agrego un nuevo servidor DNS usando nmcli connection modify eth0 +ipv4.dns 8.8.8.8, todavía tengo que actualizar /etc/resolv.confpara que el solucionador recoja los cambios, ¿verdad? Entonces, ¿cómo forzo la actualización?

La única manera que encontré fue reiniciando el servicio de red: /etc/init.d/network restart. ¿Hay alguna forma menos invasiva, un nmclicomando, tal vez?

Mihai
fuente
¿Con qué desea que NetworkManager lo actualice?
Konrad Gajewski
Se agregaron algunas aclaraciones a la pregunta.
Mihai
Como mi nmcli no tiene este comando de modificación, solo puedo adivinar :) Pruebe: resolvconf -u
Konrad Gajewski

Respuestas:

6

basado en http://www.certdepot.net/rhel7-configure-ipv4-addresses/

nmcli connection up eth0 

ejecutar después de llamadas de mod, funcionó para mí.

PD: puede usar "nmcli -p connection show eth0" para ver las configuraciones configuradas vs activas

maximbr
fuente
¡Guarda tus dedos! connectionpuede ser abreviado, hasta el final c.
Michael Hampton
Curiosamente, el artículo de ayuda de RH sugiere nmcli c reloadcuál no funcionó para cambiar las entradas de DNS.
pudre el
1
  • Mostrar dispositivo disponible para configurar: nmcli c s

    Necesitará el NOMBRE o el UUID de esa lista. Asumamos que el nombre de la conexión es eth0.

  • Mostrar la configuración actual de DNS IPv4 de eth0: nmcli c s eth0 | grep ipv4.dns:

  • Establezca la configuración de IPv4 DNS en las entradas DNS de Google 8.8.8.8 y 8.8.4.4: sudo nmcli c m eth0 ipv4.dns "8.8.8.8 8.8.4.4"
  • Guarde los cambios en los archivos del sistema (como /etc/resolv.conf, etc.) con: sudo nmcli c up eth0

Prima:

  • Hacer todo a un servidor remoto a través de 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
fuente
0

Agregue lo siguiente al archivo de configuración de la interfaz ( /etc/sysconfig/network-scripts/ifcfg-ethX):

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

traer interfaz:

ifup ethX
GioMac
fuente
0

Para hacerlo, deberá identificar su interfaz de red (es decir, 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

Luego reinicie su red. Yo uso nmcli para hacerlo: 1. Para derribar

# nmcli conn down eth0

2. Para mencionar

# nmcli conn up eth0
Linux Cli Aik
fuente
Usted qué no necesita traer la conexión abajo. Solo haz un nmcli conn up eth0para ahorrar /etc/resolv.conf.
MadMike