Linux網路之DHCP原理與配置及實驗圖解
- 一、DHCP概述
- 二、DHCP租約作業程序
- 三、安裝DHCP服務器步驟
- 四、DHCP配置實驗(包含DHCP中繼配置)
- 五、固定ip實驗
- 總結
前言
前面我寫過華為ensp中DHCP的介紹和配置,詳見動態主機配置協議DHCP
與Linux(CentOS7系統)中DHCP原理與配置原理差不多,可以對比來看一下,
一、DHCP概述
(1)簡介
DHCP (Dynamic Host Configuration Protocol,動態主機配置協議)
由Internet 作業任務小組設計開發
專門用于為 TCP/IP 網路中的計算機自分配ТСР/IP引數的協議
(2)DHCP的優點
減少管理員的作業量
避免輸入錯誤的可能
避免IP地址沖突
當更改IP地址段時,不需要重新配置每個用戶的IP地址
提高了IP地址的利用率
方便客戶端的配置
(3)DHCP的分配方式
自動分配:客戶機從DHCP服務器分配到一個IP地址后永久使用
手動分配:由DHCP服務器管理員專門指定IP地址
動態分配:客戶機使用完后釋放該IP,供其它客戶機使用
二、DHCP租約作業程序
客戶機從DHCP服務器獲得IP地址的程序稱為DHCP 的租約程序
總的來說分為四個步驟,如下圖

說明
(1)客戶端在網路中搜索服務器
當一個DHCP客戶機啟動時,客戶機還沒有IP地址,所以客戶機要通過DHCP獲取一個合法的地址,
此時DHCP客戶機以廣播方式發送DHCP Discover發現資訊來尋找DHCP服務器
(2)服務器向客戶端回應服務
DHCP服務器接收到來自客戶機請求IP地址的資訊時,在自己的IP地址池中查找是否有合法的IP地址提供給客戶機,
如果有,DHCP服務器將此IP地址做上標記,加入到DHCP Offer的訊息中,然后廣播一則DHCP Offer 訊息
(3)客戶機選擇IP地址
DHCP客戶機從接收到的第一個DHCP Offer訊息中提取 IP 地址,發出IP地址的DHCP服務器將該地址保留,這樣該地址就不能再分配給另一個DHCP客戶機了
(4)服務器確定租約
DHCP服務器接收到 DHCP Request 訊息后,以DHCP ACK 訊息的形式向客戶機廣播成功確認,該訊息包含有IP地址的有效租約和其他可配置的資訊
當客戶機收到 DHCP ACK 訊息時,配置IP地址,完成TCP/IP的初始化
(5)重新登錄
DHCP客戶機每次重新登錄網路時,不需要再發送DHCP Discover資訊,而是直接發送包含前一次所分配的IP地址的DHCP Request請求資訊
(6)更新租約
當DHCP服務器向客戶機出租的IP地址租期達至50%時就需要更新租約
客戶機直接向提供租約的服務器發送DHCP Request包,要求更新現有的地址租約
三、安裝DHCP服務器步驟
(1)在ensp中配置DHCP中繼
dhcp enable -開啟DHCP功能
interface Vlanif10
ip address 192.168.1.254 255.255.255.0
dhcp select relay -開啟DHCP中繼功能
dhcp relay server-ip 192.168.100.33 -指向DHCP服務器的地址
interface Vlanif20
ip address 192.168.2.254 255.255.255.0
dhcp select relay
dhcp relay server-ip 192.168.100.33
interface Vlanif100
ip address 192.168.100.254 255.255.255.0
dhcp select relay
dhcp relay server-ip 192.168.100.33
(2)配置DHCP服務器
CentOS 7光碟中的 dhcp-4.2.5-58.el7.centos.x86_64.rpm
DHCP軟體包的主要檔案
主組態檔:/etc//dhcp/dhcpd.conf
執行程式:/usr/sbin/dhcpd、 /usr/sbin/dhcrelay
yum install -y dhcp
cat /etc/dhcp/dhcpd.conf -查看主組態檔
cat /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example -查看示例組態檔
(3)組態檔內容
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
vim /etc/dhcp/dhcpd.conf -設定全域配置引數
default-lease-time 600; -默認租約為 10分鐘,單位為秒
max-lease-time 7200; -最大租約為 1 小時,單位為秒
option domain-name "example.org"; -指定默認域名
option domain-name-servers 8.8.8.8; -指定 DNS 服務器地址
ddns-update-style none; -禁用 DNS 動態更新
-subnet網段宣告(作用于整個子網段,部分配置引數優先級高于全域配置引數)
subnet 192.168.100.0 netmask 255.255.255.0 { -宣告要分配的網段地址
range 192.168.100.10 192.168.100.20; -設定地址池
option routers 192.168.100.254; -指定默認網關地址
}
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.100 192.168.1.120;
option routers 192.168.1.254;
}
subnet 192.168.2.0 netmask 255.255.255.0 {
range 192.168.2.200 192.168.2.220;
option routers 192.168.2.254;
}
-host主機宣告(給單機分配固定的 IP 地址)
host hostname { -指定需要分配固定 IP地址的客戶機名稱
hardware ethernet 00:c0:29:85:5a:98; -指定該主機的 MAC地址
fixed-address 192.168.100.166; -指定保留給該主機的 IP地址
}
-后面內容可都洗掉
-關上防火墻
systemctl start dhcpd
systemctl stop firewalld
setenforce 0
netstat -anpu | grep ":67"
-如果DHCP服務啟動失敗,可以查看日志檔案
tail -f /var/log/messages
(4)Linux客戶端使用 DHCP 動態獲取IP
方法一:
vim /etc/sysconfig/network-scripts/ifcfg-ens33
DEVICE=ens33
ONBOOT=yes
BOOTPROTO=dhcp
ifdown ens33 ; ifup ens33
方法二:
dhclient -d ens33
查看租約檔案
less /var/lib/dhcpd/dhcpd.lease
四、DHCP配置實驗(包含DHCP中繼配置)

(1)ensp中SW1和SW2的設定
SW1

SW2

(2)虛擬機選擇主機模式,關閉DHCP自動獲取


(3)設定新網段

(4)配置ensp里cloud

(5)修改虛擬機網卡地址


(6)驗證能ping通192.168.1.254、192.168.2.254、192.168.100.254

(7)安裝DHCP軟體

(8)找到修改dhcp的模板,并復制到目錄/dhcpd.conf


(9)在組態檔/dhcpd.conf 里進行全域配置及網段宣告


(10)配置DHCP中繼

(11)驗證



五、固定ip實驗
在上面實驗基礎上新增一個虛擬機,把它的ip地址設為192.168.100.166
(1)選擇主機模式
(2)設定ip地址和DHCP為自動獲取

(3)復制mac地址

(4)主機宣告

(5)驗證

總結
掌握DHCP的作業原理,修改組態檔必須以分號結尾,否則會報錯,一定要選擇主機模式,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/281356.html
標籤:其他
