DHCP Server 簡易設定與啟動 環境: VMware + NAT(192.168.116.0/24) OpenLinux 3.1.1 WS IP: 192.168.116.128 (open) Slackware 8.1 + Gaga IP: 192.168.116.129 (slack) GNU/Linux Debian 3.0 r0 IP: 192.168.116.130 (debian) RedHat 8.0 IP: 192.168.116.131 (redhat) Mandrake 9.0 IP: 192.168.116.132 (mdk) FreeBSD 4.7 IP: 192.168.116.133 (freebsd) Testing (RH 7.3) IP: 192.168.116.136 (testing) Windows2000 IP: 192.168.116.160 (p866) -- 要成為伺服器須安裝的套件: OL 3.1.1: dhcp (client), dhcp-server (Server版的第一片) Debian 3.0: Slack 8.1: 安裝方式: installpkg filename.tgz, removepkg filename.tgz -- 與 DHCP 有關的檔案有: [伺服器] 指令檔: 相關檔: /etc/dhcp/dhcpd.leases (要自行 touch) 設定檔: /etc/dhcp/dhcpd.conf (安裝 DHCP server 後就會自動產生) [客端機] 指令檔: 相關檔: /etc/dhcp/dhcpd.leases (要自行 touch) 設定檔: /etc/dhcp/dhclient.conf -- 操作 ** 預計建立 192.168.116.0/24 的子環境 [伺服器] 1.預行: 建立 /etc/dhcp/dhcpd.conf, /etc/dhcp/dhcpd.leases 兩個檔, 方法如下: a.可以參照 /usr/share/doc/packages/dhcp-server-3.0.../dhcpd.conf.dist b.以 root 執行 touch /etc/dhcp/dhcpd.leases 2.編輯: /etc/dhcp/dhcpd.conf 設定檔 4.內容: (每行設定最後要加上分號) ================================================================================ subnet 192.168.116.0 netmask 255.255.255.0 { range 192.168.116.128 192.168.116.160; option domain-name-servers 192.168.116.128; option domain-name "myhome.idv.tw"; option broadcast-address 192.168.116.255; option subnet-mask 255.255.255.0; option routers 192.168.116.128; } host open { hardware ethernet 00:50:56:40:00:4F; fixed-address 192.168.116.128; } ================================================================================ 5.啟動: 以 root 執行 /etc/rc.d/init.d/dhcpd start 停用: 以 root 執行 /etc/rc.d/init.d/dhcpd stop 重啟: 以 root 執行 /etc/rc.d/init.d/dhcpd restart *** OL, RH, MDK: /etc/rc.d/init.d/dhcpd start|stop|restart 未確定:Debian: /etc/init.d/nfs-kernel-server start|stop|restart 未確定:Slack: /etc/rc.d/rc.nfsd start|stop|restart *** [客端機] 1.預行: 建立 /etc/dhcp/dhclient.conf, /etc/dhcp/dhcpd.leases 兩個檔, 方法如下: a.可以參照 /usr/share/doc/packages/dhcp-3.0.../dhclient.conf.dist b.以 root 執行 touch /etc/dhcp/dhcpd.leases 2.編輯: 預設是不用編輯啦..., 若要需要, 小弟另找時間寫寫 3.修改: 將 /etc/sysconfig/netwokr-scripts 目錄裡的 ifcfg-eth0 (不一是 0, 看你的網卡) 增加 DYNAMIC=dhcp (若已有請將前面的 # 號刪除) 4.重啟: 以 root 執行 ifdown eth0; ifup eth0 即可完成使用 DHCP Debian: 執行 /sbin/dhclient 可以強制執行重新讀取新資訊 Slack: 清除 /etc/dhcpc/dhcp-eth0.info* 後, 再執行 /sbin/dhcpcd, 意義同上一行 -- 檢測: 執行 netstat -uln 若有看到 :67 及 :68 的 udp 埠在跑則表示運作正常 -- 後記, 要使客端機的指定IP被釋回, 要在以下各種情況 1.客端向主機發出離線登出 2.客端關機 3.客端重開機 4.指定的IP到期 5.DHCP 伺服器作廢該IP 當IP釋回後, 便可再指定給其他客端 > 我的機器有三片網路卡,分別為 > eth0: 10.1.101.254/255.255.255.0 > eth1: 10.1.0.4/255.255.255.0 > eth2: 接ADSL ATU-R使用PPPoE取得IP. > 請問可以讓dhcpd只針對eth0的網域發放IP嗎? > 因為eth1接的網域裡面已經有DHCP Server了 > 謝謝 到 /etc/sysconfig 下,修改 dhcpd 設定 DHCPDARGS="eth0" 意思就是, eth0 所負責的網域都可向 eth0 要 IP 來用 本文內容將於 http://jhchen62.vbird.org/ 網頁中持續修正 祝順利!!