Nous avons des salles de formation où normalement Windows XP est installé (via PXE). L'infrastructure DNS / DHCP "normale" est constituée de serveurs Windows. La salle de formation a son propre VLAN (différent des serveurs Windows), il y a donc très probablement un assistant IP pour les requêtes DHCP actives sur le routeur Cisco auquel tous les PC de cette salle sont connectés.
Maintenant, nous voulions plutôt convertir certains PC en Linux. L'idée était: mettre notre propre ordinateur portable avec un serveur DHCP dans le VLAN de la pièce et remplacer la réponse DHCP "normale". L'idée était que cela devrait fonctionner, puisqu'un serveur DHCP directement connecté dans ce VLAN devrait avoir un temps de réponse plus rapide que le serveur DHCP "normal" situé à quelques sauts de ce VLAN.
Il s'est avéré que cela n'a pas fonctionné. Nous avons dû libérer manuellement le bail sur le serveur DHCP d'origine pour le faire fonctionner.
Sur l'ordinateur portable, nous avons vu le client demander l'IP et "notre" dhcp envoyait des NACK à la demande IP de Windows, avant de proposer notre propre réponse.
Vieille question: pourquoi cela n'a-t-il pas fonctionné comme prévu? Qu'est-ce qui fait que le PC retrouve son ancien bail?
Mise à jour 2012-08-08:
Le problème de regain a été expliqué dans le DHCP-RFC. Maintenant, cela explique pourquoi le PC retrouve son ancien bail.
Maintenant, nous libérons l'IP du serveur Windows-DHCP avant de faire un nouvel essai.
Encore une fois - le serveur Windows-DHCP gagne.
Je soupçonne qu'il existe un algorithme pour le client dhcp qui détermine la "meilleure" réponse dhcp pour le client. La nouvelle question est:
Comment le client choisit-il la "meilleure" réponse?