掃二維碼與項目經(jīng)理溝通
我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流
DHCP(Dynamic Host Configuration Protocol)是一個網(wǎng)絡(luò)協(xié)議,它使得服務(wù)器能從預(yù)定義的 IP 池中為網(wǎng)絡(luò)中的客戶端節(jié)點自動分配 IP 地址并提供其它相關(guān)的網(wǎng)絡(luò)配置參數(shù)。

10年積累的成都網(wǎng)站制作、成都網(wǎng)站設(shè)計經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認識你,你也不認識我。但先做網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有羅平免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
這意味著每次客戶端節(jié)點啟動(連接到網(wǎng)絡(luò))的時候,它都會獲得一個和從不改變的“靜態(tài)” IP 地址相反的“動態(tài)” IP 地址。DHCP 服務(wù)器給 DHCP 客戶端分配 IP 地址稱為“租約”,租約時間隨客戶端需要的連接時間或 DHCP 的配置而異。
在這篇指南中,我們會介紹如何在 centos/RHEL 和 Fedora 發(fā)行版中安裝和配置 DHCP 服務(wù)。
本次安裝中我們使用如下的測試環(huán)境:
在進入下一步之前,讓我們首先了解一下 DHCP 的工作流程:
DHCPDISCOVER 消息到 DHCP 服務(wù)器。DHCPDISCOVER 請求消息時,它會回復(fù)一個 DHCPOFFER 消息。DHCPOFFER 消息后,它再發(fā)送給服務(wù)器一個 DHCPREQUEST 消息,表示客戶端已準備好獲取 DHCPOFFER 消息中提供的網(wǎng)絡(luò)配置。DHCPREQUEST 消息,并回復(fù) DHCPACK 消息,表示允許客戶端使用分配給它的 IP 地址。1、安裝 DHCP 服務(wù)非常簡單,只需要運行下面的命令即可。
$ yum -y install dhcp
重要:假如系統(tǒng)中有多個網(wǎng)卡,但你想只在其中一個網(wǎng)卡上啟用 DHCP 服務(wù),可以按照下面的步驟在該網(wǎng)卡上啟用 DHCP 服務(wù)。
2、 打開文件 /etc/sysconfig/dhcpd,將指定網(wǎng)卡的名稱添加到 DHCPDARGS 列表,假如網(wǎng)卡名稱為 eth0,則添加:
DHCPDARGS=eth0
保存文件并退出 。
3、 對于初學者來說,配置 DHCP 服務(wù)的第一步是創(chuàng)建 dhcpd.conf 配置文件,DHCP 主要配置文件一般是 /etc/dhcp/dhcpd.conf(默認情況下該文件為空),該文件保存了發(fā)送給客戶端的所有網(wǎng)絡(luò)信息。
但是,有一個樣例配置文件 /usr/share/doc/dhcp*/dhcpd.conf.sample,這是配置 DHCP 服務(wù)的良好開始。
DHCP 配置文件中定義了兩種類型的語句:
因此,首先復(fù)制示例配置文件為主配置文件:
$ cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
4、 然后,打開主配置文件并定義你的 DHCP 服務(wù)選項:
$ vi /etc/dhcp/dhcpd.conf
首先在文件開頭設(shè)置以下應(yīng)用于全部子網(wǎng)的全局參數(shù)(注意要使用你實際場景中的值):
option domain-name "tecmint.lan";
option domain-name-servers ns1.tecmint.lan, ns2.tecmint.lan;
default-lease-time 3600;
max-lease-time 7200;
authoritative;
5、 然后,定義一個子網(wǎng);在這個事例中,我們會為 192.168.56.0/24 局域網(wǎng)配置 DHCP(注意使用你實際場景中的值):
subnet 192.168.56.0 netmask 255.255.255.0 {
option routers 192.168.56.1;
option subnet-mask 255.255.255.0;
option domain-search "tecmint.lan";
option domain-name-servers 192.168.56.1;
range 192.168.56.10 192.168.56.100;
range 192.168.56.120 192.168.56.200;
}
只需要在 /etc/dhcp/dhcpd.conf 文件中定義下面的部分,其中你必須顯式指定它的 MAC 地址和打算分配的 IP,你就可以為網(wǎng)絡(luò)中指定的客戶端計算機分配一個靜態(tài) IP 地址:
host ubuntu-node {
hardware ethernet 00:f0:m4:6y:89:0g;
fixed-address 192.168.56.105;
}
host fedora-node {
hardware ethernet 00:4g:8h:13:8h:3a;
fixed-address 192.168.56.110;
}
保存文件并關(guān)閉。
注意:你可以使用下面的命令找到 Linux 的 MAC 地址。
$ ifconfig -a eth0 | grep HWaddr
6、 現(xiàn)在,使用下面的命令啟動 DHCP 服務(wù),并使在下次系統(tǒng)啟動時自動啟動:
---------- On CentOS/RHEL 7 ----------
$ systemctl start dhcpd
$ systemctl enable dhcpd
---------- On CentOS/RHEL 6 ----------
$ service dhcpd start
$ chkconfig dhcpd on
7、 另外,別忘了使用下面的命令允許 DHCP 服務(wù)通過防火墻(DHCPD 守護進程通過 UDP 監(jiān)聽67號端口):
---------- On CentOS/RHEL 7 ----------
$ firewall-cmd --add-service=dhcp --permanent
$ firewall-cmd --reload
---------- On CentOS/RHEL 6 ----------
$ iptables -A INPUT -p tcp -m state --state NEW --dport 67 -j ACCEPT
$ service iptables save
8、 現(xiàn)在,你可以為網(wǎng)絡(luò)中的客戶端配置自動從 DHCP 服務(wù)器中獲取 IP 地址。登錄到客戶端機器并按照下面的方式修改以太網(wǎng)接口的配置文件(注意網(wǎng)卡的名稱和編號):
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
添加下面的選項:
DEVICE=eth0
BOOTPROTO=dhcp
TYPE=Ethernet
ONBOOT=yes
保存文件并退出。
9、 你也可以在桌面服務(wù)器中按照下面的截圖(Ubuntu 16.04桌面版)通過 GUI 設(shè)置 Method 為 Automatic (DHCP)。
在客戶端網(wǎng)絡(luò)中設(shè)置 DHCP
10、 按照下面的命令重啟網(wǎng)絡(luò)服務(wù)(你也可以通過重啟系統(tǒng)):
---------- On CentOS/RHEL 7 ----------
$ systemctl restart network
---------- On CentOS/RHEL 6 ----------
$ service network restart
到了這里,如果所有設(shè)置都是正確的,你的客戶端就應(yīng)該能自動從 DHCP 服務(wù)器中獲取 IP 地址。
你也可以閱讀:
在這篇文章中我們?yōu)槟阏故玖巳绾卧?RHEL/CentOS 中安裝 DHCP 服務(wù)。在下面的評論框中給我們反饋吧。在接下來的文章中,我們還會為你展示如何在 Debian/Ubuntu 中安裝 DHCP 服務(wù)。和 TecMint 保持聯(lián)系。

我們在微信上24小時期待你的聲音
解答本文疑問/技術(shù)咨詢/運營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流