DHCP サーバーの設定

Linux活用日記

最終更新日: 2004年2月7日


DHCP サーバーを利用するとクライアントに対して動的に IP アドレスを割り当てることができます. この文書ではその DHCP サーバーの基本的な設定についてご説明していきます.


それぞれのクライアントに固定 IP アドレスが与えられているような環境では, 1台づつにネットワークの設定を行う必要があります. しかし大規模なネットワーク環境ではそれは簡単な作業ではありません. しかし DHCP サーバーを利用すればネットワークの設定をサーバーで一元管理できますので個別のクライアントで設定する必要がなくなります. また, クライアントから見た場合でも, ノートパソコンなどで会社と自宅それぞれの LAN 環境で利用するときにその都度, ネットワークの設定を変える必要がない, などといったメリットがあります.

多くの Linux ディストリビューションには, DHCP サーバーソフト(下記参照)が用意されていますので必要に応じてインストールしていけばいいでしょう.

ISC の DHCP サーバーソフトウェア一次配布元:
ISC Dynamic Host Configuration Protocol (DHCP)

自身の環境にインストールされているかどうかわからない場合, RPM 系 (Redhat, Turbolinux, Vine, LASER5 etc.) のディストリビューションでは次のコマンドで確認できます.

# rpm -qa | grep -i dhcp

ここで次のように表示されたらインストールされています. バージョン番号は個々の環境により異なります.

dhcp-2.0pl5-3

無ければ CD-ROM または FTP サイトからインストールすればいいでしょう.

DHCP の設定


DHCP の設定ファイルは /etc/dhcpd.conf です. このファイルはあらかじめ用意されているわけではないので, 一から作る必要があります. 次の表は /etc/dhcpd.conf の作成例です.

server-identifier server.abc.or.jp; --->(1)

shared-network DHCP { --->(2)
option domain-name-servers nx01.abc.or.jp; --->(3)
option domain-name "hogehoge.gr.jp"; --->(4)
option routers 192.168.1.254; --->(5)
option subnet-mask 255.255.255.0; --->(6)
option broadcast-address 192.168.1.255; --->(7)
default-lease-time 6000; --->(8)
max-lease-time 72000; --->(9)

 subnet 192.168.1.0 netmask 255.255.255.0 { --->(10)
  range 192.168.1.64 192.168.1.126; --->(11)
  }
}

(1) DHCP サーバー自身のホスト名または IP アドレス.
(2) { } の範囲の設定に任意の名前を設定しログ参照時に確認しやすくする.
(3) クライアントに設定する DNS サーバー.
(4) ドメイン名.
(5) デフォルトルータ.
(6) サブネットマスク.
(7) ブロードキャストアドレス.
(8) デフォルトの DHCP リース時間.
(9) 最大の DHCP リース時間.
(10) subnet...{ からのサブネット毎の設定.
(11) リースできる IP アドレスの範囲.

以上のように, DHCP の設定ファイル /etc/dhcpd.conf を作成したら次にログファイル dhcpd.leases を作成します. 通常は /etc または /var/lib/dhcp/ に作ります. 作成方法は, 次のコマンドを実行し,空ファイルとして作成します.

# touch /etc/dhcpd.leases

ここまで出来たらいよいよ DHCP サーバーを起動してみます. 次のコマンドを実行してください.

# /etc/init.d/dhcpd start

あとは, クライアント側に DHCP を使うように設定をすればいいでしょう.



HOME