RHEL5中配置DHCP服務器實現動態主機配置

RHEL5中配置DHCP服務器實現動態主機配置
DHCPDynamic Host Configuration Protocol,動態主機配置協議,提供了動態配置IP地址的功能,同時在必定上緩解了IP地址缺少的問題
dhcp後臺進程dhcpd ; 執行文件:/usr/sbin/dhcpd ; 啓動腳本:/etc/rc.d/init.d/dhcpd ; 使用端口:67bootps),68bootpc
相關RPM包:dhcp-3.0.5-3.el5.i386.rpm    (第三張光盤) 默認未裝
              dhcp-devel-3.0.5-3.el5.i386.rpm (第三張光盤) 默認未裝
還有一些與dhcp相關的rpm包在第二,三張光盤中暫不用裝
下載地址:http://www.isc.org
源代碼最新版本:
安裝rpm程序包:#rpm –ivh dhcp-3.0.5-3.el5.i386.rpm# rpm –ivh dhcp-devel-3.0.5-3.el5.i386.rpm
#service  dhcpd  start     =/etc/rc.d/init.d/dhcpd start   啓動dhcpd服務
#service  dhcpd  stop     =/etc/rc.d/init.d/dhcpd stop    中止dhcpd服務
#service  dhcpd  restart   =/etc/rc.d/init.d/dhcpd restart  重啓dhcpd服務
#service  dhcpd status     =/etc/rc.d/init.d/dhcpd status    檢查dhcpd服務狀態
# ntsysv #chkconfig  -–level  35  dhcpd  on         更改服務自動加載
dhcpd的相關配置文件:/var/lib/dhcpd/dhcpd.leases租約文件記錄租約的起始與到期日的檔案
                       /var/log/messages登陸信息文件,用於排錯
                     /usr/share/doc/share3.0.1/dhcpd.conf.sample dhcpd.conf主配置文件的示範文件
                       /etc/dhcpd.conf 主配置文件,需從示範文件複製
注意:
1)在啓動dhcp服務以前,應確認提供DHCP服務器的網絡接口具備固定的IP地址(即採用靜態的網絡地址配置方式),而且該網絡接口的IP地址一般與DHCP服務器中進行動態分配的地址(範圍)屬於同一網段。
2dhcp的主配置文件/etc/dhcpd.conf默認狀況下是不存在的(實際是空的),須要用戶自行建立,然而,在安裝dhcp服務時會安裝一個示範文件 ,即/usr/share/doc/share3.0.1/dhcpd.conf.sample」,在配置dhcp服務時,可將此文件更名爲dhcpd.conf,再複製到/etc目錄下,而後根據須要進行編輯。另在dhcpd.conf文件中,每行開頭的#表示註釋外,其它每一行都必須以號結尾。
配置文件 dhcpd.conf 格式爲:
選項/全局參數
  聲明
{
  選項/局部參數
 }
聲明:用於定義網絡佈局,提供給客戶端的 IP 地址等,包括
     shared-network 名稱 {…}  …………… 定義超級做用域
     subnet 網絡號 netmask 子網掩碼 {…} 定義做用域或 IP 子網
 range  起始 IP 地址   終止 IP 地址 …… 定義做用域 ( IP 子網範圍 )
  host  主機名 {…}  …………………….. 定義保留地址
  group  {…}   ………………………....... 定義一組參數
參數:用於配置 DHCP 服務功能,全局參數和局部參數,包括
ddn s-update-style  類型 …………. … 定義所支持的 DNS 動態更新類型(必選
allow/ignore  client-updates ………. 容許 / 忽略客戶機更新 DNS 記錄
default-lease-time  數字 ……………….. 指定默認的租用期限,單位:秒
max-lease-time  數字 …………………. 指定最大租用期限,單位:秒
hardware  硬件類型和 MAC 地址 ……. 指定網卡接口類型和 MAC 地址
server-name  主機名 ………………….. 通知 DHCP 客戶機服務器的主機名
fixed-address  IP 地址 ………………… 分配給客戶端一個固定的 IP 地址
選項;所有用 option 關鍵字做爲開頭,經常使用的選項包括
      option  subnet-mask  子網掩碼 ………………. 爲客戶端指定子網掩碼
      option  domain-name  「域名」 ………………. 爲客戶端指定 DNS 域名
      option  domain-name-server  IP 地址 …………. 爲客戶端指定 DNS 服務器的 IP 地址
      option  host-name  「 主機名 ………………….. 爲客戶端指定主機名
      option  routes  IP 地址 ………………………... 爲客戶端指定默認網關
      option  broadcast-address  廣播地址 ………… 爲客戶端指定廣播地址
      option  netbios-name-servers  IP 地址 ………… 爲客戶端指定 WINS 服務器的 IP 地址
      option  netbios-node-type  節點類型 …………. 爲客戶端指定節點類型
      option  ntp-server  IP 地址 …………………… 爲客戶端指定網絡時間服務器的 IP 地址
      option  nis-server  IP 地址 …………………... 爲客戶端指定 NIS 域服務器的地址
      option  nis-domain  「 名稱 ………………..… 爲客戶端指定所屬的 NIS 域的名稱
      option  time-offset   偏移差 ……………….... 爲客戶端指定與格林尼治時間的偏移差
DHCP 的主配置文件/etc/dhcpd.conf內容說明:
ddns-update-style interim;         (全局參數,指定DHCP服務器支持的DNS動態更新的方式爲interim)
ignore client-updates;             (全局參數,指定不容許客戶機更新DNS記錄)
subnet 192.168.0.0 netmask 255.255.255.0 {  (聲明IP地址範圍,設置子網的網絡地址和子網掩碼,一般一個IP做用域對應一個IP子網段值得注意的是,語句中的子網ID必須與DHCP服務器所在的網絡ID相同)       
# --- default gateway
    option routers          192.168.0.1;     (設置DHCP客戶端的默認網關的地址)
    option subnet-mask      255.255.255.0;   (設置DHCP客戶端的子網掩碼)
    option nis-domain       "domain.org";
    option domain-name      "domain.org";    (設置DHCP客戶端的DNS域名,將與客戶端主機名稱一塊兒組成主機全名
    option domain-name-servers  192.168.1.1; (設置DHCP客戶端的DNS服務器IP地址)
    option time-offset      -18000; # Eastern Standard Time  (指定與格林尼治時間的偏移差)
#   option ntp-servers      192.168.1.1;
#   option netbios-name-servers 192.168.1.1;
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
#   option netbios-node-type 2;
range dynamic-bootp 192.168.0.128 192.168.0.254; (動態IP地址池,可分配的IP地址範圍,只用於本地網絡可刪去dynamic-bootp一般一個IP做用域對應一個IP子網段IP子網段可用一個或多個range語句來描述,可是多個range所定義的IP範圍不能重複,例如:
subnet 192.168.12.0 network 255.255.255.0
{
  range  192.168.12.10  192.168.12.100;
  range  192.168.12.150  192.168.12.200;
}
    default-lease-time 21600;         (設置默認的租用時間長度,單位爲秒)
    max-lease-time 43200;             (設置客戶端租用IP地址的最長時間,單位爲秒)
    # we want the nameserver to appear at a fixed address
    host ns {                         (設置靜態IP地址,host後面爲需分配固定IP的主機的主機名
        next-server marvin.redhat.com;
        hardware ethernet 12:34:56:78:AB:CD; (客戶端網卡的MAC地址)
        fixed-address 207.175.42.254;        (固定分配的IP地址)
    }
}
DHCP服務器會從動態分配地址範圍的高端開始分配IP地址,與WINDOW服務器中的DHCP服務器有區別
多網絡接口時須要配置的文件
  做爲DHCP服務器使用的主機一般會擁有多個網絡接口,而dhcp服務可能只須要在其中一個網絡接口上提供服務,此時能夠在/etc/sysconfig/dhcpd文件中指定須要提供dhcpd服務的網絡接口,/etc/sysconfig/dhcpd文件中默認的DHCPDARGS設置項爲空,可修改成指定的網絡接口名稱,例如eth0,這樣dhcpd將只在eth0網絡接口上提供DHCP服務。改爲:DHCPDARGS=eth0
另外一個範本
爲多個網段分配動態IPDHCP中繼)
若是在一個規模比較大的物理網絡中存在多個IP子網,而多個IP子網的主機都須要DHCP服務器一提供地址配置信息,能夠採用在一個子網中安裝DHCP服務器,並讓其爲多個子網分配IP地址的方案。DHCP中繼代理功能就可以使DHCP服務器向多個風段提供動態IP分配服務。DHCP中繼代理容許將無DHCP服務器的子網內的DHCP客戶請求轉發給其餘子網內的一個或多個DHCP服務器。如下設置將使DHCP服務器向多個網段提供動態IP分配服務.
(1)定義共享網絡:在DHCP服務器(位於子網1中,IP地址爲192.168.57.129)的dhcpd.conf文件中,添加shared-network語句,向DHCP服務器聲明子網1,子網2,子網3都是共享網絡:
ddns-update-style interim;
ignore client-updates;
shared-network share
{
    option subnet-mask 255.255.255.0;
    option domain-name "domain.org";
    option domain-name-servers 192.168.57.1,159.226.39.7;
    option broadcast-address 192.168.57.255;
    default-lease-time 21600;
max-lease-time 43200; subnet語句的括號外的選項對三個子網都會起做用,而在三個子網各自的subnet語句括號內的
選項,只做用於該子網
      subnet 192.168.57.0 netmask 255.255.255.0
{
          range 192.168.57.10 192.168.57.200;  
          option routers 192.168.57.2;
          host pc1
{
              hardware ethernet 00:a0:cc:cf:9C:14;
              fixed-address 192.168.57.11;
             }
          host pc2
 {
              hardware ethernet 04:20:c1:f8:37:11;
              fixed-address 192.168.57.12;
             }
          }
      subnet 192.168.58.0 netmask 255.255.255.0
{
          range 192.168.58.100 192.168.58.150;  
          option routers 192.168.58.1;
           host pc1
             {
                hardware ethernet A1:35:62:C3:31:65;
                fixed-address 192.168.58.101
}
          }
      subnet 192.168.59.0 netmask 255.255.255.0
{
          range 192.168.59.111 192.168.59.222;  
          option routers 192.168.59.1;
       }
}
(2)DHCP中繼代理:在安裝DHCP服務器時,同時安裝了DHCP中繼代理dhcrelay工具。通常狀況下,DHCP中繼代理監聽全部接口上的DHCP請求,也可以向某個子網指定DHCP中繼代理。在上面的dhcpd.conf文件中,假設DHCP服務器位於子網1內,則用DHCP中繼代理子網2,子網3提供DHCP服務。子網2,子網3的網卡分別對應爲eth1,eth2.
編輯/etc/sysconfig/dhcrelay配置文件,將語句INTERFACES=「」改成INTERFACES=eth1 eth2,同時,將語句DHCPSERVERS=「」改成DHCP服務務器的IP地址,即192.168.57.129。即寫成:INTERFACES=eth1 eth2
                                                DHCPSERVERS=192.168.57.129
而後使用此命令實現DHCP中繼代理:#dhcrelay -i eth1 -i eth2 192.168.57.129 參數-i表示DHCP中繼代理經過指定的網絡接口向指定的子網提供DHCP服務,若是沒有-i參數,則表示向全部子網提供服務。
除了使用DHCP中繼代理外,還能夠經過選用具備DHCP/BOOTP中繼功能(定義在RFC 1542)的路由器,以支持DHCP服務器實現跨網段分配IP地址。
關於DHCP服務器雙機備份
DHCP服務器的雙機備份目的是保證網絡的穩定性,可靠性。當一臺DHCP服務器出現故障時,可使用備份DHCP服務器,保證網絡用戶可以得到IP配置,正常訪問網絡。DHCP服務器的雙機備份要求提供的IP地址範圍不能重複,以防止一臺DHCP服務器出現故障時,備份DHCP服務器分配的IP地址與發生故障的DHCP服務器已分配的IP地址發生衝突。實際上,DHCP的雙機備份,是經過分割可用的IP地址範圍實現的。將可用的IP地址範圍劃分給多臺備份DHCP服務器,實現DHCP的備份。例 如,DHCP服務器上配置爲:
subnet 192.168.59.0 netmask 255.255.255.0
                                {
      range 192.168.59.10 192.168.59.110;
      option broadcast-address 192.168.59.255;
      option routers 192.168.59.1;
      option domain-name-servers 192.168.59.1,159.226.39.7;
}
而備份DHCP服務器上的配置爲subnet 192.168.59.0 netmask 255.255.255.0
                                 {
      range 192.168.59.111 192.168.59.200;
      option broadcast-address 192.168.59.255;
      option routers 192.168.59.1;
      option domain-name-servers 192.168.59.1,159.226.39.7;
}
 
                           關於靜態IP分配和動態IP分配
DHCP服務器是以地址租約的方式爲DHCP客戶端提供服務的。它有如下兩種方式
1.限定租期(動態IP分配)
當DHCP客戶端向DHCP服務器租用到IP地址後,DHCP客戶端可使用該IP地址一段時間,當租約快到期時,客戶端必須向DHCP服務器提出續約請求,請求成功後能夠繼續使用該IP地址。若是客戶端沒有續約或續約不成功,服務器就會將該IP地址回收,分配給其餘DHCP客戶端使用。固然原DHCP客戶端以後還須要IP地址的話,它能夠向DHCP服務器從新租用其餘地址。這種方式是一種動態分配的方式,能夠很好地解決IP地址不夠用的問題。
2.永久租用(靜態IP分配)
當DHCP客戶端向:DHCP服務器租用到IP地址後,這個地址就永久地分配給這個DHCP客戶端使用(它是經過客戶端網卡上的MAC地址來識別的)了。採用這種方式的前提是公司中的IP地址足夠使用,這樣DHCP客戶端就沒必要頻繁地向DHCP服務器提出續約請求。

關於DHCP客戶端的配置

LinuxDHCP客戶端的配置
dhclient
直接從dhcp中獲取地址
/etc/dhclient.config
默認沒有,一樣拷貝過來
# dhclient.conf
interface "eth0"{
prepend domain-name-servers 127.0.0.1;
request subnet-mask, broadcast-address, time-offset, routers,
domain-name, domain-name-servers, host-name;
require subnet-mask, domain-name-servers;
}
# end dhclient.conf
或者
①直接編輯文件/etc/sysconfig/network-scripts/ifcfg-ethO,找到語句"BOOTPROTO=none"將其改成「BOOTPROTO=dhcp」便可
②從新啓動網卡,可在該客戶端的本地終端窗口下執行下面的命令:
ifdown eth0;ifup eth0
ifconfig eth0 down;ifconfig eth0 up
③測試該DHCP客戶端是否已配置好,可執行下面的命令
ifconfig eth0
Windows 2000/XP/2003DHCP客戶端的配置
選自動得到IP和自動得到DNS
測試 ipconfig /all
更新租約 ipconfig /renew
釋放IP ipconfig /release
 

1                          租約期限

租約期限是在DHCP服務器上指定的時間長度,在這個時間範圍內DHCP客戶端能夠臨時使用從DHCP服務器租借到的IP地址。若是客戶端在租約到期前,沒有更新租約,則DHCP服務器會收回該IP地址,並將該IP地址提供給其餘的DHCP客戶端使用。若是原DHCP客戶端以後還須要IP地址的話,它就能夠向DHCP服務器從新申請租用另外一個IP地址。
固然,DHCP客戶端能夠在租約未到期前更新租約。實際上,每當DHCP客戶端從新啓動時,以及通過租約期限的1/2後,都會主動向DHCP服務器要求更新租約。只要可以成功更新租約,DHCP客戶端就能夠繼續使用其IP地址,而且會從新取得一個新的租約。
 
dhcpd.conf文件中,有下面兩個與租約期限有關的設置。
1.默認的租約期限
可用default-lease-time語句來設置默認的租約時間長度,其單位爲秒
default-lease-time 86400; #1
 
2.最大租約期限
可用max-lease-time語句來設置客戶機租用IP地址的最長時間
max-lease-time 172800;      #2
 
一旦網絡上的DHCP客戶端開始從DHCP服務器中租用了IP地址,租用信息就會被記錄在/var/lib/dhcp/dhcpd.leases文件中,該文件會不斷被更新.從該文件中就可查看到IP地址分配狀況,包括每一個租用的IP地址及對應的MAC地址、租約的起始時間和結束時間等信息。
 
tail -f /var/lib/dhcp/dhcpd.leases
查看dhcp更新記錄

2                          ☆保留特定的IP地址

能夠保留特定的IP地址給指定的DHCP客戶端使用,也就是說,當這個客戶端每次向DHCP服務器索取1P地址或更新租約時,DHCP服務器都會給該客戶端分配相同的IP地址。這種DHCP服務器爲DHCP客戶端分配IP地址的方式,一般也被稱爲靜態分配IP或固定分配IP
要保留特定的IP地址給指定的DHCP客戶端使用,可先用arp命令查出該客戶端網卡的MAC地址;而後在/etc/dhcpd.conf文件中,加入以下格式的host語句
host 主機名 {
hardware ethernet  網卡的MAC地址;          #指定DHCP客戶端網卡的MAC地址
fixed-address  IP地址;                 #指定爲該DHCP客戶端分配的IP地址
IP參數;                         #指定默認網關等其餘IP參數
}
ping -c 3 192.168.152.131
看是否在線
arp看剛纔pingip所對應的MAC地址(得到MAC地址)
最後在/etc/dhcpd.conf中加
host pcl{
    hardware ethernet 00:0C:29:B0:B2:EB;
    fixed-address 192.168.152.131;
}
相關文章
相關標籤/搜索