第十二章 DHCP服務器

一. DHCP的基本概念

1. DHCP的定義

DHCP<動態主機配置協議>TCP/IP協議集所提供的一種實現自動分配IP配置信息的子協議。

2. DHCP的功能

① 動態分配(每一個IP地址都具有租約)

② 分配網關、WINSDNS系統信息

③ 與DNS相結合實現動態更新

④ 保留IP地址給指定主機

3. DHCP的體系結構

DHCP服務器:運行DHCP服務軟件包和DHCP協議的主機

(裝有WIN2KWINNTLINUXUNIX系統的主機)

DHCP客戶機:運行DHCP協議可以發送DHCP請求的主機

(裝有WIN2KWINNTWIN95/98/ME/XPLINUXUNIX系統的主機)

二. DHCP工作原理

1.  分配IP地址過程

① CLIENT發送廣播DHCPDISCOVER尋找DCHP服務器。

② 服務器發送廣播DHCPOFFER響應CLIENT的請求。

③ CLIENT會檢查得到的IP信息是否完整並且發送廣播DHCPREQUEST通知DHCP服務器已獲得IP地址。

④ SERVER發送廣播DHCPACK確認客戶機的請求,表示分配成功。

2.  更新租約

① DHCP客戶端重新啓動時  每次DHCP客戶端重新啓動時, 都會自動利用廣播的方式,給DHCP服務器發送DHCPREQUEST更新信息,要求繼續租用原來的IP地址

② 50%時,CLIENT以點到點方式發送DHCPREQUEST請求服務器的更新租約。

③ 87.5%時,CLIENT發送廣播DHCPREQUEST尋找其他DHCP服務器,如果更新成功的話,DHCP服務器向CLIENT發送DHCPACK;如果不成功的話則發送DHCPNACK

三. DHCP服務的配置

1.  安裝DHCP的服務軟件包

#  mount  /dev/cdrom(插入第二張安裝光盤)

#  cd  /mnt/cdrom/RedHat/RPMS

#  rpm  –ivh  dhcp-3.0pl1-23.i386.rpm

相關文件和目錄:

/var/lib/dhcp目錄 :存放租約文件。

/etc/dhcpd.conf    :核心配置文件, 要手工創建。

/var/lib/dhcp/dhcpd.leases :客戶租約的數據庫文件。

/etc/sysconfig/dhcpd :配置DHCP的啓動參數。

/etc/sysconfig/dhcrelay :配置DHCP中繼代理。

/etc/rc.d/init.d/dhcpd (/etc/init.d/dhcpd)DHCP服務的啓動腳本

2.  /etc/dhcpd.conf

#  vi  /etc/dhcpd.conf

格式:

選項/參數(放在所有作用域之上的選項/參數,作用範圍是整個DHCP服務器)

聲明 {

選項/參數(只在聲明中的有效)

}

說明:

(1) 聲明

n subnet  網絡號  netmask  子網掩碼  ……..}

功能:定義子網 (定義作用域 )

注意:網絡號必須與服務器的網絡號相同,如果服務器有多塊網卡時,必須爲每一個網卡都建立一個相同網絡號的子網,但是不用分配地址的子網可以不定義地址範圍

n range 起始IP地址   終止IP地址;

功能:定義作用域範圍

注意:subnet聲明中至少有一個range,也可以在一個subnet中有多個range,但多個range所定義IP範圍不能重複。

n host  主機名 {………}

功能:定義保留地址

注意:通常放在subnet聲明中

n group {……..}

功能:定義組參數

注意:常用於包含host聲明和subnet聲明

n shared-network  名稱 {………..}

功能:設置DHCP服務器多個IP子網共享同一個物理網絡

注意:通常用於包含多個subnet聲明

(2) 參數

n ddns-update-style  (none|ad-hoc|interim) ;

功能:定義動態更新類型

注意:none  表示不支持動態更新

ad-hoc  表示特殊更新模式

interim  表示互動更新模式

在文件中必須包含該參數,且放在第一行

n ignore  client-updates;

功能:忽略客戶機更新

注意:該選項只能作爲服務器選項

n default-lease-time   數字 ;

功能:指定默認地址租約

注意:可以作爲服務器選項和作用域選項,默認單位爲秒

n max-lease-time  數字;

功能:指定最長的地址租期

注意:可以作爲服務器選項和作用域選項,默認單位爲秒

n hardware   硬件類型  硬件地址;

功能:指定硬件接口類型及硬件地址

注意:硬件類型可以取ethernet/token-ring

硬件地址爲網卡地址的MAC地址

該選項只能用於host聲明中

n fixed-address  ip地址;

功能:定義DHCP客戶機指定的IP地址

注意:該選項只能用於host聲明中

n server-name  主機名;

功能:通知DHCP客戶機服務器的主機名

注意:可以作爲服務器選項和作用域選項

(3) 選項

n option  domain-name   “域名”;

功能:爲客戶機指明DNS域名

注意:可以作爲服務器選項和作用域選項

n option  domain-name-servers  ip地址[ip地址…………];

功能:指定客戶機的DNS服務器的地址

注意:可以作爲服務器選項和作用域選項

n option  host-name  “主機名”;

功能:爲客戶機指定主機名

注意:可以作爲服務器選項和作用域選項

n option  routers  ip地址[ip地址……….];

功能:爲客戶機指定默認網關

注意:可以作爲服務器選項和作用域選項

n option   netbios-name-servers  ip地址[ip地址……..];

功能:爲客戶機指定WINS服務器地址

注意:可以作爲服務器選項和作用域選項

n option  broadcast-address  廣播地址;

功能:設置客戶機的廣播地址

注意:可以作爲服務器選項和作用域選項

n option  subnet-mask  子網掩碼;

功能:設置客戶機的子網掩碼

注意:可以作爲服務器選項和作用域選項

n option  nis-domain   “名稱”;

功能:定義客戶機的所屬NIS域的名稱

注意:可以作爲服務器選項和作用域選項,且只對unix/linux客戶機有效

n option  nis-servers  ip地址[ip地址……];

功能:定義客戶機的NIS域服務器的地址

注意:可以作爲服務器選項和作用域選項,且只對unix/linux客戶機有效

實例:設置dhcpd.conf文件,達到以下要求:

(1) 不支持dns動態更新,且忽略客戶機的更新

(2) 服務器的默認地址租約時間爲3600秒,最大地址租約時間爲7200

(3) 所有作用域的客戶機後綴域名爲abc.com,DNS服務器地址爲192.168.0.254

(4) 所有作用域的客戶機默認網關地址192.168.0.1

(5) 定義作用域192.168.0.0子網,地址掩碼爲255.255.255.0,地址範圍爲192.168.0.2-----192.168.0.250

(6) 保留192.168.0.0子網中的192.168.0.8給以太網卡物理地址爲00:E0:4C:70:33:65的客戶機

#vi   /etc/dhcpd.conf

ddns-update-style  none;

ignore  client-updates;

default-lease-time   3600;

max-lease-time   7200;

option routers 192.168.0.1;

option domain-name “abc.com”;

option domain-name-servers  192.168.0.254;

subnet  192.168.0.0  netmask  255.255.255.0 {

range  192.168.0.2  192.168.0.250;

host  c1 {

hardward   ethernet  00:E0:4C:70:33:65;

fixed-address  192.168.0.8;

}

}

3. 設置DHCP守護進程的工作參數

#vi   /etc/sysconfig/dhcpd

DHCPDARGS=eth0(設置DHCP守護進程監聽網卡接口)

4. 啓動DHCP服務器

#service dhcpd  start

四. DHCP客戶端的配置

1. Linux客戶端

(1) 設置網卡採用dhcp啓動協議,自動獲取ip地址信息

#vi   /etc/sysconfig/network-scripts/ifcfg-ethXX可以012……)

修改BOOTPROTO爲:

BOOTPROTO=dhcp

(2) 獲取IP地址

#ifdown ethX ;ifup ethX  (X可以取0,1,2,……)

注意:linux系統的dhcp客戶端使用dhclient服本來獲取IP地址信息

2. Windows客戶端

(1) 右擊網上鄰居----屬性------雙擊tcp/ip協議----選擇“自動獲動IP地址”

(2) c:\>ipconfig/release

c:\>ipconfig/renew

五. 配置案例

要求:一臺RedHat Linux 9.0主機,eth0ip地址爲:192.168.0.1,現要求利用dhcpd軟件製做一臺滿足以下要求的DHCP服務器:

(1) 不支持dns動態更新,且忽略客戶機的更新

(2) 服務器的默認地址租約時間爲3600秒,最大地址租約時間爲7200

(3) 所有作用域的客戶機後綴域名爲abc.com,DNS服務器地址爲192.168.0.254

(4) 所有作用域的客戶機默認網關地址192.168.0.1

(5) 定義作用域192.168.0.0子網,地址掩碼爲255.255.255.0,地址範圍爲192.168.0.2-----192.168.0.250

(6) 保留192.168.0.0子網中的192.168.0.8給以太網卡物理地址爲00:E0:4C:70:33:65的客戶機

(7) 綁定dhcp服務在eth0接口上

配置過程:

(1) #  rpm  –ivh  dhcp-3.0pl1-23.i386.rpm

(2) # vi  /etc/dhcpd.conf

ddns-update-style none;

ignore  client-updates;

default-lease-time   3600;

max-lease-time   7200;

option routers 192.168.0.1;

option domain-name “abc.com”;

option domain-name-servers  192.168.0.254;

subnet  192.168.0.0  netmask  255.255.255.0 {

range  192.168.0.2  192.168.0.250;

host  c1 {

hardward   ethernet  00:E0:4C:70:33:65;

fixed-address  192.168.0.8;

}

}

(3) #vi  /etc/sysconfig/dhcpd

         DHCPDARGS=eth0

(4) #  /etc/rc.d/init.d/dhcpd  restart

六. 補充內容

1. DHCP中繼代理設置

#vi   /etc/sysconfig/dhcrelay

INTERFACES=eth0”          設置與DHCP服務器相連的接口名

DHCPSERVERS=192.168.2.1”  設置DHCP服務器的地址

2. DHCP服務的部署

(1) 小型網絡中可以只用一臺DHCP服務器管理整個網絡的IP地址, 對於一些dns,wins,web服務器應使用靜態ip

(2) 大型網絡由多個路由器相連時,可以在每個子網設置一臺DHCP服務器,或者通過DHCP中繼,再或者是通過RFC 1542路由器實現跨路由分配分配IP地址

在大型網絡可以有多臺DHCP服務器,並且相互提供備份,所謂的備份就是每個服務器同時建立所備份服務器的作用域,但作用

發佈了50 篇原創文章 · 獲贊 4 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章