《第十二课PPP协议》由会员分享,可在线阅读,更多相关《第十二课PPP协议(35页珍藏版)》请在金锄头文库上搜索。
1、网络互联与实现网络互联与实现网络互联与实现网络互联与实现计算机网络技术教研室计算机网络技术教研室王宏群王宏群PPPPPPPPPPPP协议协议协议协议Page 3/34内容回顾内容回顾v广域网的连接类型都有哪些广域网的连接类型都有哪些v常用的广域网封装协议有什么常用的广域网封装协议有什么v列举五种广域网连接的接口类型列举五种广域网连接的接口类型Page 4/34本章目标本章目标v能够在点对点链路上配置能够在点对点链路上配置PPP协议协议了解了解PPP协议的基本概念协议的基本概念掌握掌握PPP链路的建立过程链路的建立过程掌握掌握PAP和和CHAP认证认证了解多链路了解多链路PPP掌握掌握PPP协议
2、的配置协议的配置Page 5/34PPP的认证的认证本章结构本章结构PPP协议协议PPP协议概述协议概述多链路多链路PPPPPP的配置的配置PAP认证认证CHAP认证认证PPP协议的产生协议的产生PPP帧格式帧格式PPP链路的建立链路的建立PPP的组成的组成Page 6/34PPP协议概述协议概述vPPP(Point to Point Protocol)协议是在点对)协议是在点对点链路上运行的数据链路层协议点链路上运行的数据链路层协议v用户使用拨号电话线接入用户使用拨号电话线接入Internet时,一般都是使时,一般都是使用用 PPP 协议协议PSTNPPP协议协议Page 7/34PPP协议
3、的产生协议的产生-SLIP协议协议vSLIP协议(协议(Serial Line Internet Protocol)是在串行线路上对是在串行线路上对IP数据报进行封装的简单协议数据报进行封装的简单协议产生于二十世纪八十年代中期产生于二十世纪八十年代中期vSLIP协议的缺点协议的缺点封装格式十分简单,无法进行封装格式十分简单,无法进行IP地址等参数的协商地址等参数的协商只支持只支持IP协议协议不具备校验功能不具备校验功能IP数据报文数据报文+END字符字符=SLIP数据帧数据帧Page 8/34PPP协议的发展历程协议的发展历程v1989年,年,PPP 协议被提出协议被提出v1994年,经过年,
4、经过 多年的修订,多年的修订,PPP 协议正式已成协议正式已成为为Internet的标准之一的标准之一v由由RFC 1661定义,还包括定义,还包括RFC 1662、RFC 1663等一系列协议等一系列协议Page 9/34PPP协议的优点协议的优点v支持同步或异步串行链路的传输支持同步或异步串行链路的传输v支持多种网络层协议支持多种网络层协议v支持错误检测支持错误检测v支持网络层的地址协商支持网络层的地址协商v支持用户认证支持用户认证v允许进行数据压缩允许进行数据压缩Page 10/34PPP的组成的组成vPPP主要包括三个部分主要包括三个部分在串行链路上封装上层数据报文的方法在串行链路上封
5、装上层数据报文的方法采用采用LCP(Link-Control Protocol,链路控制协议),链路控制协议)来建立、控制数据链路来建立、控制数据链路采用采用NCP(Network-Control Protocol,网络控制协,网络控制协议)来支持多种网络协议议)来支持多种网络协议物理介质(同物理介质(同/ /异步)异步)LCPNCPPPPIPIPX其它网络协议其它网络协议IPCPIPXCP其它NCP网络层网络层数据链路层数据链路层物理层物理层Page 11/34PPP链路的建立链路的建立vPPP链路的建立共有五个阶段链路的建立共有五个阶段链路不可用链路不可用阶段阶段链路建立链路建立阶段阶段认
6、证阶段认证阶段网络层协议网络层协议阶段阶段链路终止链路终止阶段阶段物理层物理层 UP链路链路UP认证通认证通过或无过或无认证认证认证失败认证失败关闭关闭失败失败Page 12/34PPP帧格式帧格式协议域协议域信息域信息域0x7E 0xFF 0x03帧校验帧校验0x7E1Byte2Bytes2Bytes1Byte1Byte1Byte信息域:根据协议域的内容而定信息域:根据协议域的内容而定 当协议域为当协议域为LCP协议时,信息域内为协议时,信息域内为LCP协商参数协商参数 当协议域为当协议域为NCP协议时,信息域内为协议时,信息域内为NCP协商参数协商参数 当协议域为当协议域为IP协议时,信息
7、域内为用户数据协议时,信息域内为用户数据地址域:对方的数据链路层地址。地址域:对方的数据链路层地址。因为因为PPP协议是点对点的链路层协议,协议是点对点的链路层协议,所以此字节无意义,用所以此字节无意义,用0xFF填充填充标志字节:用来标示标志字节:用来标示PPP帧的开始和帧的开始和结束结束控制域:通常用控制域:通常用0x03填充填充协议域:用来区分协议域:用来区分PPP数据帧中信息域所承载的数据报文的内容数据帧中信息域所承载的数据报文的内容常见取值:常见取值:0xc021 信息域中承载的是信息域中承载的是LCP协议数据报文协议数据报文0xc023 信息域中承载的是信息域中承载的是PAP协议的
8、认证报文协议的认证报文0xc223 信息域中承载的是信息域中承载的是CHAP协议的认证报文协议的认证报文0x8021 信息域中承载的是信息域中承载的是NCP协议数据报文协议数据报文0x0021 信息域中承载的是信息域中承载的是IP协议数据报文协议数据报文Page 13/34LCP协议协议v用来建立、配置、维护、终止一条点对点链路用来建立、配置、维护、终止一条点对点链路vLCP协议协商选项协议协商选项MRU,最大接收单元,最大接收单元认证协议认证协议链路压缩链路压缩多链路捆绑多链路捆绑Page 14/34NCP协议协议v 用来建立、配置不同的网络层协议用来建立、配置不同的网络层协议v包括包括IP
9、CP、IPXCP等协议等协议vIPCP协议协商选项协议协商选项IP地址协商地址协商TCP/IP头压缩头压缩Page 15/34PPP协议由链路层封装方法、协议由链路层封装方法、LCP协议、协议、NCP协协议三部分组成议三部分组成PPP的帧格式的帧格式LCP协议用来负责链路的配置协议用来负责链路的配置NCP协议用来负责网络协议的配置协议用来负责网络协议的配置PPP链路建立的过程链路建立的过程阶段总结阶段总结Page 16/34PPP认证协议认证协议v PPP协议支持用户的认证,是广域网接入使用最协议支持用户的认证,是广域网接入使用最广泛的协议广泛的协议vPPP协议支持两种认证协议协议支持两种认证
10、协议PAP(Password Authentication Protocol,口令认,口令认证协议)证协议)CHAP(Challenge Handshake Authentication Protocol,质询握手认证协议),质询握手认证协议)Page 17/34PAP认证认证vPAP是两次握手认证协议,口令以明文传送,被是两次握手认证协议,口令以明文传送,被认证方首先发起认证请求。认证方首先发起认证请求。被认证方被认证方主认证方主认证方用户名和密码用户名和密码(user01/pw01)认证通过认证通过/ /未通过未通过用户名:用户名:user01密密 码:码:pw01username pas
11、sworduser01 pw01根据用户数据库认证根据用户数据库认证用户名密码是否正确用户名密码是否正确Page 18/34CHAP认证认证41vCHAP是三次握手认证协议,不发送口令,主认是三次握手认证协议,不发送口令,主认证方首先发起认证请求,安全性比证方首先发起认证请求,安全性比PAP高。高。被认证方被认证方主认证方主认证方主认证方用户名,随机数据主认证方用户名,随机数据被认证方用户名,随机报文与被认证方用户名,随机报文与密码加密后的报文密码加密后的报文接受接受/ /拒绝拒绝Page 19/34CHAP认证认证4201 id 随机数据随机数据 3640-1766-13640-1用户名用户
12、名 口令口令3640-1 PWDid 随机数据随机数据 PWDMD5Hash值值v主认证方发送认证请求主认证方发送认证请求表示此报文为认表示此报文为认证请求证请求此次认证的序列此次认证的序列号号主认证方认证用主认证方认证用户名户名被认证方在本地被认证方在本地的数据库中查找的数据库中查找对应的密码对应的密码Page 20/34用户名用户名 口令口令766-1 PWDCHAP认证认证43v被认证方回复认证请求被认证方回复认证请求02 idHash值值766-1766-13640-1此报文为此报文为CHAP认认证响应报文证响应报文与认证请求中的与认证请求中的id相同相同被认证方的认证被认证方的认证用
13、户名用户名主认证方在本地数据主认证方在本地数据库中查找被认证方对库中查找被认证方对应的口令应的口令id 随机数据随机数据 PWD随机数据随机数据根据根据id找到先前保存找到先前保存的随机数据的随机数据MD5Hash值值与被认证方计算得到与被认证方计算得到的的Hash值做比较,值做比较,如果一致,则认为认如果一致,则认为认证通过。证通过。Page 21/34CHAP认证认证44v主认证方确认认证是否通过主认证方确认认证是否通过766-13640-103 id“认证通过认证通过”Page 22/34多链路多链路PPPvMLP(MultiLink PPP)可以将多条)可以将多条PPP链路捆链路捆绑起
14、来绑起来 v对于对于MLP链路两端的设备,就好像只有一条链路两端的设备,就好像只有一条PPP连接,只需配置一个连接,只需配置一个IP地址地址v优点优点增加带宽增加带宽负载分担负载分担降低时延降低时延Page 23/34配置配置PPP协议协议v 进入串口配置模式进入串口配置模式Router(config)# interface serial 0/0v配置接口的链路层协议为配置接口的链路层协议为PPPRouter(config-if)# encapsulation pppv配置接口的配置接口的IP地址地址Router(config-if)# ip address ip_addr ip_maskPa
15、ge 24/34配置配置PAP认证认证-主认证方主认证方v配置认证用户名和密码配置认证用户名和密码Router(config)# username user_name password 0 pass_wordv启用启用PAP认证认证Router(config-if)# ppp authentication pap0表示密码为明文保存表示密码为明文保存Page 25/34配置配置PAP认证认证-被认证方被认证方v配置认证用户名和密码配置认证用户名和密码Router(config-if)# ppp pap sent-username user_name password 0 pass_word主认
16、证方和被认证方配主认证方和被认证方配置的用户名和密码必须置的用户名和密码必须一致一致Page 26/34配置配置CHAP认证认证-主认证方主认证方v配置认证用户名和密码配置认证用户名和密码Router(config)# username user_name password 0 pass_wordv启用启用CHAP认证认证Router(config-if)# ppp authentication chapv配置认证用的用户名配置认证用的用户名Router(config-if)# ppp chap hostname user_name如果不配置此命令,默认使用路由器的主机名如果不配置此命令,默认
17、使用路由器的主机名作为主认证方的用户名作为主认证方的用户名Page 27/34配置配置CHAP认证认证-被认证方被认证方v配置认证用户名和密码配置认证用户名和密码Router(config)# username user_name password 0 pass_wordv配置认证用的用户名配置认证用的用户名Router(config-if)# ppp chap hostname user_namev配置认证用的密码配置认证用的密码Router(config-if)# ppp chap password 0 pass_word如果不配置此命令,默认使用路由器的主机名如果不配置此命令,默认使用路
18、由器的主机名作为被认证方的用户名作为被认证方的用户名当没有配置认证的用户名和密码时,可以使用当没有配置认证的用户名和密码时,可以使用此命令配置默认的密码此命令配置默认的密码Page 28/34配置配置IP地址协商地址协商v服务器端服务器端Router(config-if)# peer default ip address ip_addrv客户端客户端Router(config-if)# ip address negotiated配置此命令后,原先在接口上配置此命令后,原先在接口上配置的配置的IP地址将被删除地址将被删除Page 29/34配置配置PPP压缩压缩v启用启用PPP压缩压缩Route
19、r(config-if)# compress predictor | stac v启用启用TCP/IP头压缩头压缩Router(config-if)# ip tcp header-compression需要在需要在PPP链路的两端均配置才能生效链路的两端均配置才能生效当路由器负载过大时,最好不要启用当路由器负载过大时,最好不要启用PPP压缩压缩需要在需要在PPP链路的两端均配置才能生效链路的两端均配置才能生效在高速线路上最好不要启用此功能在高速线路上最好不要启用此功能Page 30/34PPP配置实例配置实例RouterA# config terminalRouterA(config)# in
20、terface serial 0/0RouterA(config-if)# ip address 192.168.1.2 255.255.255.252RouterA(config-if)# encapsulation pppRouterA(config-if)# ppp pap sent-username benet password 0 bestRouterA(config-if)# no shutdownRouterB# config terminal RouterB(config)# username benet password 0 bestRouterB(config)# inte
21、rface serial 0/0RouterB(config-if)# ip address 192.168.1.1 255.255.255.252RouterB(config-if)# clock rate 2000000RouterB(config-if)# encapsulation pppRouterB(config-if)# ppp authentication papRouterB(config-if)# no shutdownABPage 31/34PPP的调试和排错的调试和排错3-1vshow interface命令命令Router#show interface serial
22、0/1Serial0/1 is up, line protocol is up Hardware is PowerQUICC Serial Internet address will be negotiated using IPCPMTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, reliability 255/255, txload 1/255, rxload 1/255 Encapsulation PPP, loopback not set LCP Open Open: IPCP, CDPCP物理层物理层UP,数据链,数据链路层路层UP此接口的此接
23、口的IP地址由地址由IPCP协议协议协商决定协商决定此接口链路层封装协此接口链路层封装协议为议为PPPLCP、IPCP、CDPCP协协议状态都为议状态都为openPage 32/34PPP的调试和排错的调试和排错3-2vdebug ppp packet命令命令*Mar 1 00:21:36.216: Se0/1 PPP: Outbound cdp packet dropped, line protocol not up*Mar 1 00:21:38.211: %LINK-3-UPDOWN: Interface Serial0/1, changed state to up*Mar 1 00:21
24、:38.211: Se0/1 LCP: O CONFREQ Closed id 33 len 10*Mar 1 00:21:38.211: Se0/1 LCP: MagicNumber 0x13D78FE3 (0x050613D78FE3)*Mar 1 00:21:40.202: Se0/1 LCP: TIMEout: State REQsent*Mar 1 00:21:40.202: Se0/1 LCP: O CONFREQ REQsent id 34 len 10*Mar 1 00:21:40.202: Se0/1 LCP: MagicNumber 0x13D78FE3 (0x050613
25、D78FE3)*Mar 1 00:21:40.202: Se0/1 PPP: I pkt type 0xC021, datagramsize 14*Mar 1 00:21:40.202: Se0/1 LCP: I CONFACK REQsent id 34 len 10*Mar 1 00:21:40.202: Se0/1 LCP: MagicNumber 0x13D78FE3 (0x050613D78FE3)*Mar 1 00:21:40.226: Se0/1 PPP: I pkt type 0xC021, datagramsize 18*Mar 1 00:21:40.226: Se0/1 L
26、CP: I CONFREQ ACKrcvd id 50 len 14*Mar 1 00:21:40.226: Se0/1 LCP: AuthProto PAP (0x0304C023)*Mar 1 00:21:40.226: Se0/1 LCP: MagicNumber 0x13940FF0 (0x050613940FF0)*Mar 1 00:21:40.226: Se0/1 LCP: O CONFACK ACKrcvd id 50 len 14*Mar 1 00:21:40.226: Se0/1 LCP: AuthProto PAP (0x0304C023)*Mar 1 00:21:40.2
27、26: Se0/1 LCP: MagicNumber 0x13940FF0 (0x050613940FF0)链路不可用阶段链路不可用阶段链路建立阶段链路建立阶段Page 33/34PPP的调试和排错的调试和排错3-3vdebug ppp packet命令命令*Mar 1 00:21:40.230: Se0/1 PAP: O AUTH-REQ id 10 len 15 from benet*Mar 1 00:21:40.234: Se0/1 PPP: I pkt type 0xC023, datagramsize 9*Mar 1 00:21:40.234: Se0/1 PAP: I AUTH-A
28、CK id 10 len 5*Mar 1 00:21:40.234: Se0/1 PPP: I pkt type 0x8021, datagramsize 14*Mar 1 00:21:40.238: Se0/1 IPCP: I CONFREQ Closed id 1 len 10*Mar 1 00:21:40.238: Se0/1 IPCP: Address 192.168.1.2 (0x0306C0A80102)*Mar 1 00:21:40.238: Se0/1 IPCP: O CONFREQ Closed id 2 len 10*Mar 1 00:21:40.238: Se0/1 IP
29、CP: Address 192.168.1.1 (0x0306C0A80101)*Mar 1 00:21:40.242: Se0/1 IPCP: O CONFACK REQsent id 1 len 10*Mar 1 00:21:40.242: Se0/1 IPCP: Address 192.168.1.2 (0x0306C0A80102)*Mar 1 00:21:40.242: Se0/1 PPP: I pkt type 0x8021, datagramsize 14*Mar 1 00:21:40.246: Se0/1 IPCP: I CONFACK ACKsent id 2 len 10*
30、Mar 1 00:21:40.246: Se0/1 IPCP: Address 192.168.1.1 (0x0306C0A80101)*Mar 1 00:21:41.240: %LINEPROTO-5-UPDOWN: Line protocol on Interface Serial0/1, changed state to up认证阶段认证阶段网络协议阶段网络协议阶段Page 34/34PPP的认证的认证本章总结本章总结PPP协议协议PPP协议概述协议概述多链路多链路PPPPPP的配置的配置PAP认证认证CHAP认证认证PPP协议的产生协议的产生PPP帧格式帧格式PPP链路的建立链路的建立
31、PPP的组成的组成数据报文的封装方法数据报文的封装方法LCP协议协议NCP协议协议两次握手两次握手口令明文传输口令明文传输被认证方发起请求被认证方发起请求三次握手三次握手口令不在网络上传输口令不在网络上传输主认证方发起请求主认证方发起请求Page 35/34实验实验v任务任务配置配置PPP协议,连接协议,连接BENET上海办事处和公司总部上海办事处和公司总部v需求需求使用使用PPP协议协议使用使用CHAP方式认证用户方式认证用户使用使用IP地址协商方式,由总部为办事处分配地址协商方式,由总部为办事处分配IP地址地址v完成标准完成标准PPP连接能够正常建立连接能够正常建立办事处和总部间路由器可以相互办事处和总部间路由器可以相互ping通通v网络拓朴网络拓朴办事处办事处公司总部公司总部192.168.1.2/30192.168.1.1/30PPP专线专线