DHCP服務器配置-Ubuntu

一、安裝DHCP Server

使用命令sudo apt-get install dhcp3-server安裝最新版本的DHCP Server,目前使用的版本爲DHCP Server 4.2.4,通過以下命令可以查看版本信息:

# dhcpd

顯示內容如下:

二、環境配置

2.1 創建主配文件dhcpd.conf

/etc/dhcp/下的dhcp.conf文件是DHCP服務器器的主要配置文件,所有功能都是在該文件中修改並實現的。在/usr/share/doc/isc-dhcp-server/examples下的dhcpd.conf是DHCP Server的配置模板,其中有詳細的註釋和所有的配置內容。

下面我們手動創建dhcpd.conf:

# vim /etc/dhcp/dhcpd.conf

文件內容如下:

ddns-update-style none;
ignore client-updates;
default-lease-time 21600;
max-lease-time 43200;
option domain-name "linuxde.net";
option domain-name-servers 202.96.199.133, 116.228.111.118;
option routers 192.168.100.254;
subnet 192.168.100.0 netmask 255.255.255.0 {
    range 192.168.100.50 192.168.100.100;
    option subnet-mask 255.255.255.0;
    host server1 {
            hardware ethernet b0:c0:c3:22:46:81;
            fixed-address 192.168.3.100;
    }
}

2.2 其他設置

創建了dhcpd.conf文件後,基本上已經可以通過sudo service isc-dhcp-server start命令來啓動DHCP服務了,不過還是可能會遇到其他的問題。以下內容爲解決可能存在的問題:

2.2.1 更改網卡IP

需要特別注意的是對應的網卡IP必須要在dhcpd.conf可分配的IP網段範圍內,比如我設置的網卡eth1 IP爲192.168.3.100,而對應的DHCP網段爲192.168.100.50~192.168.100.100,那麼DHCP服務就無法正常啓動,我們需要將網卡eth1的IP進行修改:

# sudo vim /etc/network/interfaces

修改後的內容如下:

如果沒有網卡eth1的配置,可以參照以上內容添加配置。之後再重啓網絡服務:

# sudo ifdown eth1 && sudo ifup eth1

通過ifconfig eth1查看到網卡eth1的IP已經修改成功後就可以重新啓動DHCP服務了。

2.2.2 創建DHCP服務器租約文件

在沒有服務器租約文件dhcpd.leases時,一些較低版本的DHCP Server將無法正常啓動,這個時候需要我們手動創建服務器租約文件:

# sudo touch /var/lib/dhcp/dhcpd.leases

2.2.3 配置網絡接口

沒有指明DHCP服務器需要在哪一張網卡上啓動時也會出現DHCP服務啓動不成功的情況,可以通過以下操作指明網卡:

# sudo vim /etc/default/isc-dhcp-server

打開配置文件後,我們增加或修改成如下內容:

在這裏我們指明瞭DHCP服務器啓動的網卡,也就是eth1,修改完後便可以重新啓動DHCP服務。

2.2.4 設置開機啓動

通常我們需要DHCP Server能夠實現開機啓動,這個時候我們就需要用到工具sysv-rc-conf,首先是安裝這個工具:

# sudo apt-get install sysv-rc-conf

安裝後可以通過以下命令將DHCP服務加入到開機啓動項中:

# sudo sysv-rc-conf isc-dhcp-server on

三、啓動DHCP服務

在所有內容都已經配置好後,通過如下命令便可以啓動DHCP服務:

# sudo service isc-dhcp-server start

我們在進程中查看DHCP是否已經啓動:

# sudo netstat –apn | grep dhcpd    

得到的查看結果如下:

說明我們的DHCP服務已經成功啓動並運行了。

如果無法成功啓動,請使用命令dhcpd查看其中的錯誤信息,再針對錯誤進行修改,一般是配置文件設置出錯。

四、測試DHCP服務

測試DHCP服務是否配置成功並且能夠如預期一樣運行有很多種方法,這裏採用比較簡單的一種,看能夠給本機Linux分配IP地址、子網掩碼等。

首先,在啓動好了需要測試網卡的網絡服務和DHCP服務後,我們需要將Linux本機的IP設置成自動獲取,操作如下:

# sudo vim /etc/network/interface

可以看到之前我們修改過的網卡配置文件內容如下:

其中eth1爲配置網卡的名稱,這裏我們選擇的是eth1;inet後跟的參數爲網卡配置的獲取方式,有static和dhcp兩種:static表示網卡eth1配置通過靜態方式獲取,即在該interfaces文件中配置,dhcp表示通過DHCP服務獲取配置;address、netmask、gateway表示靜態配置後的網卡參數,分別爲IP地址、掩碼地址、網關。

這裏我們將獲取方式設置爲DHCP服務獲取,修改後內容如下:

之後將文件保存並退出並重新啓動網卡eth1:

# sudo ifdown eth1 && sudo ifup eth1

會出現如下所示過程:

之後我們再用命令ifconfig eth1查看IP地址是否已經重新分配:

可以看見我們的IP地址從之前靜態配置的IP 192.168.100.80變爲了192.168.100.57,並且是192.168.100.50~192.168.100.100間的IP地址,同時之前設置的掩碼地址從255.255.254.0變爲了255.255.255.0,廣播地址也正好是我們設置的192.168.1.255。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章