ISCから直接落としてくるのがやはり一番でしょう。
# cd /usr/local/src # wget http://ftp.isc.org/isc/dhcp/dhcp-4.1.0a1.tar.gz # tar xzvf dhcp-4.1.0a1.tar.gz # cd dhcp-4.1.0a1 # ./configure # make # make install
# /usr/local/sbin/dhcpd
※dhcp.conf を指定する場合には、'-cf /etc/dhcpd.conf'
設定ファイル、とりあえず自宅でDHCPを立ち上げるだけであれば、ファイルの中身を以下の設定にしておけば稼動します。(この設定の場合は家庭内のLANが192.168.1.xxのセグメントの場合です)
# config file subnet 192.168.1.0 netmask 255.255.255.0 { range 192.168.1.100 192.168.1.150; #<-100番~150番までを貸し出し default-lease-time 600; max-lease-time 7200; }
DHCPファイルの貸し出し状況を保存しておくDB
# touch /var/db/dhcpd.leases
これで、ファイルだけ作っておけばOK。ただし、この場合は、ISCからダウンロードしてきた、DHCPD4.0.0の場合です。CentOS5.1などで、Yumでとってきた場合には、下記の'Red Hat Linux'の場合のフォルダとなります。
※ただ、'Red Hat Linux'と'Vine'の場合には /var/lib/dhcpd/dhcpd.leases
※'Turbo'の場合には、/var/dhcp/dhcpd.leasesに設定される。
ネットワークカードが複数ある場合には、DHCPを立ち上げる際のネットワークカードの指定が必要になります。
# vi /etc/sysconfig/dhcpd DHCPDARGS=eth0
このファイルはこの1行だけを記述します。
※dhcpdのヘルプが分かりずらいので、オプションにはこのページを参照すると便利です。大概必要なオプションは以下の通りです。
# dhcpd eth0 -cf /usr/local/dhcpd/dhcpd.conf
上記のように、CentOS では Red Hat系なのでいろいろなフォルダの場所が違っています。そこで、まずは以下のファイルを書き直します。
# vi /etc/rc.d/init.d/dhcpd
変更点1、このファイルの中の、/etc/lib/dhcpd/dhcpd.lease の部分を、/var/db/dhcpd.leasesに変更します。
また起動時にdaemon起動の状態を確認する場合には、以下のコマンドです。
# /sbin/chkconfig --list dhcpd
また起動設定を行う場合には、
# /sbin/chkconfig dhcpd on
これで、立ち上げ時に自動起動されるようになります。
また、とりあえず、今デーモン起動したい場合には、先ほど修正したファイルを利用して起動できます。
# /etc/rc.d/init.d/dhcpd start
※起動しなかった場合には、[失敗]というメッセージが表示されます。
また下記のコマンドで、dhcpdが起動しているか確認できます。
# ps ax | grep dhcpd
現在設定している設定を保管用に記載します。
# # DHCP Server Configuration file. # default-lease-time 600; max-lease-time 7200; authoritative; ignore client-updates; log-facility local7; option domain-name "gamvaro.com"; # your domain option domain-name-servers localhost; # # Dynamic DNS # #include "/usr/local/named/ddns.key"; #ddns-update-style interim; #relation with DDNS #ddns-domainname "/usr/local/named/gamvaro.com.zone"; #ddns-rev-domainname "/usr/local/named/gamvaro.com.rev"; # # # #zone gamvaro.com. { # your domain # primary dns.gamvaro.com; # key DDNS; #} #zone 0.168.192.in-addr.arpa. { # primary dns.gamvaro.com; # key DDNS; #} subnet 192.168.0.0 netmask 255.255.255.0 { option routers 192.168.0.1; option broadcast-address 192.168.0.255; option subnet-mask 255.255.255.0; # # WINS # #option netbios-name-servers 192.168.0.1; #option netbios-dd-server 192.168.0.1; #option netbios-node-type 4; # first Broadcast, second Wins # # Other Option # option routers 192.168.0.1; option ntp-servers 127.0.0.1; option lpr-servers 127.0.0.1; # # Pool # pool { range 192.168.0.240 192.168.0.249; # allow known clients; } } # # known clients # #-------------------------------------------- #Windows XP DELL Dimension 5150C host desktop { hardware ethernet 00:13:72:d3:c6:6a; fixed-address 192.168.1.200; ddns-hostname "desktop"; } #-------------------------------------------- #Windows XP Fujitsu BIBLO Look host smallnote { hardware ethernet 08:00:46:63:4D:3E; ddns-hostname "smallnote"; } #-------------------------------------------- #Windows XP Sony PCG-U1 host Potable { hardware ethernet 00:11:F5:60:7D:69; ddns-hostname "Potable"; } #-------------------------------------------- #Macintosh PowerBook G4 host MacintoshG4 { hardware ethernet 00:30:65:1d:79:27; ddns-hostname "MacintoshG4"; } #-------------------------------------------- #VMware First CentOS 5.1 host centos { hardware ethernet 00:0c:29:c7:15:5b; ddns-hostname "centos"; } #-------------------------------------------- #Vmware Second CentOS 5.1 host secondos { hardware ethernet 00:0c:29:98:22:f4; ddns-hostname "centos"; }
確保しているIPを開放する。
# dhclient -r
再度IPアドレスを取得する。
# dhclient
# netstat -rn