DHCP主機(jī)的使用
我們知道DHCP協(xié)議的功能非常強(qiáng)大,在網(wǎng)絡(luò)中,它可以處理大量的IP地址分配的工作。那么對(duì)于DHCP服務(wù)器的建設(shè),我們?cè)谇懊娴奈恼轮幸沧隽司唧w的介紹。那么這里我們則主要講解一下DHCP主機(jī)在其中的一些應(yīng)用。
DHCP的主要用途為何?
DHCP主機(jī)的主要用途就是在于自動(dòng)分配網(wǎng)路參數(shù)給 Client 端的電腦,以降低網(wǎng)域當(dāng)中可能發(fā)生的 IP 沖突問(wèn)題,以及減少網(wǎng)管人員到處檢查錯(cuò)誤的傷腦筋!
DHCP主要的兩種 IP 分配模式為何?
主要的兩種分配模式分別為 Dynamic IP 與 Static IP , Static IP 透過(guò) MAC 的比對(duì),至于 Dynamic IP 則是直接取用網(wǎng)域中尚未被使用到的 IP 來(lái)進(jìn)行 Client 端的分配?
Linux系統(tǒng)下想上網(wǎng)必須配置的網(wǎng)絡(luò)參數(shù):
IP, netmask, network, broadcast, gateway, DNS IP
IP, netmask, network, broadcast 與gateway都在 /etc/sysconfig/network-scripts/ifcfg-eth[0-n]
DNS 的位址則是在 /etc/resolv.conf 里頭設(shè)定,利用 NAT 主機(jī)的功能,就可以上網(wǎng)了?
DHCP(Dynamic Host Configuration Protocol) 主機(jī)最主要的工作是有一部主機(jī)來(lái)自動(dòng)的分配所有的網(wǎng)路參數(shù)給居于網(wǎng)內(nèi)的電腦?也就是自動(dòng)的將網(wǎng)路參數(shù)正確的分配給網(wǎng)域中的每部電腦, 讓用戶端的電腦可以在開(kāi)機(jī)的時(shí)候就立即自動(dòng)的設(shè)定好網(wǎng)路的參數(shù)值,這些參數(shù)值可以包括了 IP?netmask?network?gateway 與 DNS 的位址等等?
DHCP的運(yùn)作方式:
DHCP通常是用區(qū)域網(wǎng)路內(nèi)的一個(gè)通訊協(xié)定,他主要藉由用戶端傳送廣播封包給整個(gè)物理網(wǎng)段內(nèi)的所有主機(jī), 若區(qū)域網(wǎng)路內(nèi)有DHCP主機(jī)時(shí),才會(huì)回應(yīng)用戶端的 IP 參數(shù)要求?所以,DHCP服務(wù)器與用戶端是應(yīng)該要在同一個(gè)物理網(wǎng)段內(nèi)的? 而用戶端取得 IP 參數(shù)的程序可以簡(jiǎn)化如下:
1.用戶端利用廣播封包發(fā)送DHCP需求:
若用戶端設(shè)定使用DHCP取得 IP (在 Windows 內(nèi)為‘自動(dòng)取得 IP'),則當(dāng)用戶端開(kāi)機(jī)或者是重新啟動(dòng)網(wǎng)路卡時(shí), 用戶端主機(jī)會(huì)發(fā)送出DHCP要求給所有物理網(wǎng)段內(nèi)的電腦?此封包的目標(biāo) IP 會(huì)是 255.255.255.255, 所以一般主機(jī)接收到這個(gè)封包后會(huì)直接予以丟棄,但若區(qū)域網(wǎng)路內(nèi)有DHCP伺服器時(shí)會(huì)如何回應(yīng)?
2.DHCP主機(jī)回應(yīng)訊息:
DHCP主機(jī)在接收到這個(gè)用戶端的需求后,針對(duì)這個(gè)用戶端的硬體位址 (MAC) 與本身的設(shè)定資料來(lái)進(jìn)行下列工作:
到服務(wù)器的登錄檔中尋找該用戶之前是否曾經(jīng)用過(guò)某個(gè) IP ,若有且該 IP 目前無(wú)人使用,則提供此 IP 給用戶端;
若設(shè)定檔針對(duì)該 MAC 提供額外的固定 IP (static IP) 時(shí),則給予該 IP 的設(shè)定;
若不符合上述兩個(gè)條件,則隨機(jī)取用目前沒(méi)有被使用的 IP 給用戶,并記錄下來(lái)?
用戶端接受DHCP伺服器提供的參數(shù)并設(shè)定本身的網(wǎng)路環(huán)境:
若一切安好,則用戶端會(huì)接受該次取得的 IP 并開(kāi)始處理本身的網(wǎng)路環(huán)境,包括改寫(xiě) /etc/resolv.conf 等等; 并且會(huì)向DHCP伺服器發(fā)送一個(gè)確認(rèn)封包,確認(rèn)該參數(shù)已被接受?
DHCP伺服器記錄該次租約行為:
用戶端回傳訊息以建立租約行為后,該次租約會(huì)被記錄到主機(jī)的登錄檔上頭, 并且開(kāi)始租約計(jì)時(shí)喔!那么該次租約何時(shí)會(huì)到期而被解約你可以這樣想:
用戶端離線:不論是關(guān)閉網(wǎng)路介面 (ifdown)?重新開(kāi)機(jī) (reboot)?關(guān)機(jī) (shutdown) 等行為,皆算是離線狀態(tài),這個(gè)時(shí)候 Server 端就會(huì)將該 IP 回收,并放到 Server 自己的備用區(qū)中,等待未來(lái)的使用;
用戶端租約到期:前面提到DHCPserver 端發(fā)放的 IP 有使用的期限,用戶端使用這個(gè) IP 到達(dá)期限規(guī)定的時(shí)間,而且沒(méi)有重新提出DHCP的申請(qǐng)時(shí),就需要將 IP 繳回去!這個(gè)時(shí)候就會(huì)造成斷線,而用戶也可以再向DHCP主機(jī)要求再次分配 IP ?
以上就是DHCP這個(gè)協(xié)定在 Server 端與 Client 端的運(yùn)作狀態(tài),由上面這個(gè)運(yùn)作狀態(tài)來(lái)看,我們可以曉得,只要 Server 端設(shè)定沒(méi)有問(wèn)題,加上 Server 與 Client 在硬體連線上面確定是 OK 的,那么 Client 就可以直接藉由 Server 來(lái)取得上網(wǎng)的網(wǎng)路參數(shù),當(dāng)然啦,只要我們這些管理員能夠好好的?正確的管理好我們的DHCP,那么上網(wǎng)的設(shè)定自然就變成一件很簡(jiǎn)單的事情啦!