[画像のクリックで拡大表示]

あなたは以下の構成のネットワークを管理している。ブロードバンド・ルーターにDHCPサーバー機能があり,パソコンがDHCPクライアントとなっている。月曜日の朝に出社したら,一部の社員から「インターネットに接続できない」という報告があった。トラブルを解決するために,障害の報告があったPC1のユーザーのパソコンのTCP/IP設定を確認すると次のようになっていた。このパソコンが通信できなくなった原因として考えられるものを,選択肢から一つ選びなさい。

[選択肢]
a. 不正なDHCPサーバーがネットワーク上に存在する
b. パソコンに間違ったIPアドレスを静的に設定している
c. ブロードバンド・ルーターのDHCPサーバー機能が無効にされている
d. 障害があるパソコンのLANカードが壊れている
e. 障害があるパソコンが接続されているLANスイッチのポートが壊れている

[解説]
 正解は,選択肢aの「不正なDHCPサーバーがネットワーク上に存在する」です。

 一部のパソコンだけがネットワークにうまく接続できないというトラブルは解決が難しいものです。そのようなトラブルの原因としてよくあるのが,「不正なDHCPサーバーの接続」です。

 DHCPは,IPアドレス,サブネット・マスク,デフォルト・ゲートウェイ,DNSサーバーのIPアドレスなど,TCP/IPの通信に必要なアドレス情報を自動設定するためのプロトコルです。あらかじめDHCPサーバーに割り当て可能なIPアドレスを設定しておきます。DHCPサーバーとDHCPクライアントは,DHCPDISCOVER,DHCPOFFER,DHCPREQUEST,DHCPACKという四つのメッセージをやりとりすることで,機器にIPアドレス情報を配布します。

 上記の四つのメッセージのやりとりの様子を簡単に解説します。

 DHCPクライアントは,起動するとDHCPDISCOVERメッセージをブロードキャストしてDHCPサーバーを探します。DHCPサーバーがこれを受信すると,DHCPOFFERメッセージで割り当て可能なIPアドレス情報をDHCPクライアントに提示します。DHCPクライアントがこの提示されたアドレス情報をDHCPREQUESTでサーバーへ要求すると,サーバーはDHCPACKで要求された内容を承認します。

 ここで,複数のDHCPサーバーが存在するケースを考えてみます。この場合,複数のDHCPサーバーが,クライアントが送信したDHCPDISCOVERに応答することになります。このときクライアントは,先に受信した方のDHCPOFFERに対してDHCPREQUESTを送信します。そのため,ネットワーク上に不正なDHCPサーバーが存在すると,クライアントはその不正なDHCPサーバーから受け取ったアドレス情報を設定してしまうことになります。すると,社内ネットワークやインターネットに接続できなくなってしまいます。

DHCPOFFERメッセージのやりとり

 さて,問題のipconfigの表示結果を見てみると,DHCPサーバーのIPアドレスが192.168.100.1となっています。つまり,正規のDHCPサーバー(ブロードバンド・ルーターである192.168.1.254)ではなく,不正なDHCPサーバーが配布したアドレス情報を設定してしまっています。したがって,正解は選択肢aということがわかります。

 この問題を解決するには,まず,不正なDHCPサーバーをネットワークから切り離します。そして,不正なDHCPサーバからの情報を利用しているクライアントで再度DHCPによるアドレスの取得します。再度DHCPでアドレスを取得するには,コマンドプロンプトで「ipconfig /renew」と入力します。