PPP_PPPoE和radius协议.ppt_第1页
PPP_PPPoE和radius协议.ppt_第2页
PPP_PPPoE和radius协议.ppt_第3页
PPP_PPPoE和radius协议.ppt_第4页
PPP_PPPoE和radius协议.ppt_第5页
已阅读5页,还剩73页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程编码PPP PPPoE及Radius协议 ISSUE2 0 主讲人 本课程主要介绍PPP PPPoE协议及Radius协议 前言 参考资料 学习完此课程 您将会 掌握PPP协议的基本原理掌握LCP协议和NCP协议数据报文的交换过程掌握PPPoE协议的基本原理掌握Radius协议的基本概念掌握Radius协议的工作过程掌握Radius包各个字段的含义 目标 第1章PPP协议第2章PPPoE协议第3章Radius协议 内容介绍 PPP协议的定义 PPP协议提供了一种标准的方式在点对点的链路上传输多种网络层协议的数据报 PPP协议与协议栈的对应关系 PPP协议 PPP协议简介 支持点到点的连接 不同于X 25 framerelay等数据链路层协议 具有CHAP PAP验证协议 更好的保证了网络的安全性 PPP的物理层既支持数据为8位和无奇偶校验的异步模式 还支持面向比特位的同步链接 如framerelay必须为同步电路 PPP有针对不同网络层的网络控制协议 如大家熟知的IPCP IPXCP 同样类似于SLIP协议 它也允许双方协商是否对报文首部进行压缩 PPP协议的特点 PPP协议的三组件 多协议数据报的封装方式PPP协议的链路控制协议LCPPPP协议的网络控制协议NCP 校验 标志 标志 地址 信息域 控制 协议域 1B 1B 2B 缺省1500B 7E FF 03 1B 2B 1B 7E PPP的数据帧格式 校验 IP数据报文 0 x0021 校验 LCP数据报文 0 xC021 校验 NCP数据报文 0 x8021 协议域长度为2个字节 主要用来指明信息域中使用的协议类型 该域的结构与ISO3309地址域扩展机制一致 PPP数据帧所承载的几种常见的报文 LCP报文 可选 由配置决定 PPP状态转移图 信息域 协议域 标识域 代码域 长度域 数据 长度域 类型域 数据 PPP封装格式 LCP数据报文的封装格式 LCP数据报文中配置参数选项的封装格式 0 xC021 LCP协议数据报文的格式 链路配置报文用来建立和配置一条链路 主要包括Configure Request Configure Ack Configure Nak和Configure Reject报文链路终止报文用来终止一条链路 主要包括Terminate Request和Terminate Reply报文链路维护报文用来管理和调试链路 主要包括Code Reject Protocol Reject Echo Request Echo Reply和Discard Request报文 LCP协议数据报文的分类 代码域 0 x01 0 x02 0 x03 0 x04 0 x05 0 x06 0 x07 0 x08 0 x09 0 x0A 0 x0B 0 x0C Configure Request Configure Ack Configure Nak Configure Reject Terminate Request Terminate Reply Code Reject Protocol Reject Echo Request Echo Reply Discard Request Reserved LCP协议数据报文的种类 代码域 0 x01 0 x02 0 x03 0 x04 0 x05 0 x06 0 x07 0 x08 Maximum Recive Unit Async Control Character Map Authentication Protocol Quality Protocol Magic Number Address And Control Field Compression Reserved Protocol Field Compression 配置参数选项的种类 类型域 1 2 Config Request Config Nak 路由器A 路由器B 3 4 Config Request Config Ack 链路配置报文 链路配置报文举例 假设点对点通信的一端发送了一个Config Request报文 报文内容如下 7EFF03C021010100170206000A00000506000B42CB070208020D03067E该数据报文中有下划线的配置参数选项的内容为对端不认可的 当对端正确接收到了该报文后 发现类型域为0 x02的配置参数选项可识别 但该配置参数选项数据域的内容不认可 应发送一个Config Nak报文且该报文中将携带希望的配置参数选项内容 报文内容如下 7EFF03C0210301000A0206000E00007E该报文中返回的值已经被更改 且当发端收到该报文后会重新发送一个Config Request报文 报文内容如下 7EFF03C021010400170206000E00000506000B42CB070208020D03067E仔细观察是不是新的配置请求报文与老的配置请求的报文ID不一样 当对端正确接收到了该报文后 应该回应一个Config Ack报文 报文内容如下 7EFF03C021020400170206000E00000506000B42CB070208020D03067E 多次交互 1 2 Config Request Config Reject 路由器A 路由器B 3 4 Config Request Config Nak 5 6 Config Request Config Ack 链路配置报文 四 链路配置报文举例 7EFF03C021010100170206000A00000506000B42CB070208020D03067E 假设点对点通信的一端发送了一个Config Request报文 报文内容如下 下划线所表示的配置参数选项为对端不可识别的 当对端正确接收到了该报文后 发现类型域为0 x02的配置参数选项不识别 应该回应一个Config Reject报文 报文内容如下 7EFF03C0210401000A0206000A00007E该报文如果被原发送端接收后 又会重新发送一个Config Request报文 报文内容如下 7EFF03C021010400110506000B42CB070208020D03067E这时我们能看到 类型域为02的配置选项在下一次的请求报文中被删除了 链路终止报文 Terminate Request Terminate Reply PPP封装 Config RequestID 1M 1 Config RequestID 1M 1 PPP封装 Config NakID 4M 2 Config NakID 4M 2 PPP封装 Config RequestID 2M 2 Config RequestID 2M 2 魔术字 MagicNumber 用户名 密码 接收 拒绝 PPP封装 路由器A 路由器B 被验证方 验证方 问题1 如图所示 路由器B作为验证方 而路由器A则作为被验证方 那么如何分别配置两个路由器 PAP认证 两次握手 回应 接收 拒绝 PPP封装 路由器A 路由器B 挑战 被验证方 验证方 问题2 如图所示 路由器B作为验证方 而路由器A则作为被验证方 那么如何分别配置两个路由器 CHAP认证 三次握手 IPCP IPXCP AppleTalk NCP协议的分类 点对点通信设备均设置了IP地址 我知道了 我的IP地址是192 168 0 1 路由器B 路由器A 192 168 0 1 192 168 0 2 我知道了 我的IP地址是192 168 0 2 IPCP静态地址协商 点对点通信的一方设置了IP地址 而另一方则通过从对端获取IP地址 这个地址不合法 用192 168 0 1这个地址吧 我的IP地址是0 0 0 0 路由器B 路由器A 192 168 0 2 我知道了 我的IP地址是192 168 0 2 我的IP地址是192 168 0 1 我知道了 IPCP动态地址协商 小结 一 PPP协议的三组件包括PPP协议的封装方式 LCP协议和NCP协议PPP协议是数据链路层协议 它的数据帧封装格式非常类似于HDLCPPP协议可通过协议域来区分数据域中净载荷的数据类型PPP协议通过LCP协议完成数据链路的配置和测试PPP协议通过NCP协议完成点对点通信设备之间网络层通信所需参数的配置 小结 二 魔术字可以在链路配置阶段被协商 数据报文可借助魔术字来检PPP链路是否存在环路PAP 密码认证协议 认证是二次握手 它是直接在网络上传送明文的用户名和密码 因此这种协议安全性不高CHAP 挑战性握手认证协议 认证是三次握手 它只在网络上传送验证方和被验证方的主机名 而并不传送密码 因此相比之处CHAP比PAP更安全PPP协议缺省的MRU是1500 而对于通信的双方可根据实际需要对MRU进行协商 小结 三 PPP协议的状态转移图包括链路不可用阶段 链路建立阶段 认证阶段 网络层协议阶段和链路终止阶段LCP协议依据报文的功能可分为链路配置报文 链路终止报文和链路维护报文LCP协议的链路配置报文主要是用来协商一些可选的配置参数选项LCP协议的链路终止报文主要是用来终止一条PPP链路LCP协议的链路维护报文主要是用来测试和调试PPP链路NCP协议主要负责网络层配置参数选项的协商 它包括 静态协商 和 动态协商 第1章PPP协议第2章PPPoE协议第3章Radius协议 内容介绍 PPP协议要求进行通信的双方之间是点到点的关系 不适于广播型的以太网和另外一些多点访问型的网络 于是就产生了PPPOoE协议 Point to PointProtocolOverEthernet 它不仅为使用桥接以太网接入的用户提供了一种宽带接入手段 同时还能提供方便的接入控制和计费 每个接入用户均建立一个独一无二PPP的会话 因此会话建立之前必需知道远端访问集中设备的MAC地址 PPPoE协议可通过发现协议来获取到 PPPoE协议概述 PPPoE协议分为发现阶段和PPP会话阶段 当主机希望开始一个PPPoE会话时 它首先要执行一个发现过程来识别对方的MAC地址 然后建立一个唯一的PPPoE会话ID PPPoE使用一个发现协议来解决这个问题 它是基于客户 服务器模型的 由于以太网的广播特性 在这个过程中主机 客户 能发现所有的访问集中器 服务器 并选择其中一个 根据所获信息在两者之间建立点对点的连接 当一个PPP会话被建立起来之后 就完成了PPPoE的整个发现阶段 发现阶段 PPPoE的会话阶段开始后 主机和访问集中器之间就依据PPP协议传送PPP数据 进行PPP的各项协商和数据传输 在这一阶段传输的数据包中必须包含在发现阶段确定的会话标识并保持不变 正常情况下 会话阶段的结束是由PPP协议控制完成的 但在PPPoE中定义了一个PADT包用来结束会话 主机或者访问集中器可以在PPP会话开始后的任何时候通过发送这个数据包来结束会话 会话阶段 目的地址 源地址 6字节 6字节 帧类型域 1500字节 净载荷 帧校验 4字节 以太网帧格式 2字节 以太网广播地址 PPPOE发现阶段 PPPOE会话阶段 以太网单播地址 主机以太网地址 主机以太网地址 0 x8863 0 x8864 数据区 数据区 数据帧校验 数据帧校验 PPPOE发现阶段以太网帧格式 PPPOE会话阶段以太网帧格式 PPPoE的帧格式 一 版本 类型 代码 会话ID 长度 净载荷 4 4 8 16 16 发现阶段承载一些标记 会话阶段承载PPP数据报文 PPPoE的帧格式 二 TAG 标记类型 16 标记长度 16 标记值 0 x0000 0 x0102 0 x0104 0 x0110 0 x0101 0 x0103 0 x0105 0 x0201 End of list AC Name AC Cookie Relay Session ID Service Name Service Name Error Host Uniq Verdor Specific 0 x0202 0 x0203 AC System Error Generic Error PPPoE的帧格式 三 PADI PPPOE发现初始报文 PADO PPPOE发现提供报文 PADR PPPOE发现请求报文 PADS PPPOE发现会话确认报文 PADT PPPOE发现终止报文 09 a7 07 65 19 PPPOE发现阶段数据报文分类 以太网 1 2 3 目标地址为广播地址0 xffffffff 源地址为主机的以太网地址 ETHER TYPE值为0 x8863 码值为0 x09 SESSION ID为0 x0000 TAG TYPE 有且仅有一个Service Name表明主机请求的服务 任何数量的其他TAG TYPE PADI报文长度不能超过1484个字节 为Relay Session IdTAG留空间 PADI报文 NetXRay抓包结果分析1 以太网 1 2 3 目标地址为主机以太网地址 源地址为接入集中器的以太网地址 ETHER TYPE值为0 x8863 码值为0 x07 SESSION ID为0 x0000 TAG TYPE 必须有一个含有接入集中器名字的AC NameTAG 必须有一个与收到的PADI相同的Service NameTAG和任意数量的其他Service NameTAG表明集中器可以提供的服务 PADO报文 NetXRay抓包结果分析2 以太网 1 2 3 目标地址为接入集中器的以太网地址 源地址为主机的以太网地址 ETHER TYPE值为0 x8863 码值为0 x19 SESSION ID为0 x0000 TAG TYPE 必须有一个类型为Service Name的TAG向集中器指明请求的服务 可以有任意数量的其他TAG PADR报文 NetXRay抓包结果分析3 以太网 1 2 3 目标地址为主机的以太网地址 源地址为接入集中器的以太网地址 ETHER TYPE值为0 x8863 码值为0 x65 SESSION ID为集中器指定的唯一的标识一个PPPOE会话的值 TAG TYPE 包含一个类型为Service Name的TAG 表明集中器提供给这个会话的服务 可以包含任意数量的其他TAG PADS报文 NetXRay抓包结果分析4 这个数据包可以在会话建立起来之后的任何时间由主机或集中器发出 目的地址为单一的以太网地址 ETHER TYPE值为0 x8863 码值为0 xa7 SESSION ID为要终止的会话的SESSION ID 不要求有TAG PADT报文 NetXRay抓包结果分析7 PPP净载荷 目的地址 目的地址 源地址 源地址 帧类型 0 x8864 版本 0 x1 类型 0 x1 代码 0 x00 会话ID 0 x1234 长度 0 x PPP协议域 PPPOE协议数据包中承载PPP的LCP报文 一旦PPPOE会话建立起来之后 主机与接入器之间就开始依据PPP协议传送PPP数据 所有的以太网帧都是单一地址的 此时 ETHER TYPE值为0 x8864 码值为0 x00 SESSION ID在整个会话过程中保持不变 PPPoE有效负载域里包含一个PPP数据包 会话阶段的PPPOE数据报文格式 NetXRay抓包结果分析5 NetXRay抓包结果分析6 小结 PPPoE协议包括PPPOE的发现阶段和PPPOE的会话阶段PPPoE的数据报文是被承载在以太网的数据域中进行传送的PPPoE的发现阶段会遇到PADI PADO PADR PADS和PADT五种报文PPPoE在发现阶段时 以太网协议域的值为0 x8863PPPoE在会话阶段时 以太网协议域的值为0 x8864 小结 第1章PPP协议第2章PPPOE协议第3章Radius协议 内容介绍 第3章Radius协议3 1RADIUS协议相关概念3 2RADIUS协议报文结构3 3NAS设备与Radiuserver对接实例 内容介绍 Radius的作用 Radius RemoteAuthenticationDialInUserService客户端负责将认证等信息按照协议的格式通过UDP包送到服务器 同时对服务器返回的信息解释处理 认证端口号 1645 1812计费端口号 1646 1813 Client Server结构 RADIUS的客户端通常运行于接入服务器 NAS 上 RADIUS服务器通常运行于一台工作站上 一个RADIUS服务器可以同时支持多个RADIUS客户 NAS RADIUS的通信是用 请求 响应 方式进行的 即 客户发送一个请求包 服务器收到包后给予响应 RADIUS的服务器上存放着大量的信息 接入服务器 NAS 无须保存这些信息 而是通过RADUIS协议对这些信息进行访问 这些信息的集中统一的保存 使得管理更加方便 而且更加安全 RADIUS服务器可以作为一个代理 以客户的身份同其他的RADIUS服务器或者其他类型的验证服务器进行通信 用户的漫游通常就是通过RADIUS代理实现的 Radius协议在协议栈中的位置 Radius是一种流行的AAA协议 同时其采用的是UDP协议传输模式 AAA协议在协议栈中位置如下 Radius协议 Radius协议选择UDP作为传输层协议 为什么使用UDP NAS和RADIUS服务器之间传递的一般是几十至上百个字节长度的数据 用户可以容忍几秒到十几秒的验证等待时间 当处理大量用户时服务器端采用多线程 UDP简化了服务器端的实现过程 TCP是必须成功建立连接后才能进行数据传输的 这种方式在有大量用户使用的情况下实时性不好 当向主用服务器发送请求失败后 还要必须向备用的服务器发送请求 于是RADIUS要有重传机制和备用服务器机制 它所采用的定时 TCP不能很好的满足 第3章Radius协议3 1RADIUS协议相关概念3 2RADIUS协议报文结构3 3NAS设备与Radiuserver对接实例 内容介绍 Radius协议包结构 Code域 包类型 1字节 Access Request 请求认证过程Access Accept 认证响应过程Access Reject 认证拒绝过程Accounting Request 请求计费过程Accounting Response 计费响应过程 Identifier域 包标识 用以匹配请求包和响应包 该字段的取值范围为0 255 协议规定 1 在任何时间 发给同一个RADIUS服务器的不同包的Identifier域不能相同 如果出现相同的情况 RADIUS将认为后一个包是前一个包的拷贝而不对其进行处理 2 Radius针对某个请求包的响应包应与该请求包在Identifier上相匹配 相同 Length域 整个包长度 包括 CodeIdentifierLengthAuthenticatorAttributes 加密以后你还能认出我来吗 Authenticator域 该验证字分为两种 1 请求验证字 RequestAuthenticator用在请求报文中 必须为全局唯一的随机值 2 响应验证字 ResponseAuthenticator用在响应报文中 用于鉴别响应报文的合法性 响应验证字 MD5 Code ID Length 请求验证字 Attributes Key Attributes域 Attribute 1 属性 长度为10字节 benladen 上网用户 张三上网地点 阿富汗 常用报文属性 属性值属性名称意义1User Name用户名2User Password用户密码3Chap PasswordChap认证方式中的用户密码4Nas IP AddressNas的ip地址5Nas Port用户接入端口号6Service Type服务类型Framed Protocol协议类型8Framed IP Address为用户提供的IP地址9Framed IP NetMask地址掩码 NAS Radius认证计费过程 Radius Access Request 2 Access Accept Access Reject 3 Accounting Response start 6 计费 端口 1813 NAS User dial in 1 configuser 4 disconnect 7 Accounting Request stop 8 Accounting Response stop 9 disconnectuser 10 第4章Radius协议4 1RADIUS协议相关概念4 2RADIUS协议报文结构4 3NAS设备与Radiuserver对接实例 内容介绍 BRAS与Radius对接测试用例 认证请求 code 1 0 18993140 AAA debug Packet sendradiuspacketto192 168 10 4 1812code 1id 19length 1027517009ba002018005a2000attribute 1 User name user1attribute 2 Password 0 x4d0 xa10 x110 xbe0 xa70 xc50 x1a0 xa40 x5b0 x290 xb10 xde0 x340 x110 x4c0 xf9attribute 6 User Service 0 x2attribute 7 Framed Protocol 0 x1attribute 4 NAS IP Address 0 xc0a80a0aattribute 32 NAS Identifier ESRattribute 127 Connect Id 0 xf00000e 0 18993750 AAA debug Packet attribute 61 NAS Port Type 0 x5attribute 128 Connect Port ESR 10000010032 vlan 认证响应 code 2 0 18993900 AAA debug Packet receiveradiuspacketfrom192 168 10 4 1812code 2id 19length 74184cac52e499a55f68ac8e233c70d75attribute 85 Realtime Interval 0 x258attribute 5 NAS Port 0 x1513dattribute 25 Class 128attribute 6 User Service 0 x2attribute 7 Framed Protocol 0 x1attribute 13 Framed Compression 0 x1attribute 10 Framed Routing 0 x1 0 18994520 AAA debug Packet attribute 11 Framed Filter 1 计费开始请求 code 4 0 18994810 AAA debug Packet sendradiuspacketto192 168 10 4 1813code 4id 20length 102ef31f35452717146a298d487ca8attribute 40 Acct Status Type 0 x1attribute 32 NAS Name ESRattribute 8 Framed Address 0 xa0a0a01 计费开始 计费响应 code 5 0 18995750 AAA debug Packet receiveradiuspacketfrom192 168 10 4 1813code 5id 20length 2018ce526ab7f503717416a5bc42c08a 实时计费包 实时计费之计费请求 code 4 0 169338370 AAA debug Packet sendradiuspacketto192 168 10 4 1813code 4id 31length 207e4677ff59decb482d615355deabdb0acattribute 40 Acct Status Type 0 x3attribute 25 Class 128attribute 32 NAS Name ESRattribute 8 Framed Address 0 xa0a0a01attribute 7 Framed Protocol 0 x1attribute 1 User name user1attribute 5 NAS Port 0 x28000060attribute 61 NAS Port Type 0 x5 实时计费之计费请求 code 4 attribute 7 Framed Protocol 0 x1attribute 42 Acct Input Octets 0 x7fd4 0 169339520 AAA debug Packet attribute 43 Acct Output Octets 0 x6174attribute 47 Acct Input Packets 0 x122attribute 48 Acct Output Packets 0 x10eattribute 52 Acct Input Gigawords 0 x0attribute 53 Acct output Gigawords 0 x0attribute 46 Acct Session Time 0 x12c 用户上传字节 用户下载字节 用户计费时长 计费结束 计费结束请求 code 4 0 19379310 AAA debug P

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论