发布时间: 2020-06-18 17:13:22
早些时候,广域网经常会用到串行接口来提供远距离的数据传输,因为串行接口的最长有效传输距离是1200米,而普通的双绞线大约是100米左右,企业通过这种类型的接口连接到广域网,所以我们要了解一下这种类型接口所支持的协议。当然,现在用的比较少,因为有光纤,光纤的最长有效传输距离是2000米,带宽也比串行链路要大得多。但是,PPP协议有个优势,就是支持认证,使得PPP协议在当今的网络中保持着一定的地位。
废话不多说,让我们一起来简单地学习这个协议吧,打开ENSP,然后放入两台路由器(AR2220),然后我们添加串口接口卡(图1),最后连上串口线路,搞定(图2)。
图1 添加串口卡
图2 PPP实验拓扑图
然后,我们将路由器的电源打开,静静地等待路由器开启。然后分别给两个接口配置地址(图3)
图3 配置IP地址
打开R1的路由表(图4),发现存在一条2.2.2.2/32的路由,那么这条路由怎么来的呢?
图4 R1的路由表
这个时候要给大家讲一下PPP协议的链路建立过程(图5)了,简单来说,运行了PPP协议的接口,从开启到能够通信要经历两个协商阶段,分别是数据、链路层协商及网络层协商,如果任意一个阶段协商不成功,运行了PPP协议的接口是无法发送数据和接收数据的。我们先来看看PPP的链路层协商吧,这个阶段协商主要协商3个内容:魔术字、MRU、认证。魔术字的协商是用来防止环路的,接口生成一个随机的魔术字发给对方,如果从路由器收到了这个魔术字,证明有环路;MRU的协商是为了避免接口收到过大的数据包导致无法接收;认证是可选的,默认情况下不认证,如果想要认证,则必须开启接口的PPP认证功能。
图5 PPP链路建立过程
回到刚刚的问题,这条路由是怎么来的呢?这个就涉及到PPP的网络层协商了,PPP的网络层协商功能非常强大,主要有以下几个作用:1、协商两端地址是否冲突2、通过网络层协商向对方分配IP地址(可选)3、向对方分配默认路由(可选)4、分配DNS服务器地址(可选)等等,我们在详细地看看网络层协商报文,分为请求和确认,在请求阶段,R2向R1发送了自己的IP地址(图6),表示我这个地址是否和你的冲突,如果不冲突,R1就发送一个ACK,表示你的地址是可用的,否则发送NAK。所以,这条2.2.2.2/32的路由就是在网络层协商的时候学习到的对端的IP地址,可以通过命令取消学习。
图6 PPP网络层协商
最后,再给大家来看一看如何配置认证的。PPP的认证有两种模式:PAP和CHAP,区别就是发送用户名和密码的时候,PAP不加密用户名和密码,而CHAP会将用户名和密码加密再发送过去,我比较推荐大家用CHAP模式,因为安全性要更高。首先我们将R1配置为认证方,R2配置为被认证方,也就是R2必须输入用户名和密码才可以完成链路层协商,否则协商不通过。配置如下:
R1(认证方)的配置:
[R1]aaa //进入AAA视图
[R1-aaa]local-user huawei password cipher 123@abc //新建用户并配置密码
Info: Add a new user.
[R1-aaa]local-user huawei service-type ppp //将用户配置为PPP用户
[R1]int s1/0/0 //进入接口视图
[R1-Serial1/0/0]ppp authentication-mode chap //配置认证模式,缺省是不认证
R2(被认证方的配置):
[R2]int s1/0/0 //进入接口视图
[R2-Serial1/0/0]ppp chap user huawei //配置用户名
[R2-Serial1/0/0]ppp chap password cipher 123@abc //配置密码
我们重启R2的接口(图7),然后在R2上测试是否可以访问到R1,如果可以(图8),则用户名和密码是正确的,否则就是错误的,检查对端IP和用户名密码,看看是否错误。
图8 访问成功
上一篇: Linux学习-TAB命令补全
下一篇: 人工智能-机器学习的基本概念