Tous les exemples que j'ai vus de configurations ( /etc/network/interfaces
) ont montré que vous configurez une interface puis en dessous qui a donné les dns-*
lignes telles que:
auto eth0
iface eth0 inet static
...
dns-nameservers 127.0.0.2
dns-search example.com my.example.com
Maintenant, je suis conscient que le protocole DNS est indépendant du mécanisme de transport. Par conséquent, il ne devrait pas être faux en soi d'ajouter une adresse IPv6 sur la dns-nameservers
ligne.
Cependant, comme je configure également l'interface pour IPv6 de toute façon, il était logique d'y ajouter la dns-nameservers
ligne:
iface eth0 inet6 static
...
dns-nameservers ::2
dns-search example.com my.example.com
... ou l'a fait? Parce que lors de la resolvconf
création, /etc/resolv.conf
il ignore simplement tous les serveurs DNS IPv6. Il semble également ignorer dns-search
et dns-domain
. La seule ligne qu'il semble honorer est la dns-nameservers
ligne de la configuration IPv4 pour eth0
.
Quelle est la bonne méthode de configuration des serveurs DNS?
D'autres preuves circonstancielles expliquant pourquoi elles devraient faire partie de chaque iface
strophe respective . Citation de man 8 resolvconf
:
Le
ifup(8)
programme peut être utilisé pour configurer les interfaces réseau selon les paramètres de/etc/network/interfaces(5)
. Pour desifup
informations push serveur de nomsresolvconf
quand il configure une interface, ajouter desdns-
lignes à la pertinenteiface
strophe/etc/network/interfaces
. Pour ajouter des adresses de serveurs de noms, ajoutez une ligne commençant pardns-nameservers
.
la source
Réponses:
Il est correct de placer les options dns- * dans la
iface eth0 inet static
strophe ou laiface eth0 inet6 static
strophe. Les options deviennent actives lorsque la définition d'interface logique à laquelle elles appartiennent devient active.Je viens de tester cela sur ma propre machine Ubuntu 15.04 que je configure normalement avec DHCP. J'ai désactivé NetworkManager et édité / etc / network / interfaces pour qu'il ressemble à ceci:
J'ai ensuite fait
Les resultats:
Notez que les adresses, les serveurs DNS et les options de recherche DNS des deux strophes sont maintenant actives.
[Mis à jour le 30 mai 2015]
la source
Sur mon RPi exécutant Ubuntu 16.04.2 LTS, mes conclusions étaient les suivantes:
Remarque: j'ai désinstallé NetworkManager et je viens de quitter resolvconf pour faire son travail. (Il s'agit d'un serveur fixe, donc les choses ne changent pas beaucoup sur le réseau.)
SI j'avais les lignes dns-search et dns-nameserver sur une seule interface (la principale, câblée) mais pas l'autre (wlan0) puis au redémarrage, environ 95% du temps mon fichier /etc/resolv.conf serait vide.
Par exemple, lorsque mon fichier d'interface ressemblait à ceci:
ALORS après un redémarrage, mon resolv.conf ressemblerait à ceci:
Cependant, sur un ou deux redémarrages, j'ai remarqué qu'il avait ce que je voulais, par exemple
Solution Lorsque j'ai donné aux DEUX interfaces (filaires et wlan0) les lignes dns-search et dns-nameserver, tout a bien fonctionné à chaque redémarrage (jusqu'à présent de toute façon)
c'est-à-dire que le fichier d'interface suivant fonctionne pour moi:
et me donne le resolv.conf correct suivant après chaque redémarrage (jusqu'à présent)
Je suppose que cette configuration en double est normale, quoique quelque peu redondante.
Conclusion: si une interface (autre que lo0) ne contient pas les informations dns-search et dns-nameserver, resolvconf ne place rien dans votre fichier resolv.conf. (C'est comme si ifup a fait l'interface wlan0 en second et ifup a effacé resolv.conf ou similaire.)
Je ne suis pas sûr que ce soit un bug ou non, je me sens mal.
la source
La modification des interfaces réseau afin d'ajouter une utilisation de votre DNS personnalisé est un moyen ... mais pour modifier de façon permanente resolv.conf à l'échelle du système avec votre serveur DNS personnalisé, vous devez installer le package resolvconf (s'il n'est pas déjà installé par défaut) et remplir sa base fichier de configuration avec vos valeurs de serveurs de noms DNS personnalisés. J'espère que ce petit guide vous aidera pour d'autres configurations concernant les entrées DNS resolv.conf http://www.bytelinux.com/make-permanent-changes-to-resolv-conf-file-on-ubuntu/
la source
resolvconf
est installé. Je voudrais/etc/network/interfaces
configurer mes serveurs DNS pour IPv4 et IPv6 respectivement.Vous souhaitez utiliser des serveurs DNS IPv6 sur /etc/network/interfaces ... placez simplement vos entrées de noms DNS IPv6 sur l'interface réseau spécifique comme ceci:
Pour ajouter définitivement des noms de domaine DNS IPv6 à resolv.conf, utilisez le même lien que j'ai ajouté ci-dessous et modifiez le fichier de base resolvconf en remplissant vos propres noms DNS IPv6:
Pour configurer / etc / network / interfaces avec IPv6, utilisez ce guide http://www.bytelinux.com/configure-permanent-static-ip-address-alias-interfaces-debian-based-systems/ et remplacez IPv4 par IPv6 en tant que il suit: auto eth0
la source
/etc/resolv.conf
. Si cela fonctionne pour vous, il serait utile de connaître la version exacte du système./etc/network/interfaces
bien. Ce qui ne se produit pas, c'est qu'ils soient transférés/etc/resolv.conf
comme ils le devraient. Et j'essaie de comprendre ce que je fais mal, oui.Pourquoi ne pas implémenter ces serveurs de noms DNS IPv6 directement sur le fichier système /etc/resolv.conf en modifiant le fichier de base resolvconf comme suggéré dans ma réponse précédente avec le lien et continuer à utiliser le fichier d'interfaces réseau? Vous pouvez ajouter un ensemble de serveurs de noms IPv6 DNS dans /etc/resolv.conf et si vous souhaitez utiliser d'autres serveurs de noms IPv6 pour une carte réseau spécifique, utilisez-les uniquement sur / etc / network / interfaces.
la source
/etc/network/interfaces
est censé faire le travail, j'essaie de comprendre ce que je fais mal.