HCIE 面试资料-PPP链路

PPP

PPP
点对点协议(Point to Point Protocol)
串行链路,链路层协议,用于全双工的同异步链路上
会进行三次认证:LCP、认证、NCP

串行链路
异步传输:以字节来传输,需要采用额外的起始位和停止位来标记每个字节的开始和结束。起始位为二进制值0,停止位为二进制值1,这样每次传输都会需要额外的开销
同步传输:以帧来传输,需要使用时针来同步本端和对端,DCE(数据通信设备)DTE(数据终端设备)

PPP优点
1、支持同步传输和异步传输
2、具有良好的扩展性,当需要在以太网链路上承载PPP协议时,可扩展为PPPoE
3、提供了LCP(Link Control Protocol)协议,用于各种参数协商
4、提供了各种NCP(Network Control Protocol),用于网络层参数协商
5、提供了认证:CHAP 、PAP
6、没有重传机制,网络开销小,速度快

PPP的协商协议
LCP:链路控制协议,用来建立、拆除、监控PPP协议
NCP:网络层控制协议,对不同的网络层协议进行连接建立和参数协商

PPP链路建立过程
1、Dead阶段(物理层不可用),当通信双方检测到物理线路激活,就会进入Establish
2、在Establish状态下会进行LCP协商,协商内容(最大接收单元MRU、认证方式、魔术字),协商成功进入Opened状态
3、判断是否有认证(Authenticate),如过认证通过或没配置认证就进入Network阶段,如果没通过就进入Terminate
4、到达Network阶段,选择和配置一个网络层协议进行协商NCP,协商成功才能通过PPP链路进行发送报文
5、Terminate状态,会释放资源,然后进入Dead状态(认证不通过、物理链路断开、定时器超时、管理员配置了关闭)

LCP报文
Configure-Request:开始进行链路层参数的协商
Configure-Ack:如果参数接收,则以此报文响应
Configure-Nak:如果参数拒绝,则以此报文响应,携带本端认可的配置参数(回复的请求中更改)
Configure-Reject:如果参数不识别,则发送此报文,携带本端不识别的配置参数(回复的请求中删除)

LCP协商
1、最大接收单元MRU(Maximum Receive Unit),缺省为1500字节
2、认证协议,默认不认证,两端可以使用不同的认证方式,但是被认证方必须支持认证方使用的认证方式,并且正确配置用户名和密码
3、魔术字,用来检测PPP协议是否产生自环,接收端如果收到的LCP报文的魔术字和本端的魔术字相同时,会认为链路有环路

协商LCP时,A给B发送Configure-Request后,在3s内没有收到Configure-Ack时,会重新发送Configure-Request,会持续进行10次,之后还未收到ACK就会认为对端不可用,停止发送

创建PPP链路
在接口视图link-protocol ppp

PPP认证
PAP:两次报文交互,密码明文发送
1、由被认证方明文发送用户名和密码Authenticate-Request报文
2、认证方查看数据库用户名和密码是否匹配,匹配成功返回Authenticate-Ack报文,匹配失败返回Authenticate-Nak报文

CHAP:三次报文交互
1、认证方发送Challenge报文给被认证方,报文中包含Identifier(识别码)和随机产生的Challenge(挑战码)字符串
2、被认证方收到报文后,将(Identifier+密码+Challenge)进行一次加密计算,然后和CHAP用户名一起发给认证方Response报文
3、认证方收到报文后,会将其内的用户名和密码在数据库中匹配,匹配成功返回Authenticate-Ack报文,匹配失败返回Authenticate-Nak报文

CHAP中

  • 验证端
    接口可以不配置用户名
    如果有用户名必须与被认证端的接口用户名相同
  • 被验证端
    必须配置用户名和密码
    接口上可以没有密码,但是aaa数据库中必须有密码

配置认证指令
在AAA(认证、授权、计费)模式下配置
cipher:在配置文件中用*保存

PAP认证:
认证方在AAA模式下 local-user huawei password cipher huawei 创建一个用户名和密码
认证方在AAA模式下 local-user huawei service-type ppp 将这个用户设置为PPP用户
认证方在接口视图下 ppp authentication-mode pap 要求对端使用PAP认证
被认证方在接口视图下:ppp pap local-user huawei password cipher huawei 被认证方配置PAP使用的用户名和密码信息

CHAP认证:
认证方在AAA模式下 local-user huawei password cipher huawei 创建一个用户名和密码
认证方在AAA模式下 local-user huawei service-type ppp 将这个用户设置为PPP用户
认证方在接口视图下 ppp authentication-mode chap 要求对端使用CHAP认证
被认证方在接口视图下:ppp chap user huawei 被认证方配置CHAP使用的用户名
被认证方在接口视图下:ppp chap password cipher huawei 被认证方配置CHAP使用的密码

IPCP
NCP中IPCP用于协商控制IP协议
IPCP静态协商:
1、每一端都要发送Configure-Request报文,在此报文中包含本地配置的IP地址
2.、每一端接收到此Configure-Request报文之后,检查其中的IP地址,如果IP地址是一个合法的单播IP地址,而且和本地配置的IP地址不同(没有IP冲突),则认为对端可以使用该地址,回应一个Configure-Ack报文

IPCP动态协商:
1、RTA向RTB发送一个Configure-Request报文,此报文中会包含一个IP地址0.0.0.0,表示向对端请求IP地址
2、RTB收到上述Configure-Request报文后,认为其中包含的地址(0.0.0.0)不合法,使用Configure-Nak回应一个新的IP地址10.1.1.1
3、RTA收到此Configure-Nak报文之后,更新本地IP地址,并重新发送一个Configure-Request报文,包含新的IP地址10.1.1.1
4、RTB收到Configure-Request报文后,认为其中包含的IP地址为合法地址,回应一个Configure-Ack报文
5、RTB也要向RTA发送Configure-Request报文请求使用地址10.1.1.2,RTA认为此地址合法,回应Configure-Ack报文

PPPoE

DSL
数字用户线路DSL(Digital Subscriber Line)
是以电话线为传输介质的传输技术(ADSL宽带接入)

PPPoE的用处
通过在以太网上提供点到点的连接,建立PPP会话,使以太网的主机能够连接到远端的宽带接入服务器上
特点:范围广、安全性高、计费方便
运营商希望通过同一台接入设备来连接远程的多个主机,同时接入设备能够提供访问控制和计费功能,在接入技术中,使用以太网接入多台设备,用PPP协议进行控制

PPPoE的报文格式
VER:版本号,值为0x01
Type:类型,值为0x01
Code:表示PPPoE报文类型,不同取值标识不同的PPPoE类型
Session ID:源目MAC地址组成的会话ID
Length:表示Payload长度

PPPoE会话的建立
发现阶段:获取对方以太网地址,以及确定唯一的PPPoE的会话
会话阶段:PPP协商阶段和PPP报文传输阶段
会话终结阶段:会话建立后发送报文结束PPPoE会话

PPPoE协议报文类型
PADI(Initiation):发现初始报文(Code字段为0x09,Session ID字段为0x0000,目的MAC为广播地址0xfffffffffff)
客户端在本地以太网中广播PADI报文

PADO(Offer):发现提供报文(Code字段为0x07,Session ID字段为0x0000,目的MAC为请求的客户端)
服务器收到后会将请求的服务和自己支持的服务进行对比,如果可以提供客户端的请求,就会回复PADO

PADR(Request):发现请求报文(Code字段为0x19,Session ID字段为0x0000,目的MAC为第一个服务器)
客户端可能会收到多个PADO,客户端选择最先收到的PADO报文对应的PPPoE服务器,并发送一个PADR报文给这个服务器

PADS(Session Configuration):发现会话确认报文(Code字段为0x65,Session ID字段是服务器为本会话产生的Session ID,目的MAC为客户端)
服务器收到PADR后,会生成唯一的Session ID来标识和客户端的会话,并通过PADS报文吧Session ID发给客户端
建立会话后会进行LCP、认证、NCP协商

PADT(Terminate):发现终止报文(Session ID为使用的会话ID,目的MAC为单播MAC地址)
当客户端希望关闭连接时,会发送PADT报文,服务器希望停止服务时也可以发送PADT报文

PPPoE配置
进入拨号接口规则视图 dialer-rule
在dialer-rule视图下dialer-rule 1 ip permit 设置规则1允许
创建进入Dialer接口 interface dialer 1
在Dialer1视图下 dialer user user-name 配置对端用户名,需要与服务器上的PPP用户名相同
在Dialer1视图下 dialer-group group-number 将接口置于一个拨号访问组
在Dialer1视图下 dialer bundle number 通过Dialer bundle将物理接口与拨号接口关联起来

在接口视图 pppoe-client dial-bundle-number 1 on-demand (on-demand表示PPPoE会话工作在按需拨号模式)

在系统视图下 ip route-static 0.0.0.0 0 dialer 1 配置一条静态缺省路由

PPPoE需要降低MTU的大小
因为PPPoE的头部长度为6个字节,协议ID长度为2个自己,所以MTU总长不能超过1492个字节

猜你喜欢

转载自blog.csdn.net/PanJWei/article/details/114870211