eh bien je viens d'entrer dans le monde Ubuntu pour l'administration. J'ai trouvé des threads similaires, sauf que je peux envoyer une requête ping à mon propre nom d'hôte et adresse IP et que mes fenêtres peuvent envoyer une requête ping à mon nom d'hôte linux, mais Ubuntu ne peut pas envoyer de requête ping au nom d'hôte Windows.
Problème:
- J'ai 4 ordinateurs Windows et 1 ordinateur Ubuntu
- Mon ordinateur Windows peut envoyer une requête ping à l'ordinateur Ubuntu par nom d'hôte et par adresse IP. De plus, Net View (invite cmd) affiche le nom d'hôte de l'ordinateur Ubuntu.
- L'ordinateur Ubuntu peut uniquement envoyer un ping par adresse IP et non par nom d'hôte. J'ai également installé Samba.
- L'ordinateur Ubuntu peut se pinguer par adresse IP et par nom d'hôte
- Je peux utiliser la commande arp et afficherai tous les ordinateurs IP sur le réseau, mais uniquement par adresse IP.
Comment se fait-il que je puisse uniquement envoyer une requête ping par adresse IP et non par nom d'hôte aux ordinateurs Windows? Mais Ubuntu peut se cingler par adresse IP et nom d'hôte et les ordinateurs Windows peuvent également cingler Ubuntu par nom d'hôte?
Réponses:
Le problème décrit ici n'est peut-être pas du tout lié au DNS.
Vous devez savoir que Windows peut résoudre le nom d'hôte Windows en son IP via d'autres mécanismes que le DNS standard: recherche NetBIOS, WINS, ...
Comme vous avez dit que Samba était installé sur votre Ubuntu, c'est probablement ce qui se passe. Sur l'ensemble de votre machine Windows, il est possible, prêt à l'emploi, de résoudre le nom Windows en son adresse IP. Comme Samba est installé sur Ubunut, pour votre PC Windows, ils voient le PC Ubuntu comme un PC Windows et la même résolution est possible.
Vous dites que vous exécutez
net view
sur Windows et que vous voyez votre PC Ubuntu, donc le nom NetBIOS est bien publié sur votre réseau, donc cela fonctionne à partir de Windows.Pour obtenir le même comportement sur Ubuntu que sur Windows, vous devez installer et configurer des logiciels supplémentaires. Ce dont vous avez besoin est d'ajouter une bibliothèque de recherche qui permettra à Ubuntu de convertir les noms NetBIOS en IP. Cette bibliothèque est contenue dans le paquet libnss-winbind .
Comme tout autre paquet Ubuntu, vous l'installez en faisant
sudo apt-get install libnss-winbind
. Peut-être que la bibliothèque est déjà installée, vous pouvez vérifier sa présence en faisantdpkg -l|grep libnss-winbind
.Une fois la bibliothèque installée, vous devez l'activer dans le
/etc/nsswitch.conf
fichier. Ce fichier est le fichier de configuration du NSS ( Name Service Switch ), qui définit à partir de quelles sources Linux peut résoudre le nom d'hôte, les noms d'utilisateur, les noms de groupe, etc.Dans ce fichier, vous avez déjà une ligne commençant par
hosts:
, ressemblant probablement à ceciCela indique à votre système de regarder d'abord le
/etc/hosts
fichier, puis le DNS configuré pour résoudre les noms d'hôte.Vous devez modifier de cette façon:
Notez que l'ordre des mots fichiers , DNS et victoires est important. Tout d'abord, le système vérifiera la résolution du fichier local, puis demandera au serveur DNS et enfin, s'il n'est pas encore trouvé, effectuera la recherche NetBIOS.
Une fois celui-ci mis à jour, pour fonctionner correctement, vous devez également exécuter le service winbind . Le paquet qui le contient est une dépendance de libnss-winbind , il a donc été installé en même temps.
Faites
service winbind start
pour l'activer.la source
La conversion des noms d'hôtes en IP peut se produire si:
-Vous les déclarez dans le fichier / etc / hosts (non recommandé)
-Vous l'obtenez à partir d'un serveur DNS.
Je dirais que votre problème peut être que votre configuration d'interface réseau n'a pas de serveur DNS ou n'utilise pas celle utilisée par les boîtes Windows. S'ils utilisent la configuration de l'interface DHCP, la configuration DNS est le plus souvent incluse, et si vous avez un serveur de domaine Windows sur votre réseau, ils l'utilisent très probablement comme DNS principal.
Essayez: 'nslookup some_machine_name' en ligne de commande pour voir ce qui se passe. Il vous indiquera le serveur que vous utilisez, le cas échéant.
HTH
la source