DHCP伺服器的架設
DHCP- 是Dynamic Host Configuration Protocol 動态主機配置設定協定的縮寫,但是它的前身是BOOTP。該協一般應用在大的網絡配置中,可以省去管理者為每個主機配置的ip位址,以及在配置中出現ip位址沖突。
1 先确認要作為DHCP伺服器的主機上的DHCP 的rpm包是否安裝,
# rpm -qa dhcp
如果沒有安裝則需要挂載本地CD光牒,并安裝dhcp rpmbao
#mkdir /media/cdrom
#mount /dev/cdrom /media/cdrom
#cd /media/cdrom/Server
2在redaht 5.4 上提供的是dhcp-3.0.5-21.el5.i386.rpm
#rpm –vhi dhcp-3.0.5-21.el5.i386.rpm
warning: dhcp-3.0.5-21.el5.i386.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing... ########################################### [100%]
1:dhcp ########################################### [100%]
3 在安裝完dhcp的rpm包後,可以檢視系統自動為之安裝的檔案
Dhcp的主配置文:etc/dhcpd.conf 但是在redhat 5.4 上是個空檔案,在配置前需要拷貝模闆檔案, /usr/share/doc/dhcp*/dhcpd.conf.sample
服務腳本檔案是:/etc/rc.d/init.d/dhcpd
Dhcp中繼器的腳本檔案:/etc/rc.d/init.d/dhcrelay
Dhcp執行參數檔案:/etc/sysconfig/dhcpd
Dhcp 中繼器的執行參數檔案:/etc/sysconfig/dhcrelay
Dhcp 的租鑰檔案/var/lib/dhcpd/dhcpd.leases/
Dhcp伺服器的監聽端口是68 而dhcp中繼器伺服器的監聽端口是67
4 dhcp用戶端向dhcp伺服器發送請求的過程分為四個階段
Dhcpdiscovery ;dhcpoffer ; dhcprequest ;dhcpack
5 因為dhcp的主配置檔案預設是空的 ,是以 在配置dhcp伺服器是,應先拷貝主配置檔案
[root@freehat ~]# cp /usr/share/doc/dhcp-3.0.5/dhcpd.conf.sample /etc/dhcpd.conf
ddns-update-style interim;
ignore client-updates;
subnet 192.168.0.0 netmask 255.255.255.0 {
注:subnet是指的會dhcp 伺服器中的位址池的ip位址所在的網絡,但是注意的是dhcp伺服器的ip位址必須在該網絡内,不然,dhcp服務啟動不了,顯然netmask 是子網路遮罩
# --- default gateway
option routers 192.168.0.1;
注:這是dhcp用戶端在擷取IP位址時自動獲得的網關
option subnet-mask 255.255.255.0;
注:dhcp用戶端,獲得到的子網路遮罩
option nis-domain "domain.org";
注: 為dhcp用戶端在擷取位址的同時自動為之配置nis伺服器的域名、
option domain-name "domain.org";
注 在dhcp獲得位址的同時也有獲得域名
option domain-name-servers 192.168.1.1;
注:為客戶指向dns伺服器
option time-offset -18000; # Eastern Standard Time
# option ntp-servers 192.168.1.1;
該項是指的網絡時間伺服器
# option netbios-name-servers 192.168.1.1;
該項指的是,wins伺服器
# --- Selects point-to-point node (default is hybrid). Don't change this unless
# -- you understand Netbios very well
# option netbios-node-type 2;
range 192.168.0.10 192.168.0.20
當然在配置dhcp伺服器是這是最關鍵的,應為隻是dhcp的位址池,當用戶端發送請求,伺服器端在接到請求是會自動的在位址池中找未用的ip位址,但是Linux 上的dhcp伺服器是按照從大到小的順序為用戶端配置設定ip位址的
default-lease-time 21600;
該項是指的是dhcp的預設的租用期限
max-lease-time 43200;
該項是指dhcp的最大熱租用期限
注:dhcp 用戶端在獲得到ip位址 後,當使用的時間達到租期的一半是就會就會向DHCP伺服器續約,當續約不成功時,dhcp用戶端就會在租約的87%,還會繼續續約,如果還不能成功是,則用戶端還會繼續使用當足月到期時,就會釋放該ip位址,但是在續約是庫胡端使用的是單點傳播;dhcp用戶端就會發送DHCPDISCOVER包,
# we want the nameserver to appear at a fixed address
當然有時,也會為一些主機綁定ip位址,是以就可以用下面的host,為某些主機
綁定ip位址
Hardware ethernet:該項是指的要綁定主機的mac位址
Fixed-address :是指的是要綁定的ip位址
例如 host ns {
;
hardware ethernet 12:34:56:78:AB:CD;
fixed-address 192.168.1.2;
}
}
7 這裡我們配置個完整的dhcp伺服器的過程,當然在配置dhcp先安裝dhcp軟體包,這裡就不在重複上面的過程了
值得注意的是: dhcp伺服器的ip位址 必須在該位址池中,否則dhcp服務不能啟動
在subnet的網絡号必須和rang中的位址池相對應
subnet 192.168.2.0 netmask 255.255.255.0 {
option routers 192.168.2.1;
option domain-name-servers 192.168.2.1;
# option ntp-servers 192.168.2.1;
# option netbios-name-servers 192.168.2.1;
range 192.168.2.2 192.168.2.25;
host ns {
next-server marvin.redhat.com;
fixed-address 207.175.42.254;
當然我這裡指是個例子,僅供參考
8 啟動dhcp服務,并 把該服務加入到開機啟動隊列中
# service dhcpd start
# chkconfig dhcpd on
9 接下來可以驗證剛才的實驗是否成功,如果用的是虛拟機做的實驗,則可以在開啟一台虛拟主機,并讓其的網卡類型在同一個通道中,并讓其網開的設定成自動擷取的方式,當擷取成功是,如果是Windows,可以在dos視窗中執行指令: ipconfig /all
來檢視其獲得ip位址及dns 網關,等其他資訊
如果是Linux的用戶端時則可以,執行
[root@freehat ~]# dhclient –d 可以檢視其擷取ip位址的過程
~
執行ifconfig 檢視器擷取的ip位址
DHCP 中繼伺服器
1有時考慮其他的因素,不能在兩個網絡中同時配置兩台DHCP伺服器,但是有時有的路由器符合RFC1542 的協定是,則 不需要配置中繼代理,但是有時有些路由器支援中繼代理的,價格比較昂貴,是以有是會考慮; 用Windows server或者Linux主機來配置dhcp中繼代理服務,當然這裡的配置是用linux來配置的。
2 當然,我們還需要配置dhcp伺服器,在這裡就略過,但是在配置dhcp是必須指出預設網關,不然,需要中繼的網絡不能獲得ip位址
3 在配置dhcp中繼代理是同樣需要安裝dhcp 的rpm 包,但是需要配置/etc/sysconfig/dhcrelay
Vim /etc/sysconfig/dhcrelay
INTERFACES=""
該項是dhcp代理伺服器監聽的網卡,如果有多快網卡則在填寫多快網開并用“,”分開
DHCPSERVERS=""
該項是指明dhcp伺服器的ip位址
4 關閉dhcp代理伺服器的dhcp服務,并啟用dhcrelay 服務,并加入到開機啟動列隊中
[root@freehat ~]# service dhcrelay stop
[root@freehat ~] chkconfig dhcpd off
[root@freehat ~]# service dhcrelay start
[root@freehat ~] chkconfig dhcrelay on
5 當然也需要驗證,該服務是否配置成功
在用戶端執行:
本文轉自 freehat08 51CTO部落格,原文連結:,如需轉載請自行聯系原作者