Dans mon entreprise, beaucoup de nos scripts de configuration, etc., utilisent uniquement le nom du serveur. Par exemple, http://server
plutôt que http://server.company.com
. J'ai configuré le domaine de recherche dans l'outil de connexion réseau de l'interface graphique. Je l'ai également configuré dans /etc/resolvconf/resolv.conf.d/head
, mais cela ne fonctionne pas correctement.
La chose étrange est que certains outils tels que nslookup ou Host résolvent l'adresse IP correcte, mais d'autres outils tels que ssh, ping, git et les navigateurs Web ne le font pas. Je peux me connecter si j'utilise le nom de domaine complet. Qu'est-ce qui pourrait empêcher le domaine de recherche de résoudre correctement?
Ci-dessous, recherchez la sortie appropriée de certaines commandes.
Nslookup:
$ nslookup server
Server: 192.168.200.53
Address: 192.168.200.53#53
server.company.com canonical name = server001.company.com.
Name: server001.company.com
Address: 192.168.200.103
Hôte:
$ Host server
server.company.com is an alias for server001.company.com.
server001.company.com has address 192.168.200.103
Ping:
$ ping server
ping: unknown Host server
$ ping server.company.com
PING server001.company.com (192.168.200.103) 56(84) bytes of data.
64 bytes from server001.company.com (192.168.200.103): icmp_seq=1 ttl=64 time=4.61 ms
J'utilise ping comme exemple parce que c'est simple, mais la plupart des autres outils que je dois utiliser affichent les mêmes résultats que ping.
Faites-moi savoir si vous avez besoin de plus de fichiers de configuration ou d'informations.
/ etc/hosts n'a aucune information relative au serveur auquel je tente de me connecter.
Voici /etc/resolv.conf, qui a été généré par resolvconf.
# Add Company Nameservers and Domain
nameserver 192.168.200.53
nameserver 192.168.200.65
search company.com
nameserver 127.0.1.1
search company.com
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
search hsd1.co.comcast.net
Et/etc/network/interfaces:
# interfaces(5) file used by ifup(8) and ifdown(8)
auto lo
iface lo inet loopback
Votre fichier resolv.conf est un gâchis. Par exemple, il devrait y avoir au plus une ligne search
dans le fichier. Il semble que quelque chose d'autre que resolvconf soit en train d'écrire dans le fichier. Resolvconf écrit toujours un fichier resolv.conf au format suivant:
head
base + dynamic content
tail
où head
, base
et tail
sont les fichiers de /etc/resolvconf/resolv.conf.d/. Le fichier head
ne contient normalement que le commentaire # Dynamic resolv.conf(5) file... OVERWRITTEN
. Vous dites que vous avez ajouté une ligne search
au fichier, mais votre fichier resolv.conf contient d'autres éléments au-dessus du commentaire susmentionné.
J'imagine que /etc/resolv.conf n'est plus un lien symbolique vers /run/resolvconf/resolv.conf et/ou que vous utilisez un logiciel de configuration réseau tiers qui fonctionne avec /etc/resolv.conf dans un manière qui n'est pas compatible avec Ubuntu.
Solution: arrêtez d'utiliser ce logiciel ou corrigez-le, puis exécutez Sudo dpkg-reconfigure resolvconf
pour restaurer le lien symbolique dans /etc/resolv.conf.
essayer
echo " dns-search company.com" >> /etc/network/interfaces
Suivi d'un redémarrage (à moins que vous ne sachiez comment réinitialiser tous vos caches DNS, dans le navigateur et le système, un redémarrage du réseau ne suffit pas).
Je suis sûr que ping, ssh et éventuellement d’autres utilisent le fichier/etc/Host. Vous pouvez également essayer de définir vos noms de serveur sur le serveur 192.168.1.100. Ensuite, sourcez le fichier ou déconnectez-vous puis reconnectez-vous. Cette fois-ci, lorsque vous envoyez une requête ping au serveur ou utilisateur ssh @ serveur, cela devrait fonctionner. En ce qui concerne le serveur Web, vous devez ajouter un enregistrement A à votre adresse DNS de serveur DNS. Vous devriez alors pouvoir accéder via http: // serveur
Modifier
Est-ce qu’une partie de cette configuration utilise Samba ou gagne le serveur, ou ai-je complètement mal compris quelque chose?.