PPP会话
- 链路建立阶段—LCP建立
- 认证阶段----PPP认证(可选项)
- 网络层协议协商阶段----NCP协商
PPP链路建立阶段
Dead阶段:被称为物理层不可用--->当通讯双方均检测到两端物理链路激活时,会进入到下一个阶段。
Establish阶段:即链路建立阶段。在该阶段会进行PPP链路LCP参数协商。
Authenticate阶段:如果在LCP协商过程中,需要进行认证,则进入该阶段,如果不需要,则跳过该阶段。
默认情况下,不要求进行认证。
Network阶段:进行NCP协商。如果协商成功,则PPP链路保持通讯状态。
Terminate阶段:如果双方要断开连接,释放资源,则进入该状态。
PPP数据帧封装结构
对比以太网去看:PPP帧中信息部分为以太网中数据部分(即MTU)
F(Flag):标记(7E:0111 1110),用来区分PPP帧,是否是新的PPP帧
若信息部分有数据为0111 1110,解决方法:规定若数据中又连续的5个1则在5个1后面插入一个0,接收放在数据部分看到连续的5个1就将后面的0删除继续读取(转义)
A(address):地址
C(control):控制字段
LCP协议报文类型
LCP协议报文类型分为三类:链路配置报文、链路终止报文、链路维护报文。
LCP建立
1、MRU值=1500--->PPP数据帧所允许携带的最大数据单元。
2、认证--->1、是否进行认证;2、使用何种方式进行认证。
3、魔术字:用以检测链路中是否存在环路(随机字)。
LCP协商阶段
以A和B两台设备为例:
A设备正常发送出Request报文,在没有收到回复之前,每隔3秒重传一次该报文,连续重传10次。
如果还未收到对方发送的回复信息,则认为对端不可用,停止报文发送。直到接到B设备向A发送
Request报文,A设备才能向B设备发送出Request报文。
如果正常接收到对端的ACK回复信息,则表明B设备认可A设备的链路参数配置。但是此时链路会话还未建立成功。
B设备向A发送Request报文,等待A设备认可B设备的链路参数配置。(LCP建立是双向的)
当双方均认可对方的参数后,LCP协商成功。
认证阶段
PPP协议的认证,是通过调用AAA(认证、授权、计费)来完成的。
PPP协议的认证是单向的,也可以是双向的。—一般采用单向认证。
PPP会话的认证是一次性会话的方式,当第一次链路建立完成后,后续修改认证方式不会影响链路的通讯。
PAP—密码认证协议—>被认证方需要将认证的账户名和密码以明文的形式发送给认证方。
认证方配置
[r2]aaa
[r2-aaa]local-user huawei password cipher 123456 ---创建用户信息
[r2-aaa]local-user huawei service-type ppp ---规定服务协议
[r2-Serial1/0/0]ppp authentication-mode pap ---规定该串口的认证模式为PAP
被认证方配置
[r1-Serial1/0/0]ppp pap local-user huawei password cipher 123456
CHAP—挑战握手协议—>认证不再传递明文信息,而是采用对比摘要值的方式来进行认证。
认证过程:
1、认证方先发送挑战报文,里面包含了认证方的用户名和一个随机值。
2、被认证方根据报文中的用户名查找对应密码信息,然后将密码和发送来的随机值一起做HASH运算得到摘要值,
最后将自己的用户名和摘要值通过应答报文发送给认证方。
哈希(HASH):(注:不是加密技术,是压缩技术)
1、任意长度的输入转换为固定长度的输出。---MD5:将任意长度的输入转换为128位的输出。
2、相同输入,相同输出。
3、不可逆。
4、蝴蝶效应(输入有小的变化,输出变化就会很大)
认证方:
[r2-aaa]local-user nanjing password cipher 111
[r2-aaa]local-user nanjing service-type ppp
[r2-Serial1/0/0]ppp authentication-mode chap
被认证方:
[r1-Serial1/0/0]ppp chap user nanjing //需要分开来写
[r1-Serial1/0/0]ppp chap password cipher 111
双向认证时:一条PPP链路的两端可以使用不同的认证协议认证对端,但是被认证方必须支持认证方要求使用的认证协议,并且配置正确的用户名和密码信息。
网络层协议协商阶段—NCP协商
IPCP—互联网协议控制协议;
-
IP地址是否可用。—检测对端IP地址是否与本端冲突,属于授权的过程。
-
协商过程(协商是双向的)
-
静态地址协商(如果不认可,发送NAK报文,让对方自己改,然后断开重新开始协商)
- 一旦认可了对方的IP地址,则将会自动学习到达该地址的主机路由(掩码32的路由)。
-
动态地址协商(如果不认可,自己分配一个IP地址,此IP与路由本身IP没有关系,是由网络管理员设置的)
配置方:
[r1-Serial1/0/0]remote address 1.1.1.1 --对端默认当掩码32使用获取方:
[r2-Serial1/0/0]ip address ppp-negotiate -
-
写在最后
在结束之际,我想重申的是,学习并非如攀登险峻高峰,而是如滴水穿石般的持久累积。尤其当我们步入工作岗位之后,持之以恒的学习变得愈发不易,如同在茫茫大海中独自划舟,稍有松懈便可能被巨浪吞噬。然而,对于我们程序员而言,学习是生存之本,是我们在激烈市场竞争中立于不败之地的关键。一旦停止学习,我们便如同逆水行舟,不进则退,终将被时代的洪流所淘汰。因此,不断汲取新知识,不仅是对自己的提升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。
需要完整版PDF学习资源私我