DHCP では、クライアントに色々な情報を提供します。通常、この情報は設定 ファイルに書いておかなければなりません。ここでは簡単な dhcpd.conf の 例を示します。詳しくは、man で dhcpd.conf を参照して下さい。
# configuration file for ISC DHCPD option domain-name "summer01.wakhok.ac.jp"; option domain-name-servers pc2f001.summer01.wakhok.ac.jp; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.100 192.168.0.150; option routers 192.168.0.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option netbios-name-servers 192.168.0.1; option netbios-dd-server 192.168.0.1; option netbios-node-type 8; default-lease-time 600; max-lease-time 7200; } |
{
と }
で囲まれた部分に書かれた記述は、全てこの
サブネットについてのみ適用される。グローバルなオプションもここに書けば、
オーバーライドされる。
range A B:とした場合、A から B までの IP アドレスがクライアントに順に提供される。 提供されている IP アドレスは、dhcpd.leases に記録される。
default-lease-time
の時間を良く考えなければならない。実際、
最低 max-lease-time
の時間は(実際にはこの時間より長く見積
もっているだろうから)貸し出したIPを回収出来ないという事
になるのであるから、情報コンセントなどの多数が短い時間に利用する
ような場合には短く設定し、常設のクライアントなどの場合には長く
設定すれば良いであろう。間違っても、未回収IPが多数のために、
IP pool が不足するような事態に陥ってはいけない。その外、指定した MAC アドレスに対してのみ、IP アドレスを与える場合の 書き方もあります。
# configuration file for ISC DHCPD option domain-name "summer01.wakhok.ac.jp"; option domain-name-servers pc2f001.summer01.wakhok.ac.jp; subnet 192.168.0.0 netmask 255.255.255.0 { option routers 192.168.0.1; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option netbios-name-servers 192.168.0.1; option netbios-dd-server 192.168.0.1; option netbios-node-type 8; default-lease-time 600; max-lease-time 7200; host testm { hardware ethernet 00:A0:B0:0A:8C:C3; fixed-address 192.168.0.100; option host-name "testm"; } } |
この場合、MAC アドレス 00:A0:B0:0A:8C:C3 のマシンに対してのみ
静的に IPアドレスを割り当てます。
IP は 192.168.0.100 を割り当て、更にそのホストが
受け入れ可能であればホスト名 "testm"を割り当てます。
グローバル、あるいはsubnet scope に use-host-decl-names on;
を書けば、このオプションがなくても host [host-name] {
で指定
したhost-nameが割り当てられます(FreeBSDの場合、クライアントプログラム
もISCの dhclient を利用しているので、全く問題はないのですが、
Windowsは出来ません)。
その他の
オプションはグローバル及び subnet に書かれたものを適用します。複数のマシンに
対して割り当てたい場合には、host xxx {
}
をマシンの数だけ
記述すれば良いでしょう。(range と併用することもできます。この
場合は、先に host が調べられ該当しなければ動的に IP を割り当てます。)
その他にも、多くのオプションフィールドがDHCPにはあり、NISのドメイン名も 渡せるようにはなっていますが、クライアントプログラムの問題で全てが受けとれない 場合もあります(特に、Windowsではワーニングが出るようです)。
但し、dhcpd.conf を変更した場合には、必ず dhcpd を kill してから再スタート させなければならない事を忘れないで下さい。 ISC dhcpd は、kill -HUP には対応していないのです。