Décidemment je crois que j'ai du mal à exposer clairement un problème.
Je n'ai parlé d'un script que pour citer un cas typique où l'accès à une station distante ne pouvait être envisagé que via son nom d'hôte. Alors oublions si cela obscurci le propos.
Je ne vais m'intéresser qu'à la commande ping lancée dans un terminal. Cette commande s'exécute en indiquant comme cible aussi bien son adresse IP que son nom d'hôte.
Chez moi le ping sur une adresse IP fonctionne toujours mais celui sur le nom d'hôte seulement dans certaines circonstances. J'ai identifié ces circonstances.
La station distante est un ordinateur tournant sous Windows 7 et nommé "Poste-7". Sur celui-ci sont installés un certain nombre de logciels dont Virtual Box. Dans Virtaul Box une machine virutuelle Windows 10 a été installée. Le mode NAT a été choisi comme mode de fonctionnement réseau et, pour assurer la communication entre la machine hôte et la machine invitée, Virtual Box a crée une carte réseau émulée qui apparaît dans le Gestionnaire de périphériques. Voici le résultat d'une commande
ipconfig.
On voit la carte physique et cette carte ajoutée. Les adresses IP correspondant à l'une et à l'autres ne sont pas dans le même sous-réseau IP.
Première phase de test
Sur la machine Linux, sans rien changer sur celle sous Windows, je passe d'abord la commande
nmblook Poste-7. Le résultat est montré sur cette copie d'écran.
Deux adresses IP sont détectées pour Poste-7.
Je passe ensuite d'abord la commande
ping Poste-7 puis à la suite la commande
ping 192.168.1.1.
Comme le montre cette nouvelle copie d'écran le ping sur le nom d'hôte ne s'exécute même pas.
Deuxième phase de test.
Sur la station Windows je désactive la carte émulée. Voici le résultat d'une nouvelle commande ipconfig.
La carte émulée n'y figure plus.
Sur la machine Linux, je passe de nouveau la commande
nmblook Post-7 dont voici le résultat.
Là aussi il ne figure plus qu'une seule adresse IP.
Comme précédemment je passe à la suite les commandes
ping Poste-7 puis
ping 192.168.1.1.
On voit que les deux sont effectuées avec succès
Autres tests
On observe un comportement identique avec d'autes commandes comme
mount.cifs ou
caja .
Conclusion
Le seul changement entre les deux phases de test décrites ci dessus, facilement reproductibles, est la désactivation de la carte résau émulée. Lorsqu'elle est active Linux voit deux adresses IP pour le même nom d'hôte, dont l'une n'est pas joignable (sous-réseau IP distinct), et les commandes basées sur le nom d'hôte échouent. Lorsqu'on désactive cette carte Linux ne voit plus qu'une seule adresse IP et ces mêmes commandes sont effectuées avec succès.
Je ne sais pas qui est impliqué dans ce comportement non souhaité mais les faits sont indéniables.