在Linux系統(tǒng)中如何完整的啟動DHCP服務器,我們前面通過《Linux系統(tǒng)如何從指定端口啟動DHCP服務器》片段式介紹過從指定商品啟動DHCP服務器,在此南昌網(wǎng)站制作公司百恒網(wǎng)絡服務器架設工程師通過六大步向大家介紹一套完整的流程。
1.建立客戶端租約文件
運行DHCP服務器還需要一個名為“dhcpd.leases”的文件,其中保存所有已經(jīng)分發(fā)的IP地址。在Red Hat Linux發(fā)行版本中,該文件位于/var/lib/dhcp/目錄中。如果通過RPM安裝ISC DHCP,那么該目錄應該已經(jīng)存在。dhcpd.leases的文件格式為:
Leases address {statement}
第1次運行DHCP服務器時,dhcpd.leases是一個空文件,也不用手工建立。如果不是通過RPM安裝ISC DHCP,或者dhcpd已經(jīng)安裝,那么應該試著確定dhcpd將其lease文件寫到何處并確保該文件存在。也可以手工建立一個空文件:
#touch /var/lib/dhcp/dhcpd.leases
2.啟動和檢查DHCP服務器
使用如下命令啟動DHCP服務器:
#service dhcpd start
使用ps命令檢查dhcpd進程:
#ps -ef | grep dhcpd
root 2402 1 0 14:25 ? 00:00:00 /usr/sbin/dhcpd
root 2764 2725 0 14:29 pts/2 00:00:00 grep dhcpd
使用netstat命令檢查dhcpd運行的端口:
# netstat -nutap | grep dhcpd
udp 0 0 0.0.0.0:67 0.0.0.0:* 2402/dhcpd
3.設置DHCP轉發(fā)代理
DHCP轉發(fā)代理(dhcrelay)允許把無DHCP服務器子網(wǎng)內的DHCP和BOOTP請求轉發(fā)給其他子網(wǎng)內的一臺或多臺DHCP服務器。當某個DHCP客戶端請求信息時,DHCP轉發(fā)代理把該請求轉發(fā)給DHCP轉發(fā)代理啟動時所指定的一臺DHCP服務器。當某臺DHCP服務器返回一個回應時,該回應被廣播或單播給發(fā)送最初請求的網(wǎng)絡。除非使用INTERFACES命令在/etc/sysconfig/dhcrelay文件中指定了接口,否則DHCP轉發(fā)代理監(jiān)聽所有接口上的DHCP請求。要啟動DHCP轉發(fā)代理,使用如下命令:
service dhcrelay start
4.從指定端口啟動DHCP服務器
如果系統(tǒng)連接不止一個網(wǎng)絡接口,但是只想讓DHCP服務器啟動其中之一,則可以配置DHCP服務器只在相應設備上啟動。在/etc/sysconfig/dhcpd中,把接口名稱添加到DHCPDARGS列表中:
# Command line options here
DHCPDARGS=eth0
如果有一臺帶有兩塊網(wǎng)卡的防火墻機器,這種方法就會大派用場。一塊網(wǎng)卡可以被配置成DHCP客戶端從互聯(lián)網(wǎng)上檢索IP地址;另一塊網(wǎng)卡可以被用做防火墻之后的內部網(wǎng)絡的DHCP服務器。僅指定連接到內部網(wǎng)絡的網(wǎng)卡將使系統(tǒng)更加安全,因為用戶無法通過互聯(lián)網(wǎng)來連接其守護進程。
其他可在/etc/sysconfig/dhcpd中指定的命令行選項如下。
(1)-p:指定dhcpd應該監(jiān)聽的UDP端口,默認值為67。DHCP服務器在比指定的UDP端口號大一位的端口上把回應傳輸給DHCP客戶端。例如,如果使用默認端口67,服務器就會在端口67上監(jiān)聽請求,然后在端口68上回應客戶。如果在此處指定了一個端口號,并且使用了DHCP轉發(fā)代理,那么所指定的DHCP轉發(fā)代理所監(jiān)聽的端口必須是同一個端口。
(2)-f:把守護進程作為前臺進程運行,在調試時最常用。
(3)-d:把DCHP服務器守護進程記錄到標準錯誤描述器中,在調試時最常用。如果未指定,日志將被寫入/var/log/messages中。
(4)-cf:指定配置文件的位置,默認為/etc/dhcpd.conf。
(5)-lf:指定租期數(shù)據(jù)庫文件的位置。如果租期數(shù)據(jù)庫文件已存在,那么在DHCP服務器每次啟動時使用同一個文件至關重要。建議只在無關緊要的機器上出于調試目的才使用該選項,默認為/var/lib/dhcp/dhcpd.leases。
(6)-q:在啟動該守護進程時,不要顯示整篇版權信息。
5.管理DHCP服務器端口
常見的DHCP服務器是dhcpd,可以通過命令行設置其監(jiān)聽端口。例如,使用以下命令:
#dhcpd eth0
該命令允許dhcpd進程只在eth0網(wǎng)絡端口上工作,默認為監(jiān)聽所有端口。由于DHCP同樣使用67和68端口通信,所以更改該端口將造成DHCP服務無法正常使用。
6.防火墻和SELinux 設置
(1)防火墻設置
如果使用iptables防火墻,則注意打開67、68 UDP端口。
#iptables -A FORWARD -i eth0 -p udp --dport 67 -j ACCEPT
#iptables -A FORWARD -i eth0 -p udp --dport 68 -j ACCEPT
(2)SELinux 設置
# setsebool -P dhcpd_disable_trans 1
。
本文僅限內部技術人員學習交流,不得作于其他商業(yè)用途.希望此文對廣技人員有所幫助。原創(chuàng)文章出自:南昌網(wǎng)站建設公司-百恒網(wǎng)絡http://syshcw.cn/如轉載請注明出處!