http://www.atmarkit.co.jp/flinux/rensai/linuxtips/539usedhcpd.html !!DHCPサーバを立てる !インストール インストールされていない場合は # yum install dhcp !設定 /etc/dhcpd.conf # dhcpd.conf # # Configuration file for ISC dhcpd # # DNSサフィックス #option domain-name "ash.jp"; default-lease-time 600; max-lease-time 7200; ddns-update-style interim; subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.2 192.168.0.5; # option domain-name-servers 211.129.14.138,211.129.12.47; option domain-name-servers 192.168.0.1; # option broadcast-address 10.0.1.255; option routers 192.168.0.1; } dhcpd.leasesの作成 dhcpd.leasesというファイルが存在しない場合は、このファイルを作成する(Red Hat Linux、Turbolinux、Vine Linuxではいずれも作成されている)。内容は空でいい。このファイルには、リースされたIPアドレスの情報が保存される。Red Hat LinuxとVine Linuxの場合は/var/lib/dhcpディレクトリに、Turbolinuxの場合は/var/dhcpディレクトリに作成する。 # touch /var/lib/dhcpd/dhcpd.leases !!複数のネットワークカードがある場合(CentOS7) systemdの環境で複数NICが存在する場合、DHCPを機能させるデバイスを指定できる。 systemdのserviceファイル内に記載されている実行コマンドに引数を与える。 cp /usr/lib/systemd/system/dhcpd.service /etc/systemd/system vi /etc/systemd/system/dhcpd.service ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid を ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid eth0 eth1 のように最後にデバイスを指定する。複数指定することもできる。書き換えたらサービスをリロードする。 systemctl --system daemon-reload systemctl restart dhcpd.service !!複数のネットワークカードがある場合(CentOS5) /etc/sysconfig/dhcpd に DHCPDARGS=eth0 eth1 が LAN 側デバイスの場合 !動作テスト # dhcpd -f -d で動作テスト。 !複数のサブネットにIPを振る場合 ◎複数サブネットの例 subnet 192.168.0.1 netmask 255.255.255.0{ 省略 } subnet 192.168.1.1 netmask 255.255.255.0{ 省略 } この場合は /etc/sysconfig/dhcpd に DHCPDARGS= で良い。 !!IPを固定する subnet 192.168.0.1 netmask 255.255.255.0{ 省略 } host client1{ hardware ethernet 00:22:19:ED:26:9C; fixed-address 192.168.12.50; } のように host でMACアドレスとIPをマッピングする。 !!指定したMACアドレスだけを許可する http://www.unix-power.net/linux/dhcp.html subnet 192.168.12.0 netmask 255.255.255.0 { 省略 # 登録したMACのみ払い出す deny unknown-clients; } # クライアントをMacアドレスで定義し、払い出すIPを決め打ちする host client1{ hardware ethernet 00:22:19:ED:26:9C; fixed-address 192.168.12.50; } host client2{ hardware ethernet 00:22:19:ED:26:9D;} IPアドレスを指定しなくても良い場合は、fixed-address を省略してもよい。 !!その他 !ddns-update-style ddns-update-style は次の値を取る :interim:dhcpd は DHCP 処理を行った際、DNS サーバーへゾーンデータ更新要求( A / TXT / PTR レコードの登録・削除)を送信する。ゾーンデータ更新を実施するには DNS サーバーの指定と DNS サーバー側の対応が必要である。  :none:ゾーンデータの更新を行わない。( DNS サーバーへ更新要求を送信しない) :ad-hoc:dhcpd の旧バージョンとの互換性が必要な場合に使用する。ad-hoc でも DNS の更新は実行されるが、互換性を必要としない場合は interim を使用する。 {{category2 OS,Linux}}