Comment forcer NetworkManager à mettre à jour /etc/resolv.conf?

14

Si j'ajoute un nouveau serveur DNS à l'aide de nmcli connection modify eth0 +ipv4.dns 8.8.8.8, je dois quand même mettre à jour /etc/resolv.confpour que le résolveur prenne en compte les modifications, non? Alors, comment puis-je forcer la mise à jour?

La seule manière que je trouvais redémarrait le service réseau: /etc/init.d/network restart. Y a-t-il un moyen moins invasif - une nmclicommande, peut-être?

Mihai
la source
Avec quoi voulez-vous que le NetworkManager le mette à jour?
Konrad Gajewski
Ajout de quelques clarifications à la question.
Mihai
Étant donné que mon nmcli n'a pas cette commande de modification, je ne peux que deviner :) Essayez: resolvconf -u
Konrad Gajewski

Réponses:

6

basé sur http://www.certdepot.net/rhel7-configure-ipv4-addresses/

nmcli connection up eth0 

courir après les appels de mod, a fonctionné pour moi.

PS, vous pouvez utiliser "nmcli -p connection show eth0" pour voir les paramètres configurés vs actifs

maximbr
la source
Gardez vos doigts! connectionpeut être abrégé, jusqu'à c.
Michael Hampton
Fait intéressant, l'article d'aide de RH suggère nmcli c reloadce qui n'a pas fonctionné pour modifier les entrées DNS.
Rots
1
  • Afficher le périphérique disponible à configurer: nmcli c s

    Vous aurez besoin du NOM ou de l'UUID de cette liste. Supposons que le nom de la connexion soit eth0.

  • Afficher les paramètres DNS IPv4 actuels de eth0: nmcli c s eth0 | grep ipv4.dns:

  • Définissez les paramètres DNS IPv4 sur les entrées DNS Google 8.8.8.8 et 8.8.4.4: sudo nmcli c m eth0 ipv4.dns "8.8.8.8 8.8.4.4"
  • Enregistrez les modifications apportées aux fichiers système (comme /etc/resolv.conf, etc.) avec: sudo nmcli c up eth0

Prime:

  • Faites tout cela à un serveur distant via 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
la source
0

Ajoutez ce qui suit au fichier de configuration d'interface ( /etc/sysconfig/network-scripts/ifcfg-ethX):

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

mettre l'interface en place:

ifup ethX
GioMac
la source
0

Pour ce faire, vous devrez identifier votre interface réseau (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

Redémarrez ensuite votre réseau. J'utilise nmcli pour ce faire: 1. Pour faire tomber

# nmcli conn down eth0

2. Pour évoquer

# nmcli conn up eth0
Linux Cli Aik
la source
Vous n'avez pas besoin de couper la connexion. Faites juste un nmcli conn up eth0pour sauver /etc/resolv.conf.
MadMike