Comment un ordinateur obtient-il une adresse IP via DHCP?


27

Comment l'ordinateur sait-il quel périphérique du réseau interroger? Comment la passerelle par défaut prend-elle en compte cela? À peu près, quelle est la chaîne d'événements qui se produit lorsqu'un ordinateur tente d'obtenir une adresse IP à l'aide de DHCP ?

La raison pour laquelle je demande, c'est parce que j'essaie de comprendre comment configurer au mieux un serveur DHCP redondant, au cas où l'original échouerait pour une raison quelconque.

Réponses:


41

Il ne sait pas quel appareil interroger. Ainsi, il diffuse sa demande à l'ensemble du sous-réseau. Le serveur DHCP écoute un certain type de communication et lorsqu'il entend cette diffusion spécifique, il commence la conversation DHCP avec le périphérique qui a diffusé sa demande. Jetez un œil au processus DORA pour plus d'informations.

DORA signifie:

Quant à la passerelle, elle ne peut entrer en jeu que si elle transfère explicitement le trafic DHCP vers un autre sous-réseau. Cette fonctionnalité est généralement appelée relais DHCP . Sinon, la passerelle ignore le message DHCP de diffusion comme elle ignore tous les autres messages de diffusion.

Quant aux serveurs DHCP redondants, vous voudrez les garder tous les deux sur le même sous-réseau et utiliser probablement la règle 80/20 . Vous pouvez configurer le basculement si vous utilisez CentOS comme serveur DHCP .


17
+1 DORA l'explorateur dhcp? Je suppose que ce serait plus un DORA le découvreur
Nixphoe

3
@Nixphoe Me gusta.
Wesley

Voici une question, il y a généralement une adresse de diffusion associée à chaque sous-réseau, ne sachant rien du réseau comment la carte réseau formule-t-elle le message afin que le serveur DHCP (et les commutateurs intermédiaires) l'obtiennent?
crasic

2
@crasic - à droite, dans ce cas, il diffuse le 255.255.255.255
Mark Henderson

1
@Mark D'oh, la plupart de cela est expliqué dans le lien dans la réponse, la prochaine fois que je devrais RTFA
crasic

3

Le DHCP est (généralement) un protocole de diffusion, donc le client n'a pas besoin de savoir quoi que ce soit sur le réseau, il diffuse simplement une requête.

Les serveurs DHCP du réseau voient alors cette demande et y répondent.

Bien sûr, c'est beaucoup plus complexe que cela, en raison du routage et d'autres périphériques réseau. La page Wikipedia est une excellente source .

Et le RFC correspondant couvre les détails.


3

La raison pour laquelle je demande, c'est parce que j'essaie de comprendre comment configurer au mieux un serveur DHCP redondant, au cas où l'original échouerait pour une raison quelconque.

Tout d'abord, je loue votre intérêt à en savoir plus sur le protocole. C’est un bon plan.

Deuxièmement, je vous remercie d'avoir expliqué votre objectif; Je pense que cela vous aidera à obtenir une bonne réponse.

Enfin, ma réponse:

Quel que soit le serveur DHCP que vous choisissez, il existe probablement une configuration de basculement / redondance qui vous permet de configurer un serveur DHCP redondant qui peut prendre le relais automatiquement (je crois que Windows en a un, et je sais que le serveur DHCP de l'ISC le peut). Ce serait mon premier choix, car il résout généralement les problèmes de baux accordés par le serveur DHCP principal avant sa défaillance, et parce qu'il se rétablit automatiquement et rapidement.

Le deuxième choix serait de dupliquer entièrement la configuration sur une autre machine afin que vous puissiez mettre l'autre machine manuellement en cas d'échec de la première. Ce n'est pas aussi optimal, car vous perdrez les informations de bail existantes et en raison du temps d'arrêt implicite entre le premier serveur DHCP défaillant et lorsque vous lancerez le remplacement.


Je vois l'intérêt de la règle 80/20 ... si le serveur 80 tombe en panne, alors il y a toujours le serveur 20 pour donner des adresses IP. Mais cela ne fournit aucun type de support pour un temps d'arrêt prolongé, car tous les clients voudront éventuellement renouveler leur bail, mais avec seulement 20% de la plage d'adresses précédente disponible. J'aime votre suggestion de redondance "réelle", mais l'utilisation d'une deuxième machine Windows ne serait pas une option dans mon scénario (le pare-feu matériel serait l'autre serveur DHCP). Je suppose que je pourrais reconfigurer manuellement le serveur 20 en serveur 100? ;)
Bigbio2002

2

Plusieurs étapes sont impliquées dans l'obtention d'une adresse IP à partir d'un serveur DHCP.

  1. Message de découverte, ce message est diffusé pour rechercher un serveur dchp

  2. Les serveurs DHCP du réseau répondent avec un message d'offre.

  3. Le message de demande DHCP est envoyé par le client par diffusion. Ce message informera tous les serveurs DHCP du réseau, quelle offre a été acceptée par le client.

  4. Un message d'acquittement DHCP est envoyé pour confirmation par le serveur.


1
Votez pour la simplicité. Ce serait formidable si vous pouviez incorporer cela dans la réponse acceptée
Bigbio2002

@ Bigbio2002 C'est votre question. Vous pouvez décider quelle réponse doit être acceptée.
Michael Hampton
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.