Comment configurer mon DNS statique dans les interfaces?

51

J'utilise Ubuntu 12.04.

Mon fichier /etc/network/interfaces est composé de:

# The loopback network interface  
auto lo  
iface lo inet loopback  


# The primary network interface  
auto eth0 
iface eth0 inet static  
address 192.168.1.58  
gateway 192.168.1.1
network 192.168.1.0  
broadcast 192.168.1.255
dns-nameservers 66.212.63.228 66.212.48.10  

J'ai exécuté la commande: /etc/init.d/networking restart

Qui a répondu avec:

*Running /etc/init.d/networking restart is deprecated because it may not enable again some interfaces  
*Reconfiguring network interfaces...  
RTNETLINK answers: File exists  
Failed to bring up eth0  
[ OK ]  

Ensuite, j'ai lancé un ping sur google.com et j'ai reçu:

ping: unknown host google.com

Je ne suis pas sûr si mes interfaces ont été actualisées. Comment configurer correctement mon réseau avec mes adresses DNS statiques?

    
posée dottedquad 29.05.2012 - 20:48
la source

11 réponses

22

Comme le questionneur donne le contenu de son /etc/network/interfaces , j'en déduis qu'il utilise ifup pour configurer les interfaces. Mais comme il utilise peut-être NetworkManager, j'en discuterai également.

Si vous utilisez ifup, les paramètres DNS sont définis dans /etc/network/interfaces . Pour chaque interface, vous ajoutez les options dns-* appropriées pour les serveurs de noms disponibles sur cette interface. Par exemple, si un serveur de noms à l'adresse 1.2.3.4 est disponible sur l'interface eth0, ajoutez dns-nameservers 1.2.3.4 à la strophe iface eth0 .

Si vous utilisez NetworkManager, les paramètres sont saisis dans l'éditeur de connexion (indicateur de réseau | Modifier les connexions ...) dans l'onglet Paramètres IPv4.

Faire /etc/init.d/networking restart pour reconfigurer les interfaces est obsolète. Si vous utilisez ifup , alors d'abord ifdown chaque interface réseau active, puis ifup chaque interface. Si vous utilisez NetworkManager, désactivez d'abord la mise en réseau à l'aide de l'indicateur (en haut du bureau); puis ouvrez un terminal et lancez

sudo restart network-manager

puis activez la mise en réseau à l'aide de l'indicateur.

Ou vous pouvez simplement redémarrer.

En ce qui concerne le fait que /etc/init.d/networking restart a entraîné

RTNETLINK answers: File exists
Failed to bring up eth0  

Cela signifie que ifupdown pense que eth0 est déjà actif. Utilisez ifdown --force eth0 pour que ifupdown cesse de croire qu'il a déjà configuré l'interface.

En ce qui concerne le message "obsolète", ce message n’est plus imprimé dans Ubuntu 12.10 mais vous devez quand même noter que les scripts d’initialisation sont "en voie de disparition". Pour redémarrer un service foo , utilisez service foo restart ou restart foo . Notez également que si vous souhaitez reconfigurer vos interfaces, il est préférable de les installer une par une plutôt que de redémarrer le réseau.

    
réponse donnée jdthood 29.10.2012 - 14:40
la source
14

Si aucun des éléments ci-dessus ne fonctionne, gardez à l’esprit que Ubuntu ajoute un fichier tail au fichier resolv.conf qu’il génère.

Essayez ceci:

sudo nano /etc/resolvconf/resolv.conf.d/tail

Qui ouvrira un fichier resolv.conf.d vierge dans l’éditeur de texte nano. Vous devrez placer votre adresse de serveur DNS sur la première ligne de ce fichier et ne pas oublier de terminer la ligne par un retour chariot (appuyez sur Entrée), comme indiqué ci-dessous:

nameserver 10.20.1.2

La modification du fichier de fin au lieu du fichier resolv.conf proprement dit empêchera la perte de votre modification lors d’un redémarrage du système.

Vous devrez exécuter sudo resolvconf -u pour activer le changement. Vous devriez pouvoir faire un ping sur google.com après cela. Bonne chance!

    
réponse donnée Sean Huggans 04.07.2013 - 08:41
la source
10

Version de ligne de commande:

Vous devez ajouter votre (vos) serveur (s) de noms au fichier /etc/resolvconf/resolv.conf.d/base de cette façon:

nameserver 66.212.63.228 
nameserver 66.212.48.10
    
réponse donnée pl1nk 29.05.2012 - 21:02
la source
8

Toutes les réponses relatives à / etc / network / interfaces indiquent incorrectement dns-nameservers plutôt que dns-nameserver - ci-dessous devrait fonctionner:

auto wlan0
iface wlan0 inet static
address 192.168.1.28
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameserver 8.8.8.8
dns-nameserver 8.8.4.4
dns-search something.network.com

(testé sur Ubuntu 15.04)

    
réponse donnée babelmonk 20.09.2015 - 09:31
la source
6

La méthode la plus simple pour configurer vos serveurs DNS consiste à utiliser NetworkManager

Sous IPv4, remplissez vos serveurs DNS

    
réponse donnée Panther 29.05.2012 - 21:02
la source
4

J'ai pu contourner ce problème en installant un serveur ubuntu sans tête en ajoutant

nameserver 8.8.8.8

... après les éléments d'interface pertinents dans / etc / network / interfaces:

auto wlan0
iface wlan0 inet static
address 192.168.1.28
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 8.8.8.8
dns-nameservers 8.8.4.4

J'espère que cela aidera les utilisateurs ultérieurs!

    
réponse donnée corq 30.08.2014 - 02:07
la source
4

J'utilise

sudo ifdown eth0

alors

sudo ifup eth0

Il va réinitialiser et libérer tout ...

S'il rencontre des erreurs liées à la configuration, vous pouvez utiliser:

sudo ifdown eth0 --force
    
réponse donnée user294233 17.06.2014 - 05:57
la source
3

Cela a fonctionné pour moi

sudo vi /etc/resolvconf/resolv.conf.d/base

et ajoutez:

nameserver <add your router ip>

Exécuter:

sudo resolvconf -u

J'utilise l'installation de base du serveur Ubuntu.

    
réponse donnée Bongo 07.06.2016 - 13:54
la source
2

Il vous manque une spécification de sous-réseau dans le fichier d'interface.

Ajouter netmask 255.255.255.0 à /etc/network/interfaces sous la ligne réseau.

    
réponse donnée Brian 11.10.2012 - 14:46
la source
1

Pour une raison quelconque, l'instruction dns-nameservers ne fait rien dans mon cas. Et les autres réponses ne sont pas dans le livre, car ils contournent dnsmasq comme il est utilisé dans Ubuntu.

Pour ce faire correctement, éditez /etc/dnsmasq.conf

Ajoutez vos serveurs de noms au bas du fichier:

server=8.8.8.8
server=8.8.4.4

Redémarrez dnsmasq pour utiliser les nouveaux paramètres: sudo service dnsmasq restart

Crédit: lien

    
réponse donnée DustWolf 06.05.2018 - 14:05
la source
0

Vous pouvez également configurer cette interface dans un autre fichier, car vous avez plus de passerelles.

Les détails sont ici .

    
réponse donnée antivirtel 02.04.2016 - 22:22
la source

Lire d'autres questions sur les étiquettes