1. 程式人生 > >linux之dchp搭建

linux之dchp搭建

DHCP

一DHCP簡介:
DHCP(Dynamic Host Configuration Protocol,動態主機配置協議)通常被應用在大型的局域網絡環境中,主要作用是集中的管理、分配IP地址,使網絡環境中的主機動態的獲得IP地址、Gateway地址、DNS服務器地址等信息,並能夠提升地址的使用率。
2.DHCP服務器簡介:
DHCP服務器指的是由服務器控制一段IP地址範圍,客戶端登錄服務器時就可以自動獲得服務器分配的IP地址和子網掩碼。


二.DHCP服務器的相關配置
我將虛擬機server作為dhcp服務器使用,利用destop進行測試
為了方便,將server主機名更名為dhcp.server.com,將desktop主機名更名為dhcp.test.com

下來,我們在dhcp.server.com這臺主機上進行配置:
1.查看server的ip
技術分享圖片
2.查看DHCP服務的依賴包:
技術分享圖片
3.安裝DHCP服務:
技術分享圖片
4.進行配置:

(1)開啟dhcp服務

systemctl start dhcpd

(2)更改配置文件

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

vim /etc/dhcp/dhcpd.conf
更改以下部分:

1 option domain-name "server.com";
域名:參見/etc/resolv.conf
2 option domain-name-servers 172.25.10.254;

指定dns服務器,多臺用逗號隔開。
3 subnet 172.25.10.0 netmask 255.255.255.0
指定子網絡及子網掩碼
4 range 172.25.10.10 172.25.10.20;
指定IP範圍
5 option routers 172.25.10.254;
指定網關
後面可以不要

下面是在dns.test.com上所做的配置:
(1)網絡參數設置:
編輯/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=dhcp
關鍵部位為dhcp
ONBOOT=yes
(2)重啟網絡:
systemctl restart network
在本次試驗,我遇到了如下問題:執行該命令報錯,無法通過DHCP服務器獲得ip,解決思路為:DHCP通常是用於局域網內的一個通信協議,它主要通過客戶端發送廣播數據包給整個物理網段內的所有主機,若局域網內有DHCP服務器時,才會響應客戶端的ip參數要求。所以DHCP服務器與客戶端應該在同一個物理網段內。整個DHCP數據包在服務器與客戶端間的交互情況如下圖(1):

所以我猜測是防火墻阻止了數據包的傳送
我采取的解決方法是:
兩臺虛擬機均執行命令:
firewall-cmd --permanent --add-service=dhcp
firewall-cmd --reload
查看dhcp是否通行:
firewall-cmd --list-all
重啟虛擬機後問題解決。


DHCP數據包在服務器與客戶端間的交互情況示圖
技術分享圖片


測試機通過DHCP服務器獲得ip:
技術分享圖片
(3)將整個網絡重啟之後,如果執行的結果找到的正確的DHCP主機,那麽以下幾個文件可能會被修改。
1.查看/etc/resolv.conf
技術分享圖片
2.查看路由
技術分享圖片
3.查看服務器記錄的DHCP信息
cat /var/lib/dhcpd/dhcpd.leases
技術分享圖片


三.配置文件詳解

cat /etc/dhcp/dhcpd.conf
1.DHCP配置文件中的parameters(參數):表明如何執行任務,是否要執行任務,或將哪些網絡配置選項發送給客戶

ddns-update-style 配置DHCP-DNS 互動更新模式。
default-lease-time 指定確省租賃時間的長度,單位是秒。
max-lease-time 指定最大租賃時間長度,單位是秒。
hardware 指定網卡接口類型和MAC地址。
server-name 通知DHCP客戶服務器名稱。
get-lease-hostnames flag 檢查客戶端使用的IP地址。
fixed-address ip 分配給客戶端一個固定的地址。
authritative 拒絕不正確的IP地址的要求。


2.DHCP配置文件中的declarations (聲明):用來描述網絡布局、提供客戶的IP地址等
shared-network 用來告知是否一些子網絡分享相同網絡。
subnet 描述一個IP地址是否屬於該子網。
range 起始IP 終止IP 提供動態分配IP 的範圍。
host 主機名稱 參考特別的主機。
group 為一組參數提供聲明。
allow unknown-clients;deny unknown-client 是否動態分配IP給未知的使用者。
allow bootp;deny bootp 是否響應激活查詢。
allow booting;deny booting 是否響應使用者查詢。
filename 開始啟動文件的名稱. 應用於無盤工作站。
next-server 設置服務器從引導文件中裝如主機名,應用於無盤工作站。


  1. DHCP配置文件中的option(選項):用來配置DHCP可選參數,全部用option關鍵字作為開始
    subnet-mask 為客戶端設定子網掩碼。
    domain-name 為客戶端指明DNS名字。
    domain-name-servers 為客戶端指明DNS服務器IP地址。
    host-name 為客戶端指定主機名稱。
    routers 為客戶端設定默認網關。
    broadcast-address 為客戶端設定廣播地址。
    ntp-server 為客戶端設定網絡時間服務器IP地址。
    time-offset 為客戶端設定和格林威治時間的偏移時間,單位是秒。
    註意:如果客戶端使用的是視窗操作系統,不要選擇"host-name"選項,即不要為其指定主機名稱


linux之dchp搭建