PPP
程序员文章站
2024-02-14 13:09:04
...
PPP
点到点协议( point to point protocol)
点对点协议(PPP)为在点对点连接上传输多协议数据包提供了一个标准方法。
通常在需要拨号的网络中使用
二层数据链路协议
协议 | 是否支持认证 |
---|---|
PPP | 是 |
HDLC | 否 |
帧中继 | 否 |
Ethernet | 是(通过802.1X) |
ATM | 否 |
PPP的基本配置
在接口下配置
if# en ppp
if#ip add 192.168.1.1 255.255.255.0
封装完成后会默认在路由表产生对端/32的主机路由(与PPP协商机制有关)
查看接口三层信息
#show ip int s1/0
查看接口二层信息
#show int s1/0
PPP的配置建议
- 在同一网段存在/24直连路由可达时,需要删除注入的对端直连接口的主机路由
if#no peer neighbor-route
#clear ip route *
- 两端不在同一网段时,不建议删除注入的对端直连接口的主机路由
PPP的协商过程
- 1.LCP(链路控制协议)
- authentication(认证,可选
- 2.NCP(网络控制协议)
- 支持IP的三层网络协商是IPCP:会在路由表中会注入对点直连接口的/32主机路由
- 支持CDP的协商是 CDPCP
DebugPPP协商报文命令
#debug ppp negotiation
PPP认证
PAP
密码认证协议(类似明文认证,容易被暴破)
服务器端配置
a.开启认证
con#int s0/1
if# en ppp
if#ip add 192.168.1.1 255.255.255.0
if#ppp authentication pap
b.设置本地数据库
con#username cisco password cisco
客户端配置
a.设置需要的用户名与密码(用户名与服务器的不匹配也不影响)
con#int s0/1
if# en ppp
if#ip add 192.168.1.1 255.255.255.0
if#ppp pap sent-username cisco password cisco
CHAP
挑战(三次)握手认证协议(有加密,类似MD5)
- i.服务器发起挑战
- 发送NAME(R1)/随机数/ID(第几次认证) 挑战客户端
- ii.客户端收到报文
-
- 本地没有数据库
- 使用接口下的的密码与收到的 随机数 进行 hash,将 hash数值与 客户端(R2与ID号发送给认证端
-
- 本地有数据库
- 使用服务器端的名字(R1)在数据库中查找对应的密码,使用这个密码与随机数进行hash,然后将hash数值与客户端(R2与ID号发给 认证端
- iii. 服务器端收到客户端发来的信息
-
- 使用客户端名字在本地数据库中查找密码
- 使用id号查找相应的随机数
- 使用这个 密码 和 随机数 进行hash(二次hash)
- 将二次hash 与客户端发来的 一次hash 对比, 相同时认证通过,不同时认证失败向客户端发送认证通过或失败的报文
- 注意
-
如果接口下配置了hostname,则使用接口下的hostname 来发送
如果没有配置 ,使用设备名称来发送
服务器端配置
a.开启认证
if# en ppp
if#ip add 192.168.1.1 255.255.255.0
if#ppp authentication chap
b,设置本地数据库
con#username cisco password cisco
客户端配置
本地无数据库
if# en ppp
if#ip add 192.168.1.1 255.255.255.0
if#ppp chap hostname cisco
if#ppp chap password cisco
本地数据库
con#username cisco password cisco
查看认证的过程
#debug ppp authentication
在做CHAP认证时,两端都必须检查数据库
#sh run | in user
( 两端username 与 password 一样,且username 大写小写不区分)
- 哈希(HASH)
- 多次模运算(取余运算)
-
- 特点
- 1.相同输入 相同输出
2.输出定长
3.雪崩效应(输入变化小,输出变化大)
常见的hash | 长度 |
---|---|
MD5 | 128位 |
SHA-1 | 160位 |
上一篇: 远程连接mysql数据库注意点记录