22枚め:VistaでDHCPサーバからIPアドレスを取得できない場合に対処する普段何気なく使っているルータのDHCPサーバ機能。Vistaに移行したらIPアドレスを自動取得できなくなってしまった......。家庭内LANでは、TCP/IPの設定を手動で行わず、ブロードバンドルータのDHCPサーバ機能を利用することが多いだろう。Protocolの略で、インターネットに接続するクライアントPCにIPアドレスなどのネットワーク情報を提供する機能を持つ。ブロードバンドルータに搭載されたDHCPサーバ機能を利用すれば、特別なセットアップを行わなくても、クライアントにIPアドレスを自動で振り分け、DHCPクライアントに通知するためのDNSサーバやデフォルトゲートウェイの設定も適切に処理してくれるので非常に便利だ。実際、こうした設定を意識せずに、ブロードバンドルータを使ってインターネットに接続しているユーザーは少なくないだろう。VistaはDHCPクライアントの動作が一部変更されており、DHCPサーバからIPアドレスおよびTCP/IPの構成情報を取得できない場合がある。XP(SP2)と同じ動作を行うように設定すると解決できるかもしれない。Vistaで変更されたのは、DHCPのBROADCASTフラグだ。XP(SP2)では、BROADCASTフラグが無効だったが、Vistaではデフォルトで有効に変更された。BROADCASTフラグとは、DHCP発見パケットのこと。詳しくは、クライアントがDHCPサーバにブロードキャストでの応答を要求するためのフラグで、IPアドレスを設定されるまでユニキャストのIPデータグラムを受け取れないクライアントであることを意味する。このBROADCASTフラグを正しく理解しないルータやそのほかのデバイスがDHCPサーバとなっている場合、VistaではIPアドレスを取得できない。XP(SP2)と同様の動作に変更するにはレジストリを変更する必要がある。具体的には、レジストリエディタから「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{GUID}」キーにDWORD値「DhcpConnDisableBcastFlagToggle」を作成し、値のデータを「1」に設定すればよい。/v」と入力して実行すれば確認できる。「スタートメニュー」のクイック検索に「regedit」と入力し、レジストリエディタを起動する。「HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\{GUID}」キーまでたどって開く。右ペインの何もないところを右クリックし、表示されるメニューから「新規」−「DWORD(32ビット)値」と選択し、名前が「DhcpConnDisableBcastFlagToggle」のDWORD値を作成する。このDWORD値をダブルクリックし、値のデータを「1」に設定すればよい(写真=左)。変更するインタフェースのGUIDは、getmacコマンドで確認できる(写真=右)注意レジストリの操作は、Windowsの基幹に関わる設定を変更するため、不具合が発生する可能性があります。設定を変更する場合はバックアップを取ったうえ、自己責任でお願いいたします。編集部はWindowsの設定変更により生じた損害について、一切の責任を負いません。利用規約ITmediaはアイティメディア株式会社の登録商標です。