web-dev-qa-db-ja.com

コンピュータはどのようにしてDHCP経由でIPアドレスを取得しますか?

コンピューターはどのようにしてネットワーク上のどのデバイスに問い合わせるべきかをどのようにして知るのでしょうか?デフォルトゲートウェイはこれをどのように考慮しますか?かなりコンピュータがDHCPを使用してIPアドレスを取得しようとしたときに発生する一連のイベントは何ですか

私が尋ねる理由は、元のサーバーが何らかの理由で失敗した場合に備えて、冗長DHCPサーバーを最適にセットアップする方法を見つけようとしているためです。

27
Bigbio2002

照会するデバイスがわかりません。したがって、サブネット全体に要求をブロードキャストします。 DHCPサーバーは特定の種類の通信をリッスンしており、特定のブロードキャストを聞くと、要求をブロードキャストしたデバイスとのDHCP会話を開始します。詳細は DORAプロセス を参照してください。

DORAの略:

ゲートウェイに関しては、DHCPトラフィックを明示的に別のサブネットに転送する場合にのみ、ゲートウェイが機能します。この機能は通常 DHCPリレー と呼ばれます。それ以外の場合、ゲートウェイは他のすべてのブロードキャストメッセージを無視するのと同じように、ブロードキャストDHCPメッセージを無視します。

冗長DHCPサーバーについては、両方を同じサブネット上に保持し、おそらく 80/20ルール を使用する必要があります。 CentOSをDHCPサーバーとして使用している場合 の場合、フェイルオーバーを設定できます。

41
Wesley

DHCPは(通常)ブロードキャストプロトコルであるため、クライアントはネットワークについて何も知る必要がなく、単に要求をブロードキャストします。

ネットワーク上のDHCPサーバーは、その要求を確認して応答します。

もちろん、ルーティングやその他のネットワークデバイスのため、それよりもはるかに複雑です。 ウィキペディアのページは優れたソースです

そして 関連RFC が詳細をカバーしています。

3
EightBitTony

私が尋ねる理由は、元のサーバーが何らかの理由で失敗した場合に備えて、冗長DHCPサーバーを最適にセットアップする方法を見つけようとしているためです。

最初に、プロトコルについてもっと学ぶことにあなたの関心を称賛します。それは良い計画です。

第二に、私はあなたの目標を説明してくれてありがとう。良い答えを得るのに役立つと思います。

最後に、私の答え:

どちらのDHCPサーバーを選択した場合でも、フェイルオーバー/冗長構成により、自動的に引き継ぐことができる冗長DHCPサーバーをセットアップできるようになる可能性があります(Windowsにはそのようなサーバーがあると信じており、ISCのDHCPサーバーでも可能です)。それは通常、障害が発生する前にプライマリDHCPサーバーによって提供されたリースの問題に対処し、自動的かつ迅速に回復するため、これが私の最初の選択になります。

2番目の選択肢は、別のマシンで構成を完全に複製して、最初のマシンに障害が発生した場合に他のマシンを手動で起動できるようにすることです。既存のリース情報が失われるため、最初のDHCPサーバーの障害からreplacemntを起動するまでの暗黙的なダウンタイムのため、これは最適ではありません。

3
Slartibartfast

DHCPサーバーからIPアドレスを取得するには、いくつかの手順が必要です。

  1. 検出メッセージ。このメッセージは、dcpサーバーを検索するためにブロードキャストされます。

  2. ネットワーク内のDHCPサーバーは、オファーメッセージで応答します。

  3. DHCP要求メッセージは、ブロードキャストによってクライアントによって送信されます。このメッセージは、クライアントによって受け入れられた提案がネットワーク内のすべてのDHCPサーバーに通知されます。

  4. DHCP確認メッセージは、サーバーによる確認のために送信されます。

2
eos