日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

华为数通笔记-DHCP

發(fā)布時間:2024/8/1 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 华为数通笔记-DHCP 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

DHCP背景

隨著網(wǎng)絡規(guī)模的不斷擴大,網(wǎng)絡復雜度不斷提升,網(wǎng)絡中的終端設備例如主機、手機、平板等,位置經(jīng)常變化。終端設備訪問網(wǎng)絡時需要配置IP地址、網(wǎng)關地址、DNS服務器地址等。采用手工方式為終端配置這些參數(shù)非常低效且不夠靈活。

IETF1993年發(fā)布了DHCPDynamic Host Configuration Protocol,動態(tài)主機配置協(xié)議)。DHCP實現(xiàn)了網(wǎng)絡參數(shù)配置的自動化,降低客戶端的配置和維護成本。

本課程介紹DHCP工作原理、應用場景和簡單配置。

手工配置主機IP地址、網(wǎng)絡掩碼、網(wǎng)關地址、DNS服務器地址等網(wǎng)絡參數(shù)時,需要經(jīng)過地址規(guī)劃、地址分配、地址配置、地址維護等復雜的操作流程。這使地址分配靈活性差,IP地址資源利用低,同時較大的工作量導致配置容易出錯,對人員素質(zhì)要求較高。

?

DHCP的基本概念

DHCP是一種用于集中對用戶IP地址進行動態(tài)管理和配置的協(xié)議。

DHCP采用C/S(Client/Server,客戶端/服務器)通信模式協(xié)議報文基于UDP的方式進行交互,采用67DHCP服務器)和68DHCP客戶端)兩個端口號

  • 正常工作時由客戶端向服務器提出配置申請。
  • 服務器返回為客戶端分配的IP地址等相應的配置信息。

DHCP相對于手工配置有如下優(yōu)點:

  • 效率高
  • 靈活性強
  • 易于管理

網(wǎng)絡終端設備,例如主機、打印機、筆記本電腦、手機和AP,作為DHCP客戶端,向DHCP服務器請求分配相關網(wǎng)絡參數(shù)。DHCP服務器響應DHCP客戶端請求進行動態(tài)分配。

DHCP工作原理

DHCP客戶端首次接入網(wǎng)絡的工作原理

發(fā)現(xiàn)階段,即DHCP客戶端發(fā)現(xiàn)DHCP服務器的階段。

  • DHCP客戶端發(fā)送DHCP DISCOVER報文來發(fā)現(xiàn)DHCP服務器。DHCP DISCOVER報文中攜帶了客戶端的MAC地址、需要請求的參數(shù)列表選項、廣播標志位等信息。

??? 2. 提供階段,DHCP服務器提供網(wǎng)絡配置信息的階段。

  • 服務器接收到DHCP DISCOVER報文后,選擇跟接收DHCP DISCOVER報文接口的IP地址處于同一網(wǎng)段的地址池,并且從中選擇一個可用的IP地址,然后通過DHCP OFFER報文發(fā)送給DHCP客戶端。

??? 3. 選擇階段,即DHCP客戶端選擇IP地址的階段。

  • 如果有多個DHCP服務器向DHCP客戶端回應DHCP OFFER報文,則DHCP客戶端一般只接收第一個收到的DHCP OFFER報文,然后以廣播方式發(fā)送DHCP REQUEST報文,該報文中包含客戶端想選擇的DHCP服務器標識符和客戶端IP地址。

??? 4.確認階段,即DHCP服務器確認所分配IP地址的階段。

  • DHCP客戶端收到DHCP ACK報文,會廣播發(fā)送免費ARP報文,探測本網(wǎng)段是否有其他終端使用服務器分配的IP地址。(檢測是否有沖突)

在確認階段,兩種情況可能出現(xiàn)IP地址的沖突:

  • DHCP服務器收到DHCP DISCOVER報文時,給客戶端分配IP地址前會發(fā)送Ping探測如果能Ping通則標識該地址不可用,并選擇其他IP地址分配給客戶端。
  • DHCP客戶端獲取IP地址成功后,會立即發(fā)送免費ARP報文,如果收到響應,則發(fā)送DHCP DECLINE報文通知DHCP服務器該IP地址沖突,DHCP服務器標識該地址不可用,客戶端發(fā)送DHCP DISCOVER報文重新申請IP地址。

兩次檢測地址沖突,客戶端ARP免費報文,服務端ping探測

DHCP報文格式

重要字段說明:

  • Opop code):表示報文的類型,取值為12,含義如下:
    • 1:客戶端請求報。
    • 2:服務器響應報文。
  • Secsseconds):由客戶端填充,表示從客戶端開始獲得IP地址或IP地址續(xù)借后所使用了的秒數(shù),缺省值為3600s
  • Flags:客戶端請求服務器發(fā)送響應報文的形式,只有最高位有意義,其余15位置0最高位為0時請求發(fā)送單播響應,最高位為1時請求發(fā)送廣播響應。
  • Yiaddryour client ip address):表示服務器分配給客戶端的IP地址。當服務器進行DHCP響應時,將分配給客戶端的IP地址填入此字段。
  • Siaddrserver ip address):DHCP服務器的IP地址。
  • Chaddrclient hardware address):客戶端的MAC地址。
  • OptionsDHCP通過此字段包含了服務器分配給終端的配置信息。
    • DHCP報文中Options字段為可變長度字段,最多為312Byte,此字段包含了DHCP報文類型,服務器分配給終端的配置信息,如網(wǎng)關IP地址,DNS服務器的IP地址,客戶端可以使用IP地址的有效租期等信息。
    • Options字段由TypeLengthValue三部分組成。其中Type字段取值范圍1~255。常見的Options如下表所示:

?

Htype hardware type: 表示硬件地址的類型

Hlenhardware length: 表示硬件地址的長度。

Hopshops: 表示當前DHCP報文經(jīng)過的DHCP Relay數(shù)目該字段由客戶端設置為0,每經(jīng)過一個DHCP Relay時,該字段加1。此字段的作用是限制DHCP報文所經(jīng)過的DHCP Relay數(shù)目。

Xid:表示DHCP客戶端選取的隨機數(shù),使DHCP服務器的回復與DHCP客戶端的報文相關聯(lián)。

Snameserver host name: 表示客戶端獲取配置信息的服務器名字。此字段由DHCP服務器填寫,是可選的。如果填寫,必須是一個以0結(jié)尾的字符串。

Filefile name: 表示客戶端啟動DHCP相關配置的文件名。此字段由DHCP服務器填寫,隨著DHCP地址分配的同時下發(fā)至客戶端。本字段是可選的,如果填寫,必須是一個以0結(jié)尾的字符串。

DHCP的消息類型

DHCP報文通過Options選項中的Type=53來表示DHCP的報文類型。如下圖所示,Type=53Length=1Value取值從0108分別表示不同的DHCP報文類型

1-DHCP DISCOVER:DHCP客戶端首次登錄網(wǎng)絡時進行DHCP交互過程發(fā)送的第一個消息,用來尋找DHCP服務器。

2-DHCP OFFER:DHCP服務器用來響應DHCP DISCOVER消息,此消息攜帶了各種配置信息。???

3-DHCP REQUEST:DHCP客戶端廣播請求回應DHCP服務器OFFER消息;DHCP客戶端重啟廣播確認之前的IP地址等配置信息;續(xù)租。

4-DHCP DECLINE:當客戶端發(fā)現(xiàn)服務器分配給它的IP地址發(fā)生沖突時會通過發(fā)送此消息來通知服務器。

5-DHCP ACK:DHCP服務器對客戶端的DHCP REQUEST消息的確認響應消息。

6-DHCP NAK:服務器對客戶端的DHCP REQUEST消息的拒絕響應消息

7-DHCP RELEASE客戶端可通過發(fā)送此消息主動釋放服務器分配給它的IP地址。

8-DHCP INFORMDHCP客戶端獲取IP地址后,如果需要DHCP服務器獲取更為詳細的配置信息(網(wǎng)關地址、DNS服務器地址),則向DHCP服務器發(fā)送DHCP INFORM請求消息。

?

Options自定義選項字段介紹

除了標準協(xié)議中規(guī)定的字段選項外,還有部分選項內(nèi)容沒有統(tǒng)一規(guī)定,統(tǒng)稱為用戶自定義選項,例如Option 82和Option 43。

  • Option 82稱為中繼代理信息選項。
    • Option 82中可以包含最多255Sub-Option,若定義了Option 82,至少要定義一個Sub-Option
    • DHCP中繼或DHCP Snooping設備接收到DHCP客戶端發(fā)送給DHCP服務器的請求報文后,在該報文中添加Option 82并轉(zhuǎn)發(fā)給DHCP服務器。管理員可以從Option 82中獲得DHCP客戶端的信息,例如DHCP客戶端所連接交換機端口的VLAN ID、二層端口號、中繼設備的MAC地址等。
  • Option 43稱為廠商特定信息選項。
    • DHCP服務器和DHCP客戶端通過Option 43交換廠商特定的信息。當DHCP服務器接收到請求Option 43信息的DHCP請求報文(Option 55中帶有Option 43參數(shù))后,將在回復報文中攜帶Option 43,為DHCP客戶端分配廠商指定的信息。
    • WLAN組網(wǎng)中,AP作為DHCP客戶端,DHCP服務器可以為AP指定ACIP地址,以方便APAC建立連接。

目前option 82中常用的Sub-Option如下:

  • Sub-Option 1:為代理id(即circuit id)子項。子選項通常在DHCP中繼設備上配置,定義了在傳輸報文的時候要攜帶DHCP客戶端所連接交換機端口的vlan-id及二層端口號。通常Sub-Option 1Sub-Option 2子選項要共同使用來標識DHCP源端的信息。
  • Sub-Option 2:代理遠程id(即remote?id)子項。該子選項也通常在DHCP中繼設備上配置,定義了在傳輸報文的時候要攜帶中繼設備的mac地址信息
  • Sub-Option 5:為鏈路選擇(link selection)子項,該選項中包含了DHCP中繼添加的ip地址。這樣DHCP server在分配ip地址給DHCP客戶端的時候就可以分配與該地址同網(wǎng)段的ip地址。

Option 43應用舉例

在WLAN三層組網(wǎng)中,當AP上線時,需要獲取AC的IP地址,并與AC之間建立CAPWAP隧道。

AP的IP地址通過DHCP服務器分配,當AC的IP地址與AP不在同一個廣播域,AP無法通過廣播的方式獲取AC的IP地址,則CAPWAP隧道無法建立成功。

AP通過DHCP報文中的Option 43選項字段獲取AC的IP地址,當AP獲取AC的IP地址后,可以進一步完成CAPWAP隧道的建立,從而實現(xiàn)AP上線。

DHCP地址續(xù)租

DHCP客戶端根據(jù)IP地址的剩余租期的不同而產(chǎn)生不同形式的續(xù)租請求。

當租期達到50%T1時,DHCP客戶端會自動以單播的方式向DHCP服務器發(fā)送DHCP REQUEST報文,請求更新IP地址租期。如果收到DHCP服務器回應的DHCP ACK報文,則租期更新成功。

當租期達87.5%T2)時,如果仍未收到DHCP服務器的應答,DHCP客戶端會自動以廣播的方式向DHCP服務器發(fā)送DHCP REQUEST報文,請求更新IP地址租期。如果收到DHCP服務器回應的DHCP ACK報文,則租期更新成功。

如果租期時間到時都沒有收到服務器的回應,客戶端停止使用此IP地址重新發(fā)送DHCP DISCOVER報文請求新的IP地址。

?

DHCP服務器給每個分配給客戶端的IP地址定義一個使用期限,該使用期限被稱為租期。在租期到期前,DHCP客戶端如果仍需要使用該IP地址,可以請求延長租期;如果不需要,可以主動釋放該IP地址。在沒有其他空閑地址可用的情況下,DHCP服務器會把客戶端主動釋放的IP地址分配給其他客戶端。

DHCP客戶端無論在T1還是T2時刻發(fā)送DHCP REQUEST報文后,如果收到DHCP NAK報文,則重新發(fā)送DHCP DISCOVER報文請求新的IP地址。

客戶端在租期時間到之前,如果用戶不想使用分配的IP地址(例如客戶端網(wǎng)絡位置需要變更),會觸發(fā)DHCP客戶端向DHCP服務器發(fā)送DHCP RELEASE報文,通知DHCP服務器釋放IP地址的租期。DHCP服務器會保留這個DHCP客戶端的配置信息,將IP地址列為曾經(jīng)分配過的IP地址中,以便后續(xù)重新分配給該客戶端或其他客戶端。客戶端可以通過發(fā)送DHCP INFORM報文向服務器請求更新配置信息。

思考:為什么每次電腦被分配的IP地址都是同一個呢?

DHCP客戶端重用曾經(jīng)使用過的地址

DHCP客戶端非首次接入網(wǎng)絡時,可以重用曾經(jīng)使用過的地址。例如,網(wǎng)絡中的主機作為DHCP客戶端,在關機再開機的過程中,需要重新獲取相關網(wǎng)絡參數(shù),則可以請求分配曾經(jīng)使用過的IP地址。

  • 選擇階段
    • 客戶端廣播發(fā)送包含前一次分配的IP地址的DHCP REQUEST報文,報文中的Option 50(請求的IP地址選項)字段填入曾經(jīng)使用過的IP址。
  • 確認階段
    • DHCP服務器收到DHCP REQUEST報文后,根據(jù)DHCP REQUEST報文中攜帶的MAC地址來查找有沒有相應的租約記錄。如果有則返回DHCP ACK報文,通知DHCP客戶端可以繼續(xù)使用這個IP地址,如果沒有租約記錄,則不響應。
  • DHCP分配IP地址順序

    DHCP服務器按照如下次序為客戶端選擇IP地址:

    • DHCP服務器的數(shù)據(jù)庫中與客戶端MAC地址靜態(tài)綁定的IP地址。
    • 客戶端以前曾經(jīng)使用過的IP地址,即客戶端發(fā)送的請求報文中請求IP地址選項的地址。
    • DHCP地址池中,順序查找可供分配的空閑IP地址,最先找到的IP地址。
    • 如果在DHCP地址池中未找到可供分配的空閑IP地址,則依次查詢超過租期、發(fā)生沖突的IP地址,如果找到可用的IP地址,則進行分配,否則報告錯誤。

    ?

    DHCP Relay

    隨著網(wǎng)絡規(guī)模的不斷擴大,網(wǎng)絡設備不斷增多,企業(yè)內(nèi)不同的用戶可能分布在不同的網(wǎng)段,一臺DHCP服務器在正常情況下無法滿足多個網(wǎng)段的地址分配需求。如果還需要通過DHCP服務器分配IP地址,則需要跨網(wǎng)段發(fā)送DHCP報文。

    DHCP RelayDHCP中繼,它是為解決DHCP服務器和DHCP客戶端不在同一個廣播域而提出的,提供了對DHCP廣播報文的中繼轉(zhuǎn)發(fā)功能,能夠把DHCP客戶端的廣播報文“透明地”傳送到其它廣播域的DHCP服務器上,同樣也能夠把DHCP服務器端的應答報文“透明地”傳送到其它廣播域的DHCP客戶端。

    DHCP Relay報文格式

    DHCP Relay主要負責轉(zhuǎn)發(fā)DHCP客戶端與DHCP服務器之間的DHCP報文,所以DHCP Relay的報文格式只是把DHCP的報文部分字段做了相應的修改,報文格式?jīng)]有發(fā)生變化,如下圖所示:

    Hops:表示當前的DHCP報文經(jīng)過的DHCP中繼的數(shù)目。該字段由客戶端或服務器設置為0每經(jīng)過一個DHCP中繼時,該字段加1

    Giaddr(gateway ip address)表示第一個DHCP中繼的IP地址。當客戶端發(fā)出DHCP請求時,第一個DHCP中繼在將DHCP請求報文轉(zhuǎn)發(fā)給DHCP服務器時,會把自己的IP地址填入此字段。

    Hops字段的作用是限制DHCP報文所經(jīng)過的DHCP中繼數(shù)目。服務器和客戶端之間的DHCP中繼數(shù)目不能超過16也就是Hops值不能大于16,否則DHCP報文將被丟棄。

    Giaddr字段,dhCP服務器會根據(jù)此字段來判斷出客戶端所在的網(wǎng)段地址,從而選擇合適的地址池,為客戶端分配該網(wǎng)段的IP地址。服務器還會根據(jù)此地址將響應報文發(fā)送給此DHCP中繼,再由DHCP中繼將此報文轉(zhuǎn)發(fā)給客戶端。若在到達DHCP服務器前經(jīng)過了多個DHCP中繼,該字段作為客戶端所在的網(wǎng)段的標記,填充了第一個DHCP中繼的IP地址后不會再變更,只是每經(jīng)過一個DHCP中繼,hops字段的數(shù)值會加1

    DHCP Relay工作原理

    有中繼場景時DHCP客戶端首次接入網(wǎng)絡的工作原理:

    發(fā)現(xiàn)階段:DHCP中繼接收到DHCP客戶端廣播發(fā)送DHCP DISCOVER報文后,通過路由轉(zhuǎn)發(fā)將DHCP報文單播發(fā)送到DHCP服務器或下一跳中繼

    提供階段:DHCP服務器根據(jù)DHCP DISCOVER報文中的Giaddr字段選擇地址池為客戶端分配相關網(wǎng)絡參數(shù)DHCP中繼收到DHCP OFFER報文后,以單播或組播方式發(fā)送給DHCP Client

    選擇階段:中繼接收到來自客戶端的DHCP REQUEST報文的處理過程同“發(fā)現(xiàn)階段”。

    確認階段:中繼接收到來自服務器的DHCP ACK報文的處理過程同“提供階段”。

    ?

    1.DHCP中繼收到DHCP DISCOVER報文后,處理規(guī)則為:

    • 檢查DHCP報文中的Hops字段,如果大于16,則丟棄DHCP報文;否則,Hops字段加1(表明經(jīng)過一次DHCP中繼),并繼續(xù)下面的操作。
    • 檢查DHCP報文中的Giaddr字段。如果是0,將Giaddr字段設置為接收DHCP DISCOVER報文的接口IP地址。如果不是0,則不修改該字段,繼續(xù)下面的操作。
    • DHCP報文的目的IP地址(開始為廣播地址)改為DHCP服務器或下一跳中繼的IP地址,源地址改為中繼連接客戶端的接口地址,通過路由轉(zhuǎn)發(fā)將DHCP報文單播發(fā)送到DHCP服務器或下一跳中繼。

    2.DHCP服務器接收到DHCP DISCOVER報文后,選擇與報文中Giaddr字段為同一網(wǎng)段的地址池,并為客戶端分配IP地址等參數(shù),然后向Giaddr字段標識的DHCP中繼單播發(fā)送DHCP OFFER報文,DHCP中繼收到DHCP OFFER報文后,會進行如下處理:

    • 檢查報文中的Giaddr字段,如果不是接口的地址,則丟棄該報文;否則,繼續(xù)下面的操作。
    • DHCP中繼檢查報文的廣播標志位(flag)。如果廣播標志位為1,則將DHCP OFFER報文廣播發(fā)送給DHCP客戶端;否則將DHCP OFFER報文單播發(fā)送給DHCP客戶端。

    DHCP配置

    基于全局地址池配置

    基于接口配置

    ?

    dhcp中繼

    DHCP Snooping

    ?

    總結(jié)

    以上是生活随笔為你收集整理的华为数通笔记-DHCP的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。