关于ppp链路上两头分别使用chap和pap验证的可行性
今天想起一个怀疑很久的问题: 一条ppp链路,如果一头要求chap验证,另一头要求pap验证,是否可以验证通过?
实验证实是可行的。
拓扑:
R1-s0---s0-R2
R1、R2都是cisco 25系列router,ios 12.2(21)
R1的s0口ip:10.100.10.1
R2的s0口ip:10.100.10.2
R1配置:
username r2 password 0 cisco
interface Serial0
ip address 10.100.10.1 255.255.255.0
encapsulation ppp
clockrate 2000000
ppp authentication chap
ppp pap sent-username aaa password 0 bbb
R2配置:
username aaa password 0 bbb
interface Serial0
ip address 10.100.10.2 255.255.255.0
encapsulation ppp
ppp authentication pap
ppp chap password 0 cisco
chap验证过程:
1、R1发送chap CHALLENGE,其中用户名是R1。
2、R2收到 CHALLENGE,检查local username是否存在R1,如果存在,就使用对应的password,不存在就使用default password(ppp chap passwork命令配置的默认password)。结合password、信息ID号与R2用户名,加密生成一个RESPONSE,回应给R1。
3、R1收到到RESPONSE,解密生成password,检查是否符合local username中的对应R2的password。如果符合,验证通过,发送SUCCESS信息,如果不通过则发送FAILURE信息。
pap验证过程:
1、R1发送AUTH-REQ,其中包含了用户名和口令(根据ppp pap sent-username的参数)。
2、R2接受AUTH-REQ,利用local username进行检查,如果通过就发送AUTH-ACK信息,不通过则发送FAILURE信息。
实际上chap和pap验证是同时进行的,如果其中任意一个验证没有通过,则链路建立不起来。
实际组网中应该不可能碰到这个问题。不过cisco ios中ppp chap的可选参数较多,利用这个实验进行了一些测试。同时也加深了对chap和pap验证过程的理解。
相关debug 命令:
deb ppp authen
deb ppp nego
deb ppp packet
浙公网安备 33010602011771号