PPP協(xié)議
點(diǎn)到點(diǎn)協(xié)議PPP是一個(gè)被廣泛使用的廣域網(wǎng)協(xié)議,跨過(guò)同步和異步電路實(shí)現(xiàn)路由器到路由器(router-to-router)和主機(jī)到網(wǎng)絡(luò)(host-to-network)的點(diǎn)到點(diǎn)連接。PPP協(xié)議提供了一整套方案來(lái)解決鏈路建立、維護(hù)、拆除、上層協(xié)議協(xié)商、認(rèn)證等問(wèn)題。
PPP協(xié)議包含三個(gè)部分:1、鏈路控制協(xié)議LCP:負(fù)責(zé)創(chuàng)建、維護(hù)、終止一次物理連接。2、網(wǎng)絡(luò)控制協(xié)議NCP:NCP是一組協(xié)議,負(fù)責(zé)解決物理連接上運(yùn)行什么網(wǎng)絡(luò)協(xié)議,以及解決上層網(wǎng)絡(luò)協(xié)議發(fā)生的問(wèn)題。NCP控制協(xié)議包括IPCP、IPv6CP、MPLSCP、OSINLCP、BCP等,IPCP(支持IPv4)是必須要進(jìn)行協(xié)商的,其它的NCP協(xié)議可根據(jù)實(shí)際需要來(lái)選擇。3、認(rèn)證協(xié)議:最常用的是密碼驗(yàn)證協(xié)議PAP和挑戰(zhàn)握手驗(yàn)證協(xié)議CHAP。PAP和CHAP通常被用于在PPP封裝的串行線路上提供安全性認(rèn)證。PAP采用二次握手驗(yàn)證,用戶名和密碼在鏈路上是以明文方式傳輸?shù)摹AP的認(rèn)證過(guò)程如下:1、被驗(yàn)證方發(fā)送用戶名和密碼到驗(yàn)證方。2、驗(yàn)證方根據(jù)用戶配置查看此用戶名和密碼是否正確,正確則認(rèn)證通過(guò),不正確則認(rèn)證不通過(guò)。CHAP要比PAP安全得多,它使用三次握手周期性的驗(yàn)證遠(yuǎn)端節(jié)點(diǎn)身份,CHAP的認(rèn)證過(guò)程如下:1、驗(yàn)證方發(fā)送一些隨機(jī)產(chǎn)生的報(bào)文到被驗(yàn)證方。2、被驗(yàn)證方用自己的口令和MD5算法對(duì)該隨機(jī)報(bào)文進(jìn)行加密,將生成的密文發(fā)回驗(yàn)證方。3、驗(yàn)證方用自己保存的被驗(yàn)證方口令和MD5算法對(duì)原隨機(jī)報(bào)文加密,與被驗(yàn)證方的密文比較,相同則認(rèn)證通過(guò),不同則認(rèn)證不通過(guò)。
封裝:一種封裝多協(xié)議數(shù)據(jù)報(bào)的方法。PPP 封裝提供了不同網(wǎng)絡(luò)層協(xié)議同時(shí)在同一鏈路傳輸?shù)亩嗦窂?fù)用技術(shù)。PPP 封裝精心設(shè)計(jì),能保持對(duì)大多數(shù)常用硬件的兼容性,克服了SLIP不足之處的一種多用途、點(diǎn)到點(diǎn)協(xié)議,它提供的WAN數(shù)據(jù)鏈接封裝服務(wù)類似于LAN所提供的封閉服務(wù)。所以,PPP不僅僅提供幀定界,而且提供協(xié)議標(biāo)識(shí)和位級(jí)完整性檢查服務(wù)。鏈路控制協(xié)議(LCP):一種擴(kuò)展鏈路控制協(xié)議,用于建立、配置、測(cè)試和管理數(shù)據(jù)鏈路連接。網(wǎng)絡(luò)控制協(xié)議(NCP):協(xié)商該鏈路上所傳輸?shù)臄?shù)據(jù)包格式與類型,建立、配置不同的網(wǎng)絡(luò)層協(xié)議;配置:使用鏈路控制協(xié)議的簡(jiǎn)單和自制機(jī)制。該機(jī)制也應(yīng)用于其它控制協(xié)議,例如:網(wǎng)絡(luò)控制協(xié)議(NCP)。為了建立點(diǎn)對(duì)點(diǎn)鏈路通信,PPP 鏈路的每一端,必須首先發(fā)送 LCP 包以便設(shè)定和測(cè)試數(shù)據(jù)鏈路。在鏈路建立,LCP 所需的可選功能被選定之后,PPP 必須發(fā)送 NCP 包以便選擇和設(shè)定一個(gè)或更多的網(wǎng)絡(luò)層協(xié)議。一旦每個(gè)被選擇的網(wǎng)絡(luò)層協(xié)議都被設(shè)定好了,來(lái)自每個(gè)網(wǎng)絡(luò)層協(xié)議的數(shù)據(jù)報(bào)就能在鏈路上發(fā)送了。鏈路將保持通信設(shè)定不變,直到有 LCP 和 NCP 數(shù)據(jù)包關(guān)閉鏈路,或者是發(fā)生一些外部事件的時(shí)候(如,休止?fàn)顟B(tài)的定時(shí)器期滿或者網(wǎng)絡(luò)管理員干涉)。應(yīng) 用:假設(shè)同樣是在Windows 98,并且已經(jīng)創(chuàng)建好“撥號(hào)連接”。那么可以通過(guò)下面的方法來(lái)設(shè)置PPP協(xié)議:首先,打開“撥號(hào)連接”屬性,同樣選擇“服務(wù)器類型”選項(xiàng)卡;然后,選擇默認(rèn)的“PPP:Internet,Windows NT Server,Windows 98”,在高級(jí)選項(xiàng)中可以設(shè)置該協(xié)議其它功能選項(xiàng);最后,單擊“確定”按鈕即可。
當(dāng)用戶撥號(hào)接入 ISP 時(shí),路由器的調(diào)制解調(diào)器對(duì)撥號(hào)做出確認(rèn),并建立一條物理連接(底層up)。PC 機(jī)向路由器發(fā)送一系列的 LCP 分組(封裝成多個(gè) PPP 幀)。這些分組及其響應(yīng)選擇一些 PPP 參數(shù),和進(jìn)行網(wǎng)絡(luò)層配置(此前如有PAP或CHAP驗(yàn)證先要通過(guò)驗(yàn)證),NCP 給新接入的 PC機(jī)分配一個(gè)臨時(shí)的 IP 地址,使 PC 機(jī)成為因特網(wǎng)上的一個(gè)主機(jī)。通信完畢時(shí),NCP 釋放網(wǎng)絡(luò)層連接,收回原來(lái)分配出去的 IP 地址。接著,LCP 釋放數(shù)據(jù)鏈路層連接。最后釋放的是物理層的連接。