1. 程式人生 > 其它 >|NO.Z.00009|——————————|LinuxNetwork|——|Linux&DHCP服務.V01|---------------------------------------------------|4臺server|

|NO.Z.00009|——————————|LinuxNetwork|——|Linux&DHCP服務.V01|---------------------------------------------------|4臺server|



[LinuxNetworkEnd:Linux&DHCP服務.V01]                                                     [Applications.LinuxNetworkEnd] [|DHCP服務|DHCP租約四部曲|DHCP固定地址|DHCP超級作用域|DHCP中繼|4臺server|]








一、DHCP簡介
### --- DHCP簡介

~~~     DHCP(Dynamic Host Configuration Protocol,動態主機配置協議)
~~~     是一個工作在應用層的區域網網路協議,資料傳輸時使用UDP不可靠傳輸協議工作,
~~~     通常被應用在大型的區域網絡環境中,主要作用是集中的管理,分配網路資源,
~~~     使用環境中的主機能動態的獲得IP地址,Gateway地址,DNS伺服器地址等資訊,
~~~     並能夠提升地址的使用率。
~~~     在家庭環境,辦公環境,機房都會使用。
二、DHCP工作原理(租約四部曲+續租)
### --- 廣播請求:
~~~     DHCP Client向DHCP Server發起請求DHCP Discover:IP請求過程,
~~~     找到對應的DHCP Server伺服器

~~~     #反饋:
~~~     DHCP Server向DCHP Client回覆DHCP Offer:可用IP地址;誰發給它的最快就使用哪個。
~~~     DHCP Client判斷哪一個最快就說明那一臺DHCP Server和它之間的距離,網路狀態更好一點。
~~~     所以會接第一個。方便後期租期的續租。
~~~     #確認:
~~~     DHCP Client向DHCP Server發相應確認資訊DHCP Request,
~~~     告訴DHCP Server這個IP地址我要使用,
~~~     #反饋:
~~~     第一種情況:DHCP Server收到DHCP Client客戶端要使用該IP的資訊之後,
~~~     反饋確認資訊DHCP ACK:建立租約。
~~~     #反饋:
~~~     第二種情況:DHCP Client向DHCP Server傳送DHCP Request確認資訊時,
~~~     這個地址已經被其它主機已經使用上了;
~~~     DHCP Server就會向DHCP Client反饋DHCP NAK(NACK)拒絕把資源租給DHCP Client的模式;
~~~     若是不建立租約;再從頭重新建立租約關係。
三、DHCP客戶端進行IP請求

### --- DHCP客戶端進行IP請求

~~~		當一個DHCP客戶機啟動時,會自動將自己的IP地址配置成0.0.0.0,
~~~		由於使用0.0.0.0不能進行正常通訊,所以客戶機就必須通過DHCP伺服器來獲取一個合法的地址,
~~~		由於客戶機不知道DHCP伺服器的IP地址,
~~~		所以它#使用0.0.0.0的地址作為源地址,
~~~		#使用255.255.255.255(區域網內能夠實用的任意IP地址)作為目標地址,
~~~		#使用UDP 67埠作為目的的埠來廣播請求IP地址資訊。
~~~		廣播資訊DHCP Discover中包含了DHCP客戶機的MAC地址和計算機名,
~~~		以便使用DHCP服務能確定是哪個客戶機發送的請求。
~~~		DHCP Client發起廣播;雖然是廣播,但是不是所有主機都會接受到資料,
~~~		只有DHCP Server含有67埠的才會響應,其它主機不會受到影響。
### --- DHCP服務響應請求

~~~		當DHCP服務接收到客戶機請求IP地址的資訊時,
~~~		他就在自己的IP地址池(合法的/可用的地址)中查詢是否有合法的IP地址提供給客戶機。
~~~		如果有,DHCP伺服器就將此IP地址做上標記,加入到DHCP OFFER的訊息中,
~~~		然後DHCP伺服器就廣播一則包括下列資訊的DHCP OFFER訊息。
~~~		DHCP客戶機的MAC地址,DHCP伺服器提供的合法IP地址,
~~~		子網掩碼:預設閘道器(路由)租約的期限,DHCP伺服器的IP地址-MAC。
~~~		因為DHCP客戶機還沒有IP地址,所以DHCP伺服器使用自己的IP地址作為源地址,
~~~		使用255.255.255.255作為目標地址,使用UDP 68埠作為源埠來廣播DHCP OFFER資訊
### --- DHCP客戶機選擇IP

~~~		DHCP客戶機從接受到的第一個DHCP OFFER訊息中選擇IP地址,
~~~		發出IP地址DHCP伺服器將該地址保留,這樣改地址就不能提供給另一個DHCP客戶機,
~~~		當客戶機從第一個DHCP伺服器接受DHCP OFFER並選擇IP地址後,DHCP租約的第三過程發生。
~~~		客戶機將DHCP REQUEST訊息廣播到所有的DHCP伺服器,表明它接收提供的內容。
~~~		DHCP REQUEST訊息包括為該客戶機提供IP配置的伺服器的服務表示(IP地址)
~~~		DHCP伺服器檢視伺服器表示符欄位,以確定它自己是否被選擇為指定的客戶機提供IP地址,
~~~		如果那些DHCP OFFER被拒絕,則DHCP伺服器會取消並保留其IP地址以用於下一個IP租約請求。
~~~		在客戶機選擇IP的過程中,雖然客戶機選擇了IP地址,但是還沒有配置IP地址,
~~~		而在一個網路可能有幾個DHCP伺服器,
~~~		所以#客戶機仍然使用0.0.0.0的地址作為源地址,使用255.255.255.255作為目標地址,
~~~		#使用UDP67埠作為目的埠來廣播DHCP REQUEST資訊。
### --- DHCP伺服器確認租約

~~~		伺服器確認租約:DHCP ACK:DHCP伺服器接受到DHCP REQUEST訊息後,
~~~		以DHCPACK訊息的形式向客戶機廣播成功的確認,
~~~		該訊息包含有IP地址的有效租約和其他坑你配置的資訊。
~~~		雖然伺服器確認了客戶機的租約請求,但是客戶機還沒有收到伺服器的DHCPACK訊息,
~~~		所以#伺服器仍然使用自己的IP地址作為源地址,使用255.255.255.255作為目標地址,
~~~		#使用UDP 68埠作為源埠來廣播DHCP ACK資訊,當客戶機收到DHCP ACK訊息時,
~~~		#它就配置了IP地址,完成了TCP/IP的初始化。
~~~		伺服器拒絕租約:DHCP NACK (DHCP NAK)
~~~		如果DHCP REQUEST不成功,例如客戶機試圖租約先前的IP地址,但該IP地址不再可用,
~~~		或者因為客戶機移到其它子網,該IP無效時,DHCP伺服器將廣播否定確認訊息DHCP NACK,
~~~		當客戶接收到不成功的確認時,它將重新開始DHCP租約過程。
~~~		#注:
~~~		如果DHCP客戶機無法找到DHCP伺服器,
~~~		它將從TCP/IP的B類網段169.254.0.0/16中挑選一個IP地址作為自己的IP地址,
~~~		繼續每個5分鐘嘗試與DHCP伺服器進行通訊,一旦與DHCP服務取得聯絡,
~~~		則客戶機放棄自動配置的IP地址,而使用DHCP伺服器分配的IP地址。
~~~		DHCP客戶機收到DHCP伺服器迴應的ACK報文後,
~~~		通過地址衝突檢測(ARP)發現伺服器分配的地址衝突或者由於其它原因導致不能使用。
~~~		則傳送DECLINB報文,通知伺服器所分配的IP地址不可用。
### --- DHCP客戶機續租:

~~~		DHCP客戶機會在租期過去50%的時候,
~~~		直接向為其提供IP地址伺服器傳送DHCP REQUEST訊息包,
~~~		如果客戶機接收到該伺服器迴應的DHCP ACK訊息包,
~~~		客戶機就根據包中所提供的新的及其它已經更新的TCP/IP引數,更新自己的配置,
~~~		IP租用更新完成。如果沒有收到該伺服器的回覆。則客戶機繼續使用現有的IP地址,
~~~		因為當前租期還沒有50%
~~~		如果在租期過去50%的時候沒有更新,
~~~		則DHCP客戶機將在租期過去87.5%的時候再次向為其提供IP地址的DHCP伺服器聯絡,
~~~		如果還不成功,到租約的100%時候,DHCP客戶機必須放棄這個IP地址,重新申請,
~~~		如果此時無DHCP伺服器可用,DHCP客戶機會使用169.254.0.0/16中隨機的一個地址,
~~~		並且每隔5分鐘再進行嘗試。








===============================END===============================


Walter Savage Landor:strove with none,for none was worth my strife.Nature I loved and, next to Nature, Art:I warm'd both hands before the fire of life.It sinks, and I am ready to depart                                                                                                                                                    ——W.S.Landor



來自為知筆記(Wiz)