Linux CentOS DHCP サーバーの構築

2010/12/23
★★

最近の家庭用のブロードバンドルーターには、DHCP 機能が必ず搭載されている。

ルーターの DHCP 機能はホームユースとしての利用を想定しているため、比較的規模の大きなネットワークで利用すると、ルーターに負荷がかかり、ルーターとしての性能が落ちてしまうことがある。

そこで、今回は、Linux  で DHCP サーバーを構築する方法を紹介する。

Linux は、CentOS 5.5 を例とする。

[root@centkun ~]# yum install -y dhcp

インストールと同時に、構成ファイル "/etc/dhcpd.conf" が作成されるが、このファイルを編集するよりサンプルの構成ファイルを編集した方がわかりやすいため、サンプルファイルで上書きする。(必要であれば、"/etc/dhcpd.conf" のバックアップをとっておく。)

[root@centkun ~]# cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf
cp: `/etc/dhcpd.conf' を上書きしてもよろしいですか(yes/no)? y

構成ファイルを編集する。

[root@centkun ~]# vi /etc/dhcpd.conf

# Dynamic DNS との連携。none | interim | adhoc
# 連携しない場合は、 "ddns-update-style none" とする。
# 連携する場合は、"ddns-update-style interim" とする。
ddns-update-style interim; 

# Dynamic DNS へのホスト名通知方法。
# FQDN ホスト名を Dynamic DNS に通知する場合は、"allow client-updates" とする。
ignore client-updates;

# DHCP で管理するネットワークの定義。
subnet 192.168.1.0 netmask 255.255.255.0 {

    # --- default gateway
    # DHCP クライアントへ通知するデフォルトゲートウェイ: ルーターの IP アドレス
    option routers 192.168.1.254;
  
    # DHCP クライアントへ通知するサブネットマスク
    option subnet-mask 255.255.255.0; 

    # NIS 連携。NIS が存在しない場合は、コメントアウト
    #option nis-domain "domain.org";

    # DHCP クライアントへ通知するドメインサフィックス
    option domain-name "masudaq.local";

    # DHCP クライアントへ通知する DNS サーバー
    # 複数の DNS サーバーを通知する場合は、"," をデリミタとする
    option domain-name-servers 192.168.1.1, 192.168.1.254;

    option time-offset -18000; # Eastern Standard Time
    # option ntp-servers 192.168.1.1;
    # option netbios-name-servers 192.168.1.1;
    # --- Selects point-to-point node (default is hybrid). Don't change this unless
    # -- you understand Netbios very well
    # option netbios-node-type 2;

    # DHCP クライアントに割り当てる IP の範囲
    range dynamic-bootp 192.168.1.128 192.168.1.254;
    default-lease-time 21600;
    max-lease-time 43200;

    # 特定の DHCP クライアントへのアドレスの予約
    # we want the nameserver to appear at a fixed address
    #host ns {
    #    next-server marvin.redhat.com;
    #    hardware ethernet 12:34:56:78:AB:CD;
    #    fixed-address 207.175.42.254;
    #}
}

変更内容を編集して dhcpd を起動する。この時、同一ネットワーク上の DHCP サーバーを停止しておく。ルーターの DHCP 機能を無効にしておく。

[root@centkun ~]# /etc/init.d/dhcpd start

DHCP クライアントへ定義した範囲の IP アドレスが通知されることを確認する。

確認が終われば、dhcpd を自動起動するように設定する。

[root@centkun ~]# chkconfig dhcpd on

コメント (0)

コメントの投稿