WindowsのDHCPサーバーで固定IPアドレスを設定する:Tech TIPS
DHCPサービスによって割り当てられるIPドレスは通常、固定ではなく、毎回異なるものになる可能性がある。特定のコンピュータに固定IPアドレスを割り当てたければ、DHCPサーバの予約機能を利用する。
対象OS:Windows 2000 Server/Windows Server 2003
解説
DHCPサービスを利用すると、クライアント・コンピュータに対するIPアドレスやネットマスクといった、TCP/IPに関するパラメータの設定を完全に自動化することができる。あらかじめDHCPサーバ側に設定しておいたIPアドレス群(IPアドレス・プールという)から未使用のものが選ばれ、それがクライアントに一定期間「貸し出される」のである。
このときに各クライアントに割り当てられるIPアドレスは、デフォルトでは、先着順にアドレス・プールの先頭の方から割り当てられる。そのため、コンピュータごとにどれが割り当てられるかは事前には分からないし、次回起動したときにまた同じIPアドレスが割り当てられるかどうかも分からない。1度割り当てられたIPアドレスは、リース期間内ならばずっと継続的に利用できるが、その後は別のIPアドレスに変更されることもある(Windows Server OSのDHCPサーバでは、リース期間終了後もなるべく同じIPアドレスを継続して割り当てるようになっている)。
このようにDHCP環境では、クライアント・コンピュータのIPアドレスは毎回変更される可能性があるが、場合によってはこのような運用方法は望ましくないことがある。管理者の立場からすると、サーバ的な用途のコンピュータではIPアドレスはなるべく変更されずに、ずっと同じである方が望ましいだろうし(IPアドレスが変わると、クライアントからの接続が切れる可能性がある)、ファイアウォールや管理ソフトウェアなどの設定の都合を考えると、各クライアントのIPアドレスを固定しておいた方が望ましい場合もある。
DHCPサーバの予約機能を利用することにより、各クライアント・コンピュータごとに、あらかじめ決められた固定的なIPアドレスを割り当てることができる。
ただし新しいIPアドレスの使用を予約しても、その結果がすぐにクライアント・コンピュータに反映されるわけではない。再起動などで次にIPアドレスが更新されるときに割り当てられるからだ。また、予約しようとしてるIPアドレスが、すでに別のコンピュータに割り当てられている場合は、そのコンピュータがIPアドレスを解放しない限り、使用することはできない。
このようなトラブルを避けるため、IPアドレスのプールを定義する場合は、予約する予定のIPアドレス範囲を、あらかじめDHCPのスコープから「除外」して定義しておくとよいだろう。例えば、クライアント・コンピュータに割り当て可能なIPアドレス全体の範囲が10.20.2.100〜10.20.2.199で、そのうち固定的に割り当てたい領域が10.20.2.100〜10.20.2.149だとすると、その部分をあらかじめ「除外範囲」として定義しておく。これにより、固定で50個分のIPアドレスと、自由割り当て可能な50個分のIPアドレス領域が確保できる。その後、除外範囲に含まれるIPアドレスを順番に予約クライアントとして定義していけばよい。
操作方法
IPアドレスを特定のクライアント・コンピュータに予約割り当てするには、まず各クライアントのMACアドレス情報を収集しなければならない。(イーサネットや無線LANの)MACアドレス情報は、コンピュータ本体やネットワーク・インターフェイス・カード上に記入されていることが多いので、それをいちいちメモしてもよいし、1度DHCPでIPアドレスを割り当てさせてから、その値を調査してもよい。サーバ側から調査するにはarpコマンドを利用したり、DHCPサーバ管理ツールの「アドレスのリース」で調べることもできるが、確実なのは、クライアント側のコンピュータ上で直接調査することである。サーバ側から見えるコンピュータ名とクライアント側で実際に定義しているはずのコンピュータ名が違っているかもしれないので(間違って別のコンピュータの情報を調べているかもしれないから)、できる限りクライアント側で調査するのがよい。コマンド・プロンプトを開いて「ipconfig /all」で表示させてもよいし、コントロール・パネルのネットワーク・アイコンをクリックして、各インターフェイスの[詳細状態]を表示させてもよいだろう。Windows 9x/Me系の場合はWINIPCFG.EXEというコマンドも利用できる。
MACアドレスは16進数で12桁(6bytes)の数字であるが、これを以下のようにして、「新しい予約」として定義する。
まずDHCPの管理ツールで目的のスコープを表示させ、さらに[予約]項目を右クリックして、ポップアップ・メニューから[新しい予約]を実行する。
新しい予約項目を定義する
[スタート]メニューの[管理ツール]−[DHCP]でDHCPの管理ツールを実行し、IPアドレスとMACアドレスの対応情報を新しく予約する。
(1)新しく予約したいスコープを選択する。
(2)すでにクライアント・コンピュータに割り当てられたIPアドレスとそのMACアドレス情報をここで調査することもできる。
(3)予約の定義。デフォルトでは何も予約されていない。これを右クリックして、ポップアップ・メニューを表示させる。
(4)これを選択する。
すると、新しく予約するIPアドレスとMACアドレスを入力するダイアログが表示される。
DHCPの予約設定
各クライアントごとに、IPアドレスとMACアドレスの対応を定義しておく。
(1)予約名。コンピュータ名をセットしておくとよい。ただしDHCPでIPアドレスを割り当てると、そのコンピュータに付けられている実際のコンピュータ名がここにセットされることがある(DNSサーバとDHCPサーバが連携するように設定されている場合)。
(2)割り当てるIPアドレス。スコープの範囲内のIPアドレスにすること。
(3)MACアドレス。このように12桁の16進数を区切り文字なしで続けて記述する(つまり11:22:33:aa:bb:ccではなく112233aabbccのように指定する)。
(4)コメント。
(5)サポートするクライアントがDHCPかBOOTPかの選択。BOOTPはDHCPの前身のプロトコルであり、BOOTPしか利用できないネットワーク機器はもうほとんど使われていないと思われる。
[予約名]には、コンピュータの名前とドメイン名(FQDN名)を指定するが、Windows OSの場合はこの値は特に意味がない。コンピュータ名がこの予約名になることはなく、逆に、現在のコンピュータ名がここに反映されることがある(DNSサーバとDHCPサーバが連携するように設定されている場合)。
■この記事と関連性の高い別の記事
- DHCPによる未許可クライアントへのIP割り当てを禁止する(TIPS)
- Windowsでは、DHCPによるIPアドレスの切り替え時に、いったん解放してから再割り当てする(TIPS)
- ネットワークカードに複数のIPアドレスを割り当てる(TIPS)
- DHCPサーバを冗長構成で運用する方法(TIPS)
- 不正なDHCPサーバを見付ける(TIPS)
- Virtual PC 2007の共有NATネットワークで利用可能なアドレス範囲に注意(TIPS)
- ドメイン名に対してIPアドレスを割り当てる(TIPS)
- WindowsでIPアドレスからホスト名を見つける方法(nbtstatコマンドを使ってNetBIOS名を特定する)(TIPS)
- Windowsで、使用中のIPアドレスを調査する(TIPS)
Copyright© Digital Advantage Corp. All Rights Reserved.