1、2019/1/2,1,专业化、规范化、标准化、电子化,Linux基础 PPPoE服务,编制人:彭远大版本:v1.0,有计划、有总结、有记录、有审核;,2019/1/2,2,专业化、规范化、标准化、电子化,课程定位与目标,讲义适用于测试储干 学习后,掌握linux系统的一些基础,PPPoE流程 构建PPPoE服务器测试PPPoE客户端 自学建议:Linux系统管理员丛书, RFC1661:The Point-to-Point Protocol (PPP) RFC2516:A Method for Transmitting PPP Over Ethernet (PPPoE),2019/1/2,3,
2、专业化、规范化、标准化、电子化,5,4,3,2,1,目录,PPPoE协议,Linux下安装配置PPPoE服务器,PPPoE服务器启动,PPPoE服务器断开,测试PPPoE客户端(重点 难点),6,练习,2019/1/2,4,专业化、规范化、标准化、电子化,一 PPPoE协议,Pppoe:point-to-point protocol over ethernet的简称,可以使以太网的主机通过一个简单的桥接设备连到一个远端的接入集中器上。通过pppoe协议,远端接入设备能够实现对每个接入用户的控制和计费。与传统的接入方式相比,pppoe具有较高的性能价格比,它在包括小区组网建设等一系列应用中被广泛
3、采用,目前流行的宽带接入方式adsl就使用了pppoe协议。,2019/1/2,5,专业化、规范化、标准化、电子化,PPPoE协议,PPPoE 的以太网有效载荷显示如下: ver -PPPoE版本,必需设置为0X1TYPE -必须设置为 0x1 Code -Discovery 和 PPP Session 阶段有定义 (Code域为0x09,表示PADI报文;Code域为0x07,表示PADO或PADT报文;Code域为0x19,表示PADR报文;Code域为0x65,表示PADS报文 )Session-ID -Discovery 数据包中有该字段定义,对于特定的 PPP Session 而言,
4、该值为固定值。并且与以太网Source_address和Destination_address一起实际地定义了一个PPP会话, 0xffff作为预留值,不作使用。Length -表示 PPPoE 有效载荷长。不包括以太网或 PPPoE 头的长度 PPPoE TAGS,2019/1/2,6,专业化、规范化、标准化、电子化,PPPoE协议,Discovery阶段 Discovery阶段由四个过程组成。完成之后通信双方都会知道PPPoE的Session_ID 以及对方以太网地址,它们共同确定了唯一的PPPoE Session。 (1) PPPoE Client广播发送一个PADI报文,在此报文中包含
5、 PPPoE Client想要得到的服务类型信息。 (2) 所有的PPPoE Server收到PADI报文之后,将其中请求的服务与自己能够提供的服务进行比较,如果可以提供,则单播回复一个PADO报文。 (3) 根据网络的拓扑结构,PPPoE Client可能收到多个PPPoE Server发送的PADO报文,PPPoE Client选择最先收到的PADO报文对应的PPPoE Server做为自己的PPPoE Server,并单播发送一个PADR报文。 (4) PPPoE Server产生一个唯一的会话ID(SESSION ID),标识和PPPoE Client的这个会话,通过发送一个PADS报
6、文把会话ID发送给PPPoE Client,如果没有错误,会话建立后便进入PPPoE Session阶段。,2019/1/2,7,专业化、规范化、标准化、电子化,PPPoE协议,Session阶段 PPPoE Discovery阶段的工作为PPPoE Client和PPPoE之间建立了Session,之后PPPoE便进入了Session阶段,Session阶段可划分为两部分,一是PPP协商阶段,二是PPP报文传输阶段。 PPPoE Session上的PPP协商和普通的PPP协商方式一致,分为LCP、认证、NCP三个阶段。 (1) LCP阶段主要完成建立、配置和检测数据链路连接。 (2) LCP
7、协商成功后,开始进行认证工作,认证协议类型由LCP协商结果(CHAP或者PAP)决定。 (3) 认证成功后,PPP进入NCP阶段,NCP是一个协议族,用于配置不同的网络层协议,常用的是IP控制协议(IPCP),它负责配置用户的IP和DNS等工作。 PPPoE Session的PPP协商成功后,其上就可以承载PPP数据报文。 在PPPoE Session阶段所有的以太网数据包都是单播发送的。,2019/1/2,8,专业化、规范化、标准化、电子化,PPPoE协议,Terminate阶段 PPP通信双方应该使用PPP协议自身(比如PPP终结报文)来结束PPPoE会话,但在无法使用PPP协议结束会话时
8、可以使用PADT报文。 进入PPPoE Session阶段后,PPPoE Client和PPPoE Server都可以通过发送PADT报文的方式来结束PPPoE连接。PADT数据包可以在会话建立以后的任意时刻单播发送。在发送或接收到PADT后,就不允许再使用该会话发送PPP流量了,即使是常规的PPP结束数据包也不允许发送,2019/1/2,9,专业化、规范化、标准化、电子化,Linux下安装配置PPPoE服务器,环境准备: Cent os操作系统 rp-pppoe RPM包 PPP RPM包 (一般系统光盘里会带这两个RPM包,没有的话到网上去下载RPM包或源码包) http:/ http:/
9、 都是不错的地方,2019/1/2,10,专业化、规范化、标准化、电子化,Linux下安装配置PPPoE服务器,安装 1.检查系统是否已安装PPPOE服务器 Rpm qal rp-pppoe 2.安装rp-pppoe Rpm ivh rp-pppoe-3.5-32.1.i386 3.配置系统以支持IP转发 修改/etc/sysctl.conf文件:net.ipv4.ip_forward = 1 命令sysctl p让修改立即生效,2019/1/2,11,专业化、规范化、标准化、电子化,Linux下安装配置PPPoE服务器,配置vi /etc/ppp/pppoe-server-options修改
10、/etc/ppp/pppoe-server-options,内容如下: require-pap #(使用pap验证协议,如果使用chap验证协议,则此行为 require-chap)login lcp-echo-interval 10 #(系统每隔10秒发出echo request以确认连线是否正常)lcp-echo-failure 2 #(如果两次echo request 失败,表示连线已断开)ms-dns 202.96.134.133 #(分配给客户端的DNS)ms-dns 202.96.128.68,2019/1/2,12,专业化、规范化、标准化、电子化,Linux下安装配置PPPoE服
11、务器,身份验证账户 chap认证:修改/etc/ppp/chap-secretspap认证 :修改/etc/ppp/pap-secrets修改chap-secrets或/etc/ppp/pap-secrets内容如下:# client server secret IP addresses用户名 远端用户名(一般为*) 密码 分配的IP地址,2019/1/2,13,专业化、规范化、标准化、电子化,PPPoE服务器启动,启动pppoe-server -I eth0 -L 192.168.0.1 -R 192.168.0.5 -N 10 -I eth0 指定pppoe服务器在那个网卡接口监听连接请求
12、 -L 192.168.0.1 指定pppoe服务器的ip地址。(注意:此IP地址不是网卡的IP地址,而是PPPOE服务器的虚拟IP) -R 192.168.0.5 pppoe服务器分配给客户端的IP地址,从192.168.0.5开始,递增 -N 10 指定最多可以连接pppoe服务器的客户端数量-S 指定服务名,2019/1/2,14,专业化、规范化、标准化、电子化,PPPoE服务器断开,断开可以使用pppoe ke “session”命令让PPPOE服务器主动发出PADT来断开某个拨号连接,2019/1/2,15,专业化、规范化、标准化、电子化,测试PPPoE客户端,一.PPPoE客户端正
13、常情况下的拨号 二.异常情况下1.PPPoE客户端物理线路断开后再接上的情况(断开时间小于6秒)2.PPP逻辑链路断开的情况(制造PPP客户端和服务器端的中间物理链路断开,如中间的交换机线路断开来模拟逻辑链路断开,大于客户端链路检测掉线时间)3.PPPoE服务器主动发送PADT断开链路的情况4.客户端/服务器端重启5.PPPoE客户端主动断开链路的情况使用loadrunner操作,测试PPPoE客户端反复 断开-拨号的能力(附loadrunner脚本,此脚本适用于R8路由器,在不同的产品上需要做相应的修改),2019/1/2,16,专业化、规范化、标准化、电子化,练习,练习安装LINUX虚拟机,配置PPPOE服务器要求:验证方式使用chap客户端分配IP地址的范围 20.20.20.2020.20.20.50PPPOE服务名为tendaRD 最多允许10个用户拨入配置tenda008用户拨入获取的IP地址为20.20.20.30,2019/1/2,17,专业化、规范化、标准化、电子化,腾达与你共同发展,谢谢大家!,