DHCPの設定

 DHCP とはネットワークのクライアントとなるホストに対してIPアドレス等のホスト情報を動的に割り当てたり、ネットワーク情報を設定等を行うサービスです。 SOHO等で、TCP/IPの知識が無くてもネットワークを使用しないといけない場合など、設定に悩まずに済みます。

≪ 項目 ≫
1.DHCPの設定(サーバー)
2.DHCPの設定(クライアント)
3.DHCPの起動の仕方
4.補足

 1.DHCPの設定(サーバー)

このサイトでは、DHCP はdhcpd というパッケージを使用しますので、パッケージインストールの説明は省きます。 この dhcpd に関する主な設定ファイルは”/etc/dhcpd.conf”というファイルで行います。 Turbo Linuxの標準ではこのファイルが無いため vi 新規作成してください。

以下が”/etc/dhcpd.conf”の例です。
option domain-name "lab-kage.plala.jp";  <<--(1)
option domain-name-servers dns01.lab-kage.plala.jp, 192.168.0.x; 
default-lease-time 600;  <<--(2)
max-lease-time 7200;  <<--(3)

subnet 192.168.xxx.yyy netmask 255.255.255.0 {  <<--(4)
 range 192.168.xxx.aaa 192.168.xxx.zzz;  <<--(5)
 option routers 192.168.xxx.ccc;  <<--(6)
 option subnetmask 255.255.255.0; 
} 

host pc03 {  <<--(7)
 hardware ethernet 00:11:aa:bb:cc:dd;  <<--(8)
 fixed-address 192.168.xxx.ddd;  <<--(9)
}

 (1)は、optionステートメントと言い、DHCPクライアントの各ネットワーク設定に対して、返す値を設定します。
 以下がoptionの後ろに指定できる値です。

書式説明
routers option routers << IPアドレス Or ホスト名 >> ゲートウェイのIPアドレスまたはホスト名指定をします。
subnet-mask option subnet-mask << サブネットマスク >> サブネットマスクの値を指定します。
nis-domain option nis-domain << NISドメイン名 >> NISドメイン名を指定します。
domain-name-server option domain-name-server << IPアドレス >> DNSサーバーを指定します。
domain-name option domain-name << ホスト名 >> ドメイン名を指定します。ホスト名を記述する際は " で囲ってください。
time-offset time-offset << 時間 >> UTCに対する時差を指定します。
(日本時間の場合は9です。)
ntp-server ntp-server << IPアドレス >> NTPサーバーのIPアドレスを指定します。
netbios-name-server netbios-name-server << IPアドレス >> NetBIOSネームサーバーのIPアドレスを指定します。
netbios-node-type netbios-node-type << タイプ >> NetBIOSノードタイプを指定します。

つまり (1) では、所属するドメインとDNSサーバーのIPアドレスをクライアントに情報を渡すと事になります。

 (2)、(3) はリース時間の指定です。クライアントがDHCPサーバーから取得した情報を破棄するまでの時間です。以下が書式です。

 default-lease-time << 秒 >>
 max-lease-time << 秒 >>

(4) からはsubnetブロックsubnetブロックと言い、上の例でいうなら ネットワークアドレス:192.168.xxx.yyy サブネットマスク:255.255.255.0 に関する設定の開始を意味します。 しかしこれだけでは、クライアントには何の情報も渡されないので、(5)、(6) など、設定を記述する必要があります。

書式は subnet << ネットワークアドレス >> netmask << サブネットマスク >> となります。

(5) は、IPアドレスを動的に与える範囲を指定しています。例で言うと 192.168.xxx.aaa 〜 192.168.xxx.zzz (英字は 0 〜 255 数字と仮定してください。)の範囲でIPアドレスを振り分けます。 IPアドレスを記述する際、subnetブロックと同じネットワークアドレスになるように記述します。

(6) はoptionステートメントです。 (1) の説明をしたどおりです。routers はゲートウェイのIPアドレスを、subnetmask はサブネットマスクをそれぞれクライアントに渡します。

(7) からはhostステートメントとよばれるブロックです。毎回特定のホストに固定でIPアドレスを割り当てたい場合に有効です。書式は host << ホスト名 >> です。 例は、Subnetブロックの外に記述してますが、中に記述しても問題ありません。hostブロックの中に (8)、(9) の記述をします。
 (8) は対象のホストのMacアドレスを記述します。Linuxの場合は”ifconfig”で、Windowsの場合はMS-DOSプロンプトで”ipconfig -all”で、それぞれMacアドレスを調べる事ができます。
 (9) で対象のホストに割り当てたいIPアドレスを記述します。subnetブロックの中に記述している場合は、割り当てるIPアドレスが (5) の範囲外になるように記述してください。

 2.DHCPの設定(クライアント)

 ”ネットワーク設定”のページでも説明しましたが、LinuxマシンでDHCPの機能に頼る場合は”/etc/sysconfig/network-scripts/ifcfg-eth0”の設定を以下の様にしておきます。
DEVICE=eth0
BOOTPROTO=dhcp
ONBOOT=yes

 Windowsマシンの場合は、ネットワーク接続のプロパティから以下の様に設定をします。(Windows XP Proを例にします。)
DHCPの設定1

 ”インターネットプロトコル(TCP/IP)”をクリックして、”プロパティ”を選択します。

DHCPの設定2

 ”IPアドレスを自動的に取得する。”にチェックを付けて”OK”にします。

 3.DHCPの起動と停止

 DHCPの実行コマンドは以下の通りです。

 /etc/rc.d/init.d/dhcpd start
 /etc/rc.d/init.d/dhcpd stop

これでDHCPの設定は終了です。DHCPを起動させたら”ipconfig”等でIPアドレスが取得できているか確認してください。 Windows 98 や Windows Me、 Windows XP Home Edition 等はコンピューターを再起動する必要があります。

 4.補足

 ◆ ネットワークカードが2枚の場合

 DHCPは、”/etc/sysconfig/network”を参照して、サービスを行うネットワークデバイスを決定します。デフォルトでは”eth0”です。 ネットワークカードが2枚の場合で”eth1”に対してDHCPのサービスを行いたい場合は、”/etc/sysconfig/network”に以下の行を追加します。

 DHCPDEV = "eth1"

DHCPDEVが存在しない場合は”eth0”が対象になります。また複数のネットワークカードに対してネットワークカードを行いたい場合は以下の様に記述します。

 DHCPDEV = "eth0 eth1"



先頭に戻る TOPページに戻る