国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

PPP協(xié)議仿真實(shí)驗(yàn)分析

2013-01-04 03:52曹雪峰許勝男
關(guān)鍵詞:網(wǎng)絡(luò)層用戶名IP地址

曹雪峰,許勝男

(1.河北民族師范學(xué)院 數(shù)學(xué)與計(jì)算機(jī)系,河北 承德 067000 2.河北民族師范學(xué)院 信息中心,河北 承德 067000)

1 引言

點(diǎn)到點(diǎn)協(xié)議(Point to Point Protocol,PPP)提供了一種在點(diǎn)到點(diǎn)的鏈路上封裝多協(xié)議數(shù)據(jù)報(bào)(IP、IPX等)的標(biāo)準(zhǔn)方法,它不僅支持物理層同步和異步傳輸;鏈路的配置;IP地址的動(dòng)態(tài)分配和管理;而且還支持多種配置參數(shù)選項(xiàng)的協(xié)商。PPP協(xié)議在廣域網(wǎng)和嵌入式系統(tǒng)中有廣泛應(yīng)用,這些都使得我們有必要了解和掌握PPP協(xié)議的工作原理和運(yùn)行機(jī)制[1-2]。學(xué)習(xí)計(jì)算機(jī)網(wǎng)絡(luò)協(xié)議的最好方法,就是通過對(duì)網(wǎng)絡(luò)中捕獲報(bào)文的分析,理解協(xié)議的報(bào)文格式、協(xié)議的工作原理和交互過程。PPP協(xié)議運(yùn)行在設(shè)備的串口,無法用Wireshark等協(xié)議分析軟件捕獲報(bào)文,不能通過捕獲報(bào)文的方法進(jìn)行協(xié)議分析[3]。思科模擬軟件GNS3是一款開源的網(wǎng)絡(luò)模擬軟件,適用于多種操作系統(tǒng),它可以利用Wireshark來捕獲虛擬網(wǎng)絡(luò)拓?fù)渲写谏贤ㄟ^的報(bào)文,從而使通過對(duì)報(bào)文分析來學(xué)習(xí)PPP協(xié)議成為可能[4]。

2 PPP協(xié)議的基本原理

2.1 PPP協(xié)議的組成

PPP協(xié)議有三個(gè)組成部分[5]:

⑴一個(gè)將IP數(shù)據(jù)報(bào)封到串行鏈路的方法。PPP既支持異步鏈路,也支持面向比特的同步鏈路。

⑵一個(gè)用來建立、配置和測試數(shù)據(jù)鏈路的鏈路控制協(xié)議 LCP(Link Control Protocol)。通信的雙方可協(xié)商一些選項(xiàng)。

⑶ 一套網(wǎng)絡(luò)控制協(xié)議NCP(Network Control Protocol),支持不同的網(wǎng)絡(luò)層協(xié)議,如IP、IPX等。當(dāng)點(diǎn)到點(diǎn)的兩端進(jìn)行NCP參數(shù)配置協(xié)商時(shí),主要是用來確定通信雙方的網(wǎng)絡(luò)層地址。

2.2 PPP協(xié)議工作過程

在點(diǎn)到點(diǎn)鏈路的配置和維護(hù)過程中,PPP需經(jīng)歷以下幾個(gè)階段:

⑴鏈路不可用階段

也稱為物理層不可用階段,PPP鏈路都需從這個(gè)階段開始和結(jié)束。往往在實(shí)際過程中這個(gè)階段所停留的時(shí)間是很短的,僅僅是檢測到對(duì)方設(shè)備的存在。

⑵鏈路建立階段

是PPP協(xié)議最關(guān)鍵和最復(fù)雜的階段。該階段主要是發(fā)送一些LCP配置報(bào)文來配置數(shù)據(jù)鏈路,這些參數(shù)不包括網(wǎng)絡(luò)層協(xié)議所需的參數(shù)。當(dāng)完成配置報(bào)文的交換后,則會(huì)繼續(xù)向下一個(gè)階段躍遷,下一個(gè)階段既可是認(rèn)證階段,也可是網(wǎng)絡(luò)層協(xié)議階段。

⑶認(rèn)證階段

多數(shù)情況下鏈路兩端設(shè)備需要經(jīng)過認(rèn)證后才進(jìn)入到網(wǎng)絡(luò)層協(xié)議階段,默認(rèn)情況下鏈路兩端的設(shè)備是不進(jìn)行認(rèn)證的。在認(rèn)證階段支持口令認(rèn)證協(xié)議(Password Authentication Protocol,PAP)和挑戰(zhàn)握手認(rèn)證協(xié)議(Challenge Hand Authentication Protocol,CHAP)兩種認(rèn)證方式,認(rèn)證方式的選擇是依據(jù)在鏈路建立階段雙方進(jìn)行協(xié)商的結(jié)果。通過認(rèn)證進(jìn)入網(wǎng)絡(luò)層協(xié)議階段,否則進(jìn)入鏈路終止階段。

⑷網(wǎng)絡(luò)層協(xié)議階段

一旦PPP完成了前面幾個(gè)階段,每種網(wǎng)絡(luò)層協(xié)議會(huì)通過各自相應(yīng)的網(wǎng)絡(luò)控制協(xié)議進(jìn)行配置,在這個(gè)階段所需的一些配置參數(shù)協(xié)商完后,就可以進(jìn)行網(wǎng)絡(luò)層的通信。NCP協(xié)議主要包括IPCP、IPXCP等。

⑸鏈路終止階段

PPP能在任何時(shí)候終止鏈路。當(dāng)載波丟失、認(rèn)證失敗和管理員人為關(guān)閉鏈路等均會(huì)導(dǎo)致鏈路終止。

3 仿真實(shí)驗(yàn)分析

3.1 組建網(wǎng)絡(luò)并捕獲報(bào)文

按圖1所示網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)搭建網(wǎng)絡(luò),其中R1、R2為C3600系列路由器[6]。R1路由器s0/0端口地址為212.1.100.1/24,同時(shí)為客戶端分配IP地址范圍為 212.1.100.2~212.1.100.254,DNS服務(wù)器地址為200.1.1.10,采用predictor壓縮算法。R2路由器不采用壓縮算法,同時(shí)自動(dòng)向?qū)Χ松暾?qǐng)獲取IP地址和DNS服務(wù)器地址。R1與R2路由器之間采用PAP認(rèn)證方式,R1為主認(rèn)證方,R2為被認(rèn)證方,認(rèn)證用戶名為cisco01,密碼為net01。

具體配置如下:

*R1路由器主要參考配置命令:

R1(config)#no cdp run

R1(config)#username cisco01 password net01

R1(config)#interface serial 0/0

R1(config-if)#ip address212.1.100.1 255.255.255.0

R1(config-if)#encapsulation ppp

R1(config-if)#ppp authentication pap

R1(config-if)#peer default ip address pool test

R1(config-if)#compress predictor

R1(config-if)#ppp ipcp dns 200.1.1.10

R1(config-if)#no shutdown

R1(config)#ip local pool test 212.1.100.2 212.1.100.254

*R2路由器參考配置命令:

R2(config)#no cdp run

R2(config)#interface serial 0/0

R2(config-if)#ip address negotiated

R2(config-if)#encapsulation ppp

R2(config-if)#ppp pap sent-username cisco01 password net01

R2(config-if)#ppp ipcp dns request

R2(config-if)#no shutdown

在R2路由器上執(zhí)行ping 212.1.100.1命令,同時(shí)運(yùn)行Wireshak在R1—R2鏈路上捕獲PPP數(shù)據(jù)幀,捕獲報(bào)文如圖2所示。

在R2路由器上執(zhí)行如下命令:R2(config-if)#ppp pap sent-username cisco01 password net00,傳送錯(cuò)誤的密碼,同時(shí)運(yùn)行Wireshak在R1—R2鏈路上捕獲PPP數(shù)據(jù)幀。捕獲報(bào)文如圖3所示。

3.2 LCP工作過程分析

在鏈路建立階段使用LCP報(bào)文建立鏈路,LCP報(bào)文包括以下三種類型:

鏈路配置幀:包括Configure-Request、Configure-Ack、Configure-Nak 和 Configure-Reject,用于建立和配置鏈路。

鏈路維護(hù)幀:包括Code-Reject、Protocol-Reject、Echo-Request和 Echo-Reply等用于管理和調(diào)試鏈路。

鏈路終止幀:包括Terminate-Request和Terminate-Ack用于終止鏈路。

當(dāng)通信雙方建立鏈路時(shí),都需要發(fā)送Config-Request報(bào)文并攜帶每一端所希望協(xié)商的配置參數(shù),其中包括協(xié)議和身份認(rèn)證參數(shù),如圖2中的1、2號(hào)報(bào)文。響應(yīng)方處理這些參數(shù),如果可以接受,發(fā)送Configure-Ack響應(yīng)報(bào)文,入土中的3、4號(hào)報(bào)文。收到Configure-Ack消息后,鏈路建立過程便轉(zhuǎn)入身份認(rèn)證階段或網(wǎng)絡(luò)協(xié)議階段。

如果參數(shù)不可接受或無法識(shí)別,就發(fā)送Configure-Nak或Configure-Reject消息,不會(huì)建立鏈路。如果協(xié)商失敗,發(fā)起方需要使用新選項(xiàng)重新執(zhí)行該過程。

在鏈路維護(hù)期間,LCP可以通過發(fā)送鏈路維護(hù)幀來提供反饋和測試鏈路。如果無法識(shí)別的LCP編碼(LCP幀類型)或錯(cuò)誤的協(xié)議標(biāo)識(shí)符導(dǎo)致幀無效,可使用Code-Reject和Protocol-Reject這兩種幀來提供反饋,如圖2中的11號(hào)報(bào)文。Echo-Request和Echo-Reply幀可用于測試鏈路。

3.3 PAP工作過程分析

PAP是一種簡單的明文認(rèn)證方式[7],對(duì)準(zhǔn)備登錄到點(diǎn)到點(diǎn)協(xié)議服務(wù)器上的用戶進(jìn)行身份認(rèn)證。PAP采用兩次握手機(jī)制,在鏈路建立階段,認(rèn)證方發(fā)送Configure-Request報(bào)文時(shí)會(huì)攜帶認(rèn)證配置參數(shù)選項(xiàng),而被認(rèn)證方只需要返回相應(yīng)的Configure-Ack報(bào)文,然后被認(rèn)證方發(fā)送Authenticate-Request報(bào)文先發(fā)起認(rèn)證請(qǐng)求,如圖2中的5號(hào)報(bào)文,把自己的用戶名和密碼傳送給認(rèn)證方,認(rèn)證方把接收到的用戶名和密碼與本地用戶數(shù)據(jù)庫中的信息作比較,如果該數(shù)據(jù)庫中有與用戶名和密碼一致的選項(xiàng),就向被認(rèn)證方返回一個(gè)Authenticate-Ack認(rèn)證通過響應(yīng)報(bào)文,如圖2中的6號(hào)報(bào)文,告訴對(duì)方認(rèn)證已通過,進(jìn)入網(wǎng)絡(luò)層協(xié)議階段,否則如果用戶名與密碼不符,則向被認(rèn)證方返回Authenticate-Nak認(rèn)證不通過的響應(yīng)報(bào)文,如圖3中的6號(hào)報(bào)文,認(rèn)證失敗,進(jìn)入鏈路終止階段。LCP通過交換Terminate報(bào)文來關(guān)閉鏈路,認(rèn)證方首先發(fā)送Terminate-Request報(bào)文,表明想關(guān)閉鏈路,而對(duì)方使用Terminate-Ack報(bào)文響應(yīng),如圖3中的7、8號(hào)報(bào)文,PPP鏈路隨即終止。PAP也可以采用雙向認(rèn)證,此時(shí)任何一端即是認(rèn)證方也是被認(rèn)證方。

3.4 IPCP工作過程分析

IPCP協(xié)議負(fù)責(zé)完成網(wǎng)絡(luò)層IP協(xié)議通信所需配置參數(shù)的協(xié)商,主要是完成IP地址的協(xié)商[8]。IPCP報(bào)文與LCP報(bào)文類似,只不過IPCP是在網(wǎng)絡(luò)層協(xié)議階段協(xié)商配置參數(shù),而LCP協(xié)議則是在鏈路建立階段協(xié)商配置參數(shù)。在實(shí)際的報(bào)文交換過程IPCP中主要涉及以下幾種:Configure-Request、Configure-Ack、Config-Nak 和 Configure-Reject。IPCP 的協(xié)商過程分為靜態(tài)地址協(xié)商和動(dòng)態(tài)地址協(xié)商。

⑴靜態(tài)地址協(xié)商

在靜態(tài)地址協(xié)商過程中,兩端主機(jī)在PPP協(xié)商之前已配置好了IP地址,雙方要做的就是告訴對(duì)方自身的IP地址。在完成整個(gè)配置的過程時(shí),無論是發(fā)送方還是接收方都要發(fā)送Configure-Request報(bào)文,其中配置選項(xiàng)中含有各自的IP地址。當(dāng)對(duì)端收到該報(bào)文后,會(huì)發(fā)送一個(gè)Configure-Ack報(bào)文,其含義就是告訴對(duì)端我已經(jīng)知道了你的IP地址。

⑵動(dòng)態(tài)地址協(xié)商

在動(dòng)態(tài)地址協(xié)商過程中,一端通過手動(dòng)方式配置IP地址,且允許給對(duì)端分配IP地址,另一端配置為動(dòng)態(tài)獲取IP地址,這個(gè)過程類似于撥號(hào)上網(wǎng)的過程。在圖2中7號(hào)報(bào)文是R1路由器發(fā)送的IPCP的Configure-Request報(bào)文,報(bào)文內(nèi)容為 IP address∶212.1.100.1,也就是告訴對(duì)端我的IP地址是212.1.100.1;10號(hào)報(bào)文是R2返回的Configure-Ack報(bào)文,內(nèi)容是IP address∶212.1.100.1,意思是我知道了。而9號(hào)報(bào)文是R2路由器發(fā)送的IPCP的Configure-Request報(bào)文,報(bào)文內(nèi)容為 IPaddress∶0.0.0.0;Primary DNS server IP address∶0.0.0.0;Secondary DNSserver IP address∶0.0.0.0,也就是告訴對(duì)端我的IP地址、首選DNS和備用DNS服務(wù)器地址都是0.0.0.0;12號(hào)報(bào)文是R1返回的Configure-Reject報(bào)文,內(nèi)容是 Secondary DNSserver IPaddress∶0.0.0.0,意思是我拒絕協(xié)商備用DNS服務(wù)器地址。然后13號(hào)報(bào)文是R2路由器再次發(fā)送的Configure-Request報(bào)文,報(bào)文內(nèi)容為 IP address∶0.0.0.0;Primary DNS server IP address∶0.0.0.0,也就是不在協(xié)商備用DNS服務(wù)器地址都是0.0.0.0;14號(hào)報(bào)文是R1返回的Configure-Nak 報(bào)文,內(nèi)容是 IP address∶212.1.100.4;Primary DNSserver IPaddress∶200.1.1.10,意思是我不同意你的IP地址和首選DNS服務(wù)器地址,用我給你的。最后15號(hào)報(bào)文是R2路由器發(fā)送的Configure-Request報(bào)文,報(bào)文內(nèi)容為IP address∶212.1.100.4;Primary DNS server IP address∶200.1.1.10,也就是采用R1分配的IP地址和首選DNS服務(wù)器地址;16號(hào)報(bào)文是R1返回的Configure-Ack 報(bào)文,內(nèi)容是 IP address∶212.1.100.4;Primary DNSserver IP address∶200.1.1.10,意思是我知道了。至此網(wǎng)絡(luò)層參數(shù)協(xié)商完畢,可以進(jìn)行網(wǎng)絡(luò)層數(shù)據(jù)傳送。

3.5 CHAP與PAP協(xié)議比較分析

在R1與R2路由器之間采用CHAP認(rèn)證方式,R1為主認(rèn)證方,R2為被認(rèn)證方,認(rèn)證用戶名為cisco01,密碼為net01。主要配置如下:

*R1路由器參考配置命令:

R1(config-if)#ppp authentication chap

R1(config-if)#ppp chap hostname routera

R1(config)#username routerb password cisco01

*R2路由器參考配置命令:

R2(config-if)#ppp chap hostname routerb

R2(config)#username routera password cisco01

在R2路由器上執(zhí)行ping 212.1.100.1命令。同時(shí)運(yùn)行Wireshak在R1—R2鏈路上捕獲PPP數(shù)據(jù)幀。

PAP的缺點(diǎn)是用戶的用戶名和密碼是明文發(fā)送的,并且認(rèn)證進(jìn)程只在雙方的通信鏈路建立初期進(jìn)行,有可能導(dǎo)致安全問題。而CHAP是三次握手協(xié)議[9],它只在網(wǎng)絡(luò)上傳送用戶名而不傳送口令,定期發(fā)出挑戰(zhàn),以確保遠(yuǎn)程節(jié)點(diǎn)有有效的密碼,因此安全性比PAP高。

在認(rèn)證一開始,由認(rèn)證方向被認(rèn)證方發(fā)送一段隨機(jī)的報(bào)文,并加上自己的用戶名,這個(gè)過程叫做挑戰(zhàn),圖4中的6號(hào)報(bào)文就是R1路由器發(fā)送的Code Challenge挑戰(zhàn)報(bào)文。當(dāng)被認(rèn)證方R2收到認(rèn)證方的挑戰(zhàn)報(bào)文后,從中提取出認(rèn)證方所發(fā)送過來的用戶名,然后根據(jù)該用戶名在被認(rèn)證方設(shè)備的后臺(tái)數(shù)據(jù)庫中去查找相同的用戶名的記錄,當(dāng)查找到后就把該用戶名所對(duì)應(yīng)的密碼、報(bào)文ID和認(rèn)證方發(fā)送的隨機(jī)報(bào)文用MD5加密算法生成密文,隨后將密文和自己的用戶名送回R1,這就是圖4中的7號(hào)Response響應(yīng)報(bào)文,同樣認(rèn)證方收到被認(rèn)證方發(fā)送的報(bào)文后,提取被認(rèn)證方的用戶名,然后去查找本地的用戶數(shù)據(jù)庫,當(dāng)找到與被認(rèn)證方一致用戶名后,根據(jù)該用戶名所對(duì)應(yīng)的密碼、報(bào)文ID和隨機(jī)報(bào)文用MD5加密算法生成密文,和剛剛被認(rèn)證方所返回的密文進(jìn)行比較,如果相同則通知被認(rèn)證方認(rèn)證通過,發(fā)送圖4中的8號(hào)Success認(rèn)證成功報(bào)文,否則認(rèn)證沒有通過。

4 結(jié)語

PPP協(xié)議應(yīng)用廣泛,但是由于它配置在路由器設(shè)備的串口,正常捕獲PPP數(shù)據(jù)幀比較困難,無法采用協(xié)議分析法對(duì)其進(jìn)行有效分析,通過在GNS3模擬軟件中設(shè)計(jì)并配置PPP協(xié)議仿真實(shí)驗(yàn),可以通過Wireshark捕獲PPP數(shù)據(jù)幀,采用協(xié)議分析的方法對(duì)PPP協(xié)議工作過程進(jìn)行分析,加深了對(duì)理論知識(shí)的理解,提高了理論聯(lián)系實(shí)際的能力,對(duì)其它網(wǎng)絡(luò)協(xié)議的研究和學(xué)習(xí)有一定的參考價(jià)值。

[1]曹雪峰.計(jì)算機(jī)網(wǎng)絡(luò)配置、管理與應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2010.

[2]Karl Solie.CCIE實(shí)驗(yàn)指南(第一卷)[M].李津,卓林,譯.北京:人民郵電出版社,2002.

[3]潘文嬋,章韻.Wireshark在TCP/IP網(wǎng)絡(luò)協(xié)議教學(xué)中的應(yīng)用[J].計(jì)算機(jī)教育,2010,114(3):158~160.

[4]王煜林,王金恒.使用GNS3模擬網(wǎng)絡(luò)實(shí)驗(yàn)室[J].電腦編程技巧與維護(hù),2010,210,(12):113~114.

[5]William Allen Simpson.The Point-to-Point Protocol(PPP)[S].IETF RFC 1661,1994.

[6]李領(lǐng)治,陸建德等.基于Net Sim的計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)教學(xué)方案[J].實(shí)驗(yàn)技術(shù)與管理,2009,26,(02):150~153.

[7]Brian Lloyd,William Allen Simpson.PPP Authentication Protocols[S].IETF RFC 1334,1992.

[8]Glenn McGregor.The PPP Internet Protocol Control Protocol(IPCP)[S].IETF RFC 1332,1992.

[9]William Allen Simpson.PPP Challenge Handshake Authentication Protocol(CHAP)[S].IETF RFC 1994,1996.

猜你喜歡
網(wǎng)絡(luò)層用戶名IP地址
《護(hù)士進(jìn)修雜志》投稿程序
《護(hù)士進(jìn)修雜志》投稿程序
鐵路遠(yuǎn)動(dòng)系統(tǒng)幾種組網(wǎng)方式IP地址的申請(qǐng)和設(shè)置
《護(hù)士進(jìn)修雜志》投稿程序
IP地址切換器(IPCFG)
論物聯(lián)網(wǎng)安全威脅及其應(yīng)對(duì)策略
機(jī)智的快遞員
基于SNMP的IP地址管理系統(tǒng)開發(fā)與應(yīng)用
公安網(wǎng)絡(luò)中IP地址智能管理的研究與思考
物聯(lián)網(wǎng)技術(shù)在信息機(jī)房制冷系統(tǒng)中的應(yīng)用