我的網路環境中已經有一個DHCP伺服器了,所以我不能再使用DRBL伺服器中的DHCP服務,請問有沒有解? |
基本上有5個解法:
- 在DRBL伺服器上使用不同埠的DHCP服務,這樣就不會和現有的服務相衝突。這個作法可以在你架設好DRBL伺服器再來調整。這裡我們以Debian為例,先記得確認你的DRBL版本是1.9.0-35或者更新的版本:
- 修改DRBL伺服器上的/etc/dhcp3/dhcpd.conf, 寫上這兩行:
local-port 1067;
remote-port 1068;
然後重新啟動DHCP服務:
/etc/init.d/dhcp3-server restart
- 在DRBL伺服器上執行這個指令:
/usr/sbin/mknic-nbi --udhcpc-port 1068
- 產生特別的開機磁片或者光碟片:到這個網頁http://www.rom-o-matic.net,選擇適合你的網卡,然後最重要的是在記得選"3. (optional) To customize ROM configuration press:", 選"ALTERNATE_DHCP_PORTS_1067_1068". 再來將產生的dsk或者iso檔放到軟碟或著光碟片上。
更詳細的細節可以參考這裡的討論.
- 另外的方法是透過鎖住用戶端MAC address的方式來提供IP address給用戶端使用。這樣即使是兩個DHCP伺服器也不會互相衝突。你可以在執行"drblpush -i"的時候,選擇要這樣做。
- 如果你還是喜歡提供浮動IP位址給用戶端,不想鎖定MAC address,從DRBL 1.8.0-15或者更新的版本,你可以在/etc/dhcp3/dhcpd.conf或者/etc/dhcpd.conf裡,把'allow members of "DRBL-Client";'前面的'#'註解拿掉,然後重新啟動DHCP服務。這個作法是DRBL伺服器只會提供IP位址給PXE, Etherboot或者DRBL的Remote Linux用戶端,其他非這三類的機器或者作業系統,DRBL主機不會發IP位址給它(即使某台機器雖然是DRBL的用戶端,但是是使用本機硬碟裡面的MS Windows或者Linux開機,也會無法從DRBL伺服器要到IP位址)。所以,你要確認所有的PXE或者etherboot開機的機器都是你想要當作DRBL的用戶端使用的機器。
- 如果你熟悉DHCP語法的話,你可以合併DRBL伺服器上的dhcpd.conf以及你現有的DHCP服務,然後將DRBL伺服器上的DHCP服務關掉或者移除。
- 安裝dnsmasq。從版本2.49, dnsmasq提供proxy DHCP功能。更多的訊息與討論,你可以參考這個這裡。感謝kasatkin提供此資訊。
或者你需要類似例子的話,可以參考這裡:
https://sourceforge.net/forum/message.php?msg_id=5341768
感謝Nikolay Kasatkin提供資訊.
|
|