CentOS 5 で ISC DHCP サーバーを構築する時の基本を確認します。現在の新規構築で CentOS 5 を使うべきではありませんが、古い検証環境や移行前の構成確認では、dhcpd.conf に何が書かれているかを読めることが重要です。
DHCP サーバーで決めること
DHCP は IP アドレスを配るだけの仕組みではありません。クライアントに配布するネットワーク情報をまとめて決める仕組みです。
- 配布する IP アドレス範囲
- デフォルトゲートウェイ
- DNS サーバー
- ドメイン名
- リース時間
- 固定割り当てを行う MAC アドレス
特にサーバーセグメントでは、固定 IP と DHCP の境界を曖昧にすると管理が難しくなります。DHCP で配る範囲と、手動設定・予約アドレスの範囲は分けておく方が安全です。
インストールと起動設定
yum install dhcp
chkconfig dhcpd on
service dhcpd start
service dhcpd statusCentOS 5 の DHCP サーバーは dhcpd サービスとして動作します。起動に失敗する場合は、ほとんどの場合 /etc/dhcpd.conf の文法、または待ち受けインターフェイスの指定が原因です。
dhcpd.conf の基本例
/etc/dhcpd.conf に配布するネットワーク情報を書きます。以下は内部ネットワーク向けの単純な例です。
default-lease-time 600;
max-lease-time 7200;
authoritative;
option domain-name "example.local";
option domain-name-servers 192.168.1.10, 192.168.1.11;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.199;
option routers 192.168.1.1;
option broadcast-address 192.168.1.255;
}
host printer01 {
hardware ethernet 00:11:22:33:44:55;
fixed-address 192.168.1.50;
}authoritative は、そのネットワークにおける正規の DHCP サーバーとして振る舞う指定です。誤ったセグメントで有効にすると影響が大きいため、どのインターフェイスで待ち受けるかを合わせて確認します。
待ち受けインターフェイスを確認する
複数 NIC のサーバーでは、DHCP をどのインターフェイスで提供するかが重要です。古い CentOS 5 構成では、起動オプション側にインターフェイス指定が書かれていることがあります。
cat /etc/sysconfig/dhcpd
ip addr show
netstat -lunp | grep :67/etc/sysconfig/dhcpd に DHCPDARGS=eth0 のような指定がある場合、そのインターフェイスだけで DHCP を待ち受けます。想定外のセグメントに DHCP 応答を返さないようにするため、ここは必ず確認します。
設定確認とリース状況
設定変更後は、文法確認、サービス再起動、リースファイル、ログを順に見ます。
dhcpd -t -cf /etc/dhcpd.conf
service dhcpd restart
tail -f /var/log/messages
cat /var/lib/dhcpd/dhcpd.leasesDHCP はネットワーク全体に影響するため、設定を変えた直後はクライアント側で実際にどのアドレス、DNS、ゲートウェイを受け取ったかも確認します。
dhclient -r eth0
dhclient eth0
cat /etc/resolv.conf
ip route showまとめ
CentOS 5 の ISC DHCP サーバーでは、dhcpd.conf の配布内容だけでなく、待ち受けインターフェイス、固定割り当て、DNS との関係を合わせて確認します。古い環境の DHCP は、ネットワーク設計の履歴がそのまま残っていることが多いため、移行時にはリース範囲と予約アドレスを棚卸しするのが重要です。
関連する記事
- CentOS 5 サーバー管理ガイド
CentOS 5 系の記事を役割別に確認できるハブページです。 - CentOS 5 BIND 内部 DNS サーバー構築
DHCP と組み合わせる内部 DNS の基本を確認します。 - CentOS 5 ネットワーク設定
CentOS 5 の ifcfg と network サービスを確認します。
参考書籍
古い Linux サーバーの記事を読み直す時にも、コマンドライン操作の考え方を確認しやすい参考書籍です。
Amazon で見る
