複製鏈接
請複製以下鏈接發送給好友

IPCP

鎖定
計算機網絡中,網際協議控制協議IPCP)是一個網絡控制協議,用來在點對點協議連接上建立和配置網際協議。IPCP負責在點對點連接的兩端配置、使能和去使能IP協議模塊。IPCP使用與鏈路控制協議相同的報文交換機制。IPCP報文在PPP達到網絡層協議階段之前不會進行交互,任何在此階段前收到的IPCP報文都應靜默丟棄。
中文名
IPCP
外文名
Internet Protocol Control Protocol
解    釋
IP控制協議
主要組件數
三個
擴    寫
IP Control Protocol

IPCP協議作用

RFC 1332“The PPP Internet Protocol Control Protocol(IPCP)”規定了IPCP負責配置、啓用和停用在點對點鏈路兩端的IP協議模塊。它使用與LCP相同的包交換機制。只有在PPP協議到達網絡層協議階段才能交換IPCP包,網絡協議層階段之前收到的任何IPCP包都要被拋棄。 [1] 

IPCP協議基本原理

IPCPIPCP協議幀格式

IPCP協議屬於網絡控制協議中應用最多的協議。當鏈路配置到達網絡層的協議階段之後才可對IPCP進行協商。由於IPCP封裝在PPP幀的數據域中,幀格式如下: [2] 
圖1 圖1

IPCPIPCP協議工作過程

根據兩端設備的配置不同,IPCP協商過程可分為靜態協商和動態協商。
靜態協商,即不協商。點對點通信設備的兩端已經配置好了IP地址,當到達網絡層協商階段時,通信雙方告知對方自身的IP地址即可。如圖2(a)所示。 [2] 
圖2IPCP協議工作過程 圖2IPCP協議工作過程
動態協商,即動態獲取IP地址的協商。服務器端手動方式配置IP地址,並需要給客户端分配IP地址,客户端則動態獲取IP地址。這種情況下客户端需要兩次發送Config-Request報文,才能完成協商。首先客户端發送IP和DNS均為零的Con⁃figure數據報,服務器收到後發送攜帶動態分配的IP地址和以服務器的IP地址為網關的Nak數據報,然後客户端再次以收到的信息發送Configure數據報,服務器回送Ack則配置成功。如圖2(b)所示。 [2] 

IPCPPPP協議中IPCP協商機制實驗

IPCP環境搭建

實驗設備和連接如圖3所示。本實驗使用GNS3,把兩台Router c3600路由器的Serial接口連接起來,路由器分別命名為R1、R2。實驗環境路由拓撲圖如下: [2] 
圖3 圖3

IPCP實驗過程

以點到點通信協議中PAP認證過程為例,來進行網絡控制協議中IPCP的配置。 [2] 
 
靜態協商
R1配置:
PPP通信中IPCP的靜態協商配置如下: [2] 
PPP通信中IPCP的靜態協商配置 PPP通信中IPCP的靜態協商配置
第一個Configuration Request是客户端發送的攜帶本端IP的數據報:
第一個Configuration Request報文內容如下: [2] 
第一個Configuration Request報文內容 第一個Configuration Request報文內容
第二個Configuration Request是服務器發送的含有本端IP的數據報:
第二個Configuration Request報文內容如下: [2] 
第二個Configuration Request報文內容 第二個Configuration Request報文內容
然後雙方分別發送Ack包來回應對端的配置請求。
動態協商
R1配置:
PPP通信中IPCP的動態態協商配置如下: [2] 
PPP通信中IPCP的動態態協商配置 PPP通信中IPCP的動態態協商配置
第一個Configuration Request是客户端發送的IP地址和DNS地址置零的請求數據報:
第一個Configuration Request報文內容如下: [2] 
第一個Configuration Request報文內容 第一個Configuration Request報文內容
Configuration Nak中是服務器分配給客户端的IP地址和本端IP做網關的數據報:
Configuration Nak報文內容如下: [2] 
Configuration Nak報文內容 Configuration Nak報文內容
第二個Configuration Request是客户端發送的含本端IP地址和DNS地址的請求數據報:
第二個Configuration Request報文內容如下: [2] 
第二個Configuration Request報文內容 第二個Configuration Request報文內容
服務器收到後發送Ack配置完成。

IPCP總結

本實驗,在點對點的通信方式中,IPCP完成了IP協議的協商和啓停控制。通過使用Wireshark抓包,可以清楚地觀察數據交換信息,採用協議分析的方法對IPCP協商過程進行分析,加深了對理論知識的理解,對PPP協議的理解更透徹。 [2] 

IPCPIPCP和LCP的區別

IPCP和LCP基本相同,除了以下幾點: [1] 
  • · 數據鏈路層協議(Data Link Layer Protocol)字段:IPCP包封裝在PPP數據鏈路層幀的信息字段中,其協議字段值為十六進制0x8021,表示類型為IP控制協議。 [1] 
  • · 代碼(Code)字段:IPCP包類型只是LCP包類型的的一個子集,它只使用代碼為1~7的包類型(Configure-Request、Configure-Ack、Configure-Nak、Configure-Reject、Terminate-Request、Terminate-Ack 和Code-Reject),使用其他代碼不被承認並且導致Code-Rejects。· [1] 
  • 超時(Timeouts):在PPP 協議到達網絡層的協議階段之前不會交換IPCP 包。在等待Configure-Ack包或其他響應的定時器超時之前,應當做好等待認證和線路質量監測完成的準備。建議只有在用户干預或可配置的時間量之後才放棄。·
  • 配置選項類型(Configuration Option Types):IPCP擁有自己獨有的配置選項集。 [1] 
  • 在傳輸IP包之前,PPP必須到達網絡層協議階段,而且IPCP必須變成Opened狀態。IP包也封裝在PPP數據鏈路層幀的信息字段中,其協議字段值為十六進制0x0021,表示類型為IP(InternetProtocol)。 [1] 
  • 通過PPP鏈路傳送的IP包的最大長度與PPP數據鏈路層幀的信息字段中的最大長度相同。過大的IP數據報必須分片傳輸。如果系統要避免分片和重組,它應該使用TCP的最大分片尺寸(Maximum Segment Size)選項和MTU發現機制。 [1] 

IPCP配置選項

IPCP配置選項用於IP參數的協商。它使用與LCP一樣的選項定義格式。下面介紹兩個配置選項。 [1] 
· IP地址(IP-Address)選項
該選項提供協商在鏈路本地端使用的IP地址的方法。它允許Confugure-Request包的發送方聲明要求哪個IP地址,或者請求對方提供信息。對方能通過NAKing選項提供此信息,返回一個有效的IP地址。 [1] 
如果必須進行關於遠端IP地址的協商,而對方不在Configure-Request包中提供此選項,此選項應該被附加到Configure-Nak包中。給出的IP地址值必須接受為遠端的IP地址,或者指示一個對方提供此信息的請求。
在默認情況下,不分配IP地址。
IP地址配置選項格式如圖2-16所示。類型和長度字段各佔1字節,值分別為3和6。IP地址佔4字節,是Configure-Request發送方要求的本地地址。如果4字節都是0,則表示請求對方提供IP地址信息。默認IP地址不分配。IP地址選項格式如下: [1] 
圖2-16 圖2-16
  • · IP壓縮協議(IP-Compression-Protocol)
該配置選項提供協商使用的特定壓縮協議的方法。在默認情況下,壓縮不使用。該配置選項格式如圖2-17所示。類型和長度字段各佔1字節,類型值為3,長度不小於4字節。IP壓縮協議選項格式如下: [1] 
圖2-17 圖2-17
IP壓縮協議字段佔2字節,用於指示請求的壓縮協議。該字段的值總是與PPP數據鏈路層協議字段值(同樣壓縮協議)相同。目前分配的值為十六進制0x002d,表示Van JacobsonCompressed TCP/IP,這是用於網絡的一組通信協議。 [1] 
至於數據字段,屬於可變長字段,可以是0,也可以是由特定壓縮協議決定的更多的字節的附加數據。 [1] 
  • Van Jacobson TCP/IP首部壓縮
Van Jacobson TCP/IP首部壓縮技術可將TCP/IP首部縮小到3字節,可以顯著改進低速串行線的通信。上述IP壓縮協議配置選項被用來指定收到壓縮包的能力。如果要求雙向壓縮,鏈路的每一端都必須獨立地請求該選項。
傳送IP包時PPP協議字段可以設置為下列值(用十六進制表示)。 [1] 
· 0x0021:典型IP。IP協議承載的不是TCP,或是分片的包,或沒有壓縮。
· 0x002d:壓縮TCP。TCP/IP首部由壓縮首部替換。
· 0x002f:未壓縮TCP。IP協議域被時間片標識符替換。
用於協商Van Jacobson TCP/IP首部壓縮的IP壓縮協議配置選項格式如圖2-18所示。其中Max-Slot-ID(最大時間片ID)和Comp-Slot-Id(壓縮時間片ID)各佔1字節。
Van Jacobson TCP/IP首部壓縮選項格式如下: [1] 
圖2-18 圖2-18
參考資料
  • 1.    林成浴.TCP/IP協議及其應用:人民郵電出版社,2013-07:2.5.6
  • 2.    山東科技大學信息科學與工程學院. 《電腦知識與技術》 2016年第17期 P29-31頁:無,2016年:P29-31頁