同一セグメントに複数のDHCPサーバがある場合の問題

ここでは、DHCPの冗長化における注意点を説明します。

 IPアドレスを自動で取得するようにネットワークを構築している場合、DHCPサーバが1台だけだとDHCPサーバがシングルポイントフェイルとなり、DHCPサーバがダウンするとIPアドレスを自動取得するように設定された全てのクライアントがネットワークに接続できなくなってしまいます。

 DHCPサーバを冗長化することで、シングルポイントフェイルを解消できるわけですが、問題点がないわけでもありません。ここでは、その問題点について説明します。

 同一セグメントに複数のDHCPサーバがある場合、クライアントは複数のDHCP Offerを受け取ることになります。クライアントは、その中からどれか1つを選んでDHCP Requestを送ります。

 どれか1つを選ぶのだから、問題ないと思うかもしれませんが、DHCPサーバを複数設置する場合には、DHCPサーバのIPアドレスの払い出しに注意する必要があるのです。

 もしも、各DHCPサーバでIPアドレスをリースする範囲が重なっていた場合、リースのされ方によって、1つのネットワーク上に重複するIPアドレスを持ったクライアントが存在してしまうことになります。

その結果、ネットワークに混乱が生じ、うまく通信が行えなくなってしまいます。

 この問題を解決するためには、それぞれDHCPサーバでリースの範囲が重ならないように設定する必要があります。

 しかし、問題点もあります。それは、リースの範囲を重ならないようにIPアドレスプールを設定することで、利用できるIPアドレスが減ってしまうということです。

 DHCPサーバが2台の場合、IPアドレスプールを重ならないように半分ずつにしておかないとリースの範囲が重なってしまいますから、同時に使用できるIPアドレスが半分になってしまうのです。

複数のDHCPサーバを設置する場合には、その辺りを考慮して、IPアドレッシング計画を行う必要があります。

DHCPサーバの配置場所における問題

 DHCPクライアントは、IPアドレスなどの情報を払い出してもらうためにDHCP Discoverを送信します。このDHCP Discoverは、ブロードキャストです。

下の図を見て下さい。DHCPサーバがルータを越えた先に設置されている場合はどうなるのでしょうか?

 ルータは、ブロードキャストは転送しないでブロックするため、ルータを越えた先にあるDHCPサーバには、DHCP Discoverが届かないことになります。

 結局、DHCPクライアントは、DHCPサーバにDHCP Discoverを届けることができないので、タイムアウトになりIPアドレスを取得することができないので、ネットワークに接続できなくなってしまいます。

ルータによってブロードキャストがブロックされるということは、ネットワークごとにDHCPサーバが必要だということになります。

 DHCPを用いることで、せっかく、IP関連のパラメータの設定を自動化できても、これでは、DHCPサーバの台数が多くなってしまい、サーバの運用管理が大変になり自動設定のメリットが半減してしまいます。

 DHCPサーバを立てたらほったらかしというわけには、ゆきません。OSのアップデートも必要ですし、台数が増える分、動作不良や故障の発生回数も増え、メンテナンスも必要です。

 1台のDHCPサーバでネットワークごとに自動配布し集中管理できると、管理的にもコスト的にもメリットが大きいですよね!

 そこで、「DHCPリレーエージェント」という機能が用意されています。この機能を用いることで、DHCPのブロードキャストの要求を中継できるようになります。

DHCPリレーエージェント

 ルータは、ブロードキャストを転送しないでブロックするため、ルータを越えた先にあるDHCPサーバにメッセージを届けることができません。

この問題を解決するには、DHCPのブロードキャストの要求を中継する必要があります。

 この送られてきたDHCPクライアントからの要求を受け取って、別のネットワーク上のDHCPサーバに中継する機能のことをDHCPリレーエージェントと呼びます。

この機能を用いることで、ネットワークごとにDHCPサーバを設置せずに済むようになります。

この機能をネットワークに実装するには、いくつか方法があります。

1つ目は、DHCPのリレーを行うサーバを用意する方法です。

2つ目は、ルータにリレーエージェントの設定を行う方法です。

 いずれの方法においてもDHCPサーバのIPアドレスを登録します。するとDHCPリレーエージェントはブロードキャストでやってきたDHCPのメッセージをユニキャストに変換して、DHCPサーバに中継するようになります。

 このDHCPリレーエージェント機能を利用すれば、ルータによってネットワークが分割されていても1台のDHCPサーバでIPアドレスなどのネットワーク情報の自動設定を行うことができるようになります。