IPCP

IPCP

計算機網路中,網際協定控制協定IPCP)是一個網路控制協定,用來在點對點協定連線上建立和配置網際協定。IPCP負責在點對點連線的兩端配置、使能和去使能IP協定模組。IPCP使用與鏈路控制協定相同的報文交換機制。IPCP報文在PPP達到網路層協定階段之前不會進行互動,任何在此階段前收到的IPCP報文都應靜默丟棄。

基本介紹

  • 中文名:IPCP
  • 外文名:Internet Protocol Control Protocol
  • 解釋IP控制協定
  • 主要組件數:三個
  • 擴寫:IP Control Protocol
協定作用,協定基本原理,IPCP協定幀格式,IPCP協定工作過程,PPP協定中IPCP協商機制實驗,環境搭建,實驗過程,總結,IPCP和LCP的區別,配置選項,

協定作用

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

協定基本原理

IPCP協定幀格式

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

IPCP協定工作過程

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

PPP協定中IPCP協商機制實驗

環境搭建

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

實驗過程

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

總結

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

IPCP和LCP的區別

IPCP和LCP基本相同,除了以下幾點:

配置選項

IPCP配置選項用於IP參數的協商。它使用與LCP一樣的選項定義格式。下面介紹兩個配置選項。
· IP位址(IP-Address)選項
該選項提供協商在鏈路本地端使用的IP位址的方法。它允許Confugure-Request包的傳送方聲明要求哪個IP位址,或者請求對方提供信息。對方能通過NAKing選項提供此信息,返回一個有效的IP位址。
如果必須進行關於遠端IP位址的協商,而對方不在Configure-Request包中提供此選項,此選項應該被附加到Configure-Nak包中。給出的IP位址值必須接受為遠端的IP位址,或者指示一個對方提供此信息的請求。
在默認情況下,不分配IP位址。
IP位址配置選項格式如圖2-16所示。類型和長度欄位各占1位元組,值分別為3和6。IP位址占4位元組,是Configure-Request傳送方要求的本地地址。如果4位元組都是0,則表示請求對方提供IP位址信息。默認IP位址不分配。IP位址選項格式如下:
IPCP
圖2-16
該配置選項提供協商使用的特定壓縮協定的方法。在默認情況下,壓縮不使用。該配置選項格式如圖2-17所示。類型和長度欄位各占1位元組,類型值為3,長度不小於4位元組。IP壓縮協定選項格式如下:
IPCP
圖2-17
IP壓縮協定欄位占2位元組,用於指示請求的壓縮協定。該欄位的值總是與PPP數據鏈路層協定欄位值(同樣壓縮協定)相同。目前分配的值為十六進制0x002d,表示Van JacobsonCompressed TCP/IP,這是用於網路的一組通信協定。
至於數據欄位,屬於可變長欄位,可以是0,也可以是由特定壓縮協定決定的更多的位元組的附加數據。
Van Jacobson TCP/IP首部壓縮技術可將TCP/IP首部縮小到3位元組,可以顯著改進低速串列線的通信。上述IP壓縮協定配置選項被用來指定收到壓縮檔的能力。如果要求雙向壓縮,鏈路的每一端都必須獨立地請求該選項。
傳送IP包時PPP協定欄位可以設定為下列值(用十六進制表示)。
· 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首部壓縮選項格式如下:
IPCP
圖2-18
R1配置:
PPP通信中IPCP的動態態協商配置如下:
IPCP
第一個Configuration Request是客戶端傳送的IP位址和DNS地址置零的請求數據報:
第一個Configuration Request報文內容如下:
IPCP
Configuration Nak中是伺服器分配給客戶端的IP位址和本端IP做網關的數據報:
Configuration Nak報文內容如下:
IPCP
第二個Configuration Request是客戶端傳送的含本端IP位址和DNS地址的請求數據報:
第二個Configuration Request報文內容如下:
IPCP
伺服器收到後傳送Ack配置完成。

總結

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

IPCP和LCP的區別

IPCP和LCP基本相同,除了以下幾點:

配置選項

IPCP配置選項用於IP參數的協商。它使用與LCP一樣的選項定義格式。下面介紹兩個配置選項。
· IP位址(IP-Address)選項
該選項提供協商在鏈路本地端使用的IP位址的方法。它允許Confugure-Request包的傳送方聲明要求哪個IP位址,或者請求對方提供信息。對方能通過NAKing選項提供此信息,返回一個有效的IP位址。
如果必須進行關於遠端IP位址的協商,而對方不在Configure-Request包中提供此選項,此選項應該被附加到Configure-Nak包中。給出的IP位址值必須接受為遠端的IP位址,或者指示一個對方提供此信息的請求。
在默認情況下,不分配IP位址。
IP位址配置選項格式如圖2-16所示。類型和長度欄位各占1位元組,值分別為3和6。IP位址占4位元組,是Configure-Request傳送方要求的本地地址。如果4位元組都是0,則表示請求對方提供IP位址信息。默認IP位址不分配。IP位址選項格式如下:
IPCP
圖2-16
該配置選項提供協商使用的特定壓縮協定的方法。在默認情況下,壓縮不使用。該配置選項格式如圖2-17所示。類型和長度欄位各占1位元組,類型值為3,長度不小於4位元組。IP壓縮協定選項格式如下:
IPCP
圖2-17
IP壓縮協定欄位占2位元組,用於指示請求的壓縮協定。該欄位的值總是與PPP數據鏈路層協定欄位值(同樣壓縮協定)相同。目前分配的值為十六進制0x002d,表示Van JacobsonCompressed TCP/IP,這是用於網路的一組通信協定。
至於數據欄位,屬於可變長欄位,可以是0,也可以是由特定壓縮協定決定的更多的位元組的附加數據。
Van Jacobson TCP/IP首部壓縮技術可將TCP/IP首部縮小到3位元組,可以顯著改進低速串列線的通信。上述IP壓縮協定配置選項被用來指定收到壓縮檔的能力。如果要求雙向壓縮,鏈路的每一端都必須獨立地請求該選項。
傳送IP包時PPP協定欄位可以設定為下列值(用十六進制表示)。
· 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首部壓縮選項格式如下:
IPCP
圖2-18

相關詞條

熱門詞條

聯絡我們