DHCPサーバの実験は実ネットワークで行うと他のPCが間違えるので、VMWareで行った。 VineLinuxマシン(DHCPサーバ)には2つのネットワークカードを指定し1つは実ネットワークへのブリッジ、もう一つは仮想ネットワーク(カスタム:仮想ネットワーク [VMnet2])へ接続し、WindowsXP(DHCPクライアント)は仮想ネットワーク(VMnet2)に接続した。 VMnet2上でDHCPが動作するか確認をおこなった。
VinePlusからDownload Linux/Vine/VinePlus/3.1/i386/pool/dhcp-3.0pl2-6vl1.i386.rpmをDownload rpmでインストール。
# rpm -ivh dhcp-3.0pl2-6vl1.i386.rpm
設定ファイルを作成 /etc/dhcpd.conf
# ドメイン名 option domain-name "abc-u.ac.jp"; #DNS サーバ。複数ある場合は , で区切る。IPアドレス、ホスト名。 option domain-name-servers ns.abc-u.ac.jp, 192.168.100.1; default-lease-time 7200; max-lease-time 14400; ddns-update-style ad-hoc; #ネットワーク名及びsubネットワークを指定 shared-network ISMNET { subnet 192.168.100.0 netmask 255.255.255.0 { <---(1) #DHCP配布するIPアドレス range 192.168.100.129 192.168.100.253; option broadcast-address 192.168.100.255; #Default Routerの指定 option routers 192.168.100.1;
#決まったMACアドレスにIPアドレスを指定する
#ただし、(1)で指定したsubネット内でないと無視される。
#例外として(2)のように追加subネット内のアドレスは指定できる。
host notepc { hardware ethernet xx:xx:xx:xx:xx:xx; fixed-address 192.168.100.100; #指定MACアドレスだけDefault Routerを変更できる option routers 192.168.100.1; } #2つ目MACアドレスの指定 host notepc2 { hardware ethernet xx:xx:xx:xx:xx:yy; fixed-address 192.168.100.101; option routers 192.168.100.254; } } #DHCP配布するネットワーク以外にも存在する場合は記述する。 #記述がないと動かないようだ subnet 192.xxx.xxx.0 netmask 255.255.255.0 { <---(2) option broadcast-address 192.xxx.xxx.255; option routers 192.xxx.xxx.9; } }
# /usr/sbin/dhcpd [eth1] <--インターフェイスが複数ある場合はインターフェイスを指定する。 Internet Software Consortium DHCP Server V3.0pl2 Copyright 1995-2003 Internet Software Consortium. All rights reserved. For info, please visit http://www.isc.org/products/DHCP Wrote 0 leases to leases file. Listening on LPF/eth1/00:0c:29:03:44:24/ISMNET Sending on LPF/eth1/00:0c:29:03:44:24/ISMNET Sending on Socket/fallback/fallback-net
/var/lib/dhcpd/dhcpd.leasesにDHCPリリースのlogが残る
もし存在しない場合は(rpmインストールでは作成される)
# touch /var/lib/dhcpd/dhcpd.leases
で作成。
設定によってはリリースログが以下のファイルの場合もあった。 そのときは
# touch /var/state/dhcp/dhcpd.leases
で作成
注)MACアドレスを指定した場合はこのdhcpd.leasesにリリースlogが残らない
/var/log/messagesに
Aug 23 11:32:16 secure dhcpd: DHCPDISCOVER from 00:03:ff:e8:xx:e8 via eth0 Aug 23 11:32:16 secure dhcpd: DHCPOFFER on 10.1.6.253 to 00:03:ff:e8:xx:e8 via eth0 Aug 23 11:32:16 secure dhcpd: DHCPREQUEST for 10.1.6.253 (192.xxx.xxx.26) from 00:03:ff:e8:ef:e8 via eth0 Aug 23 11:32:16 secure dhcpd: DHCPACK on 10.1.6.253 to 00:03:ff:e8:xx:e8 via eth0
というlogが残る