基于PPPoE和虚拟专用网的多运营商链路共享认证方法
2015-01-04韦必忠胡启伟柴华昕
韦必忠,李 嘉,何 倩,胡启伟,柴华昕
(1.桂林电子科技大学计算机科学与工程学院,广西桂林 541004; 2.桂林电子科技大学信息与通信学院,广西桂林 541004)
基于PPPoE和虚拟专用网的多运营商链路共享认证方法
韦必忠1,李 嘉1,何 倩2,胡启伟2,柴华昕2
(1.桂林电子科技大学计算机科学与工程学院,广西桂林 541004; 2.桂林电子科技大学信息与通信学院,广西桂林 541004)
针对电信、联通、移动和校园网等多个网络运营商共存的大学校园,提出基于PPPo E和虚拟专用网的多运营商链路共享认证方法。设计统一的多运营商网络共享架构,实现了Windows和Linux多运营商拨号认证客户端。实验结果表明,该方法能够实现多运营商链路共享,具有较好的安全性能,可满足用户需求。
多运营商;PPPo E;VPN;网络共享架构;拨号认证客户端
在宽带接入技术中,以太网接入技术由于其价格低廉、速度快、效率高等优点,得到高校和其他用户的青睐。但是,传统以太网接入方式不能提供身份验证、按流量计费及IP地址管理等功能。为保留现有的以太网结构,弥补以太网在接入管理方面的缺点,以太网技术与PPP[1]协议的管理控制功能结合的PPPo E协议得到运营商的认可并广泛应用[2]。
PPPoE可以很好满足AAA认证要求,并且在管理控制、精确计费、网络安全等方面有诸多优点,在小区、学校等需要网络运营的场所得到广泛应用[3]。边永涛[4]将VLAN技术与PPPoE相结合,采用BRAS和RADIUS接入认证,完成了PPPoE在校园网中的部署,取得理想效果。
随着在校用户不断增多及对网络需求的多样化,校园网络在高校师生的学习、生活中占据越来越重要地位。校园宽带接入网络势必成为多家运营商的竞技场地,电信、联通、移动和校园网等多个网络运营商共存的模式越来越普遍。卢玉涛[5]提出一种多运营商共用一套接入服务器和宽带接入网络的方法,通过在接入服务器上建立多个PPPoE的IP地址段,给不同ISP用户分配不同的IP地址段,在服务器出口处依据IP将用户数据包转发到对应运营商的路由设备上,从而实现多运营商共用接入服务器和宽带接入网络的方法。北京城市热点采用二次认证的方式实现多运营商宽带认证[6]。以上2种方法虽然实现了多运营商拨号认证,却难以解决运营商共享链路和一次登录认证的问题,不利于统一管理和维护。
针对这个问题,采用PPPo E与VPN技术相结合,设计一种基于PPPoE的多运营商链路共享系统架构,实现多运营商拨号认证客户端。由此解决上述问题,使得校园组网模式简洁,避免了重复布线带来的线路复杂及维护困难问题,同时降低了各运营商成本,也方便学生根据服务质量及资费等选择不同的运营商,满足不同的上网需求。
1 PPPoE与网络认证
PPPoE即以太网上点对点协议提供在广播式网络如以太网中多台主机连接到远端访问集中器上的一种标准,是在以太网中传播PPP帧信息的技术[7]。PPPo E协议利用以太网将大量用户主机组成网络,通过远端接入设备连入因特网,可实现对每个接入主机的控制、计费功能。
基于PPPo E的以太网取代传统的PSTN,不仅与原有窄带用户接入认证体系一致,且具有以下优势[8-11]:沿袭Modem拨号方式,不改变用户的上网习惯;可动态分配IP地址,有效防止IP冲突;可实现用户与接入设备端到端连接,能有效进行用户隔离,从而防范病毒,如ARP攻击等;实现基于时间或流量的精准计费及基于账号的用户管理。
2 多运营商链路共享架构
2.1 多运营商链路共享需求分析
为满足学生不同需求,大学校园引入电信、联通、移动和校园网等多家运营商。但是,传统校园网络中各运营商分别建设、各自管理且线路铺设复杂,不便统一管理和维护。传统校园网基本网络拓扑如图1所示。
学校一般采用按流量计费策略,给看视频、下载等流量需求比较大的学生造成很大困扰。在共享学校资源和访问校园内部网络的时候又需要使用校园网,频繁切换网络给学生上网造成极大不便。针对这种情况,多运营商共享链路体现出巨大优势。共享链路有以下优点:
图1 传统网络拓扑图Fig.1 Traditional network topology
1)避免重复布线,节约运营商建设成本;
2)使用统一管理平台,方便管理和维护;
3)方便学生根据需求自由选择网络;
4)不会造成流量穿越;
5)可灵活扩展,便于引入新运营商。
2.2 多运营商链路共享架构设计
电信、移动、联通等网络运营商采用PPPoE网络认证协议,构建包括客户端、接入服务器、网桥的PPPoE引导系统。多个网络运营商用户在一条以太网链路上实现共享上网。多运营商引导系统各模块之间关系如图2所示。
图2 PPPoE引导系统Fig.2 PPPoE guidance system
客户端是PPPoE引导系统的入口,实现与用户的交互;接入服务器是连接客户端和网桥的中介,主要完成用户上网信息登记、客户端监控及对网桥的配置;网桥则实现对PPPo E发现阶段数据单元的引导工作。
用户通过多运营商客户端将连接请求消息发送到接入服务器。接入服务器首先根据与客户端之间的私有协议判定消息包是否正确或被篡改过;如果消息包正确,则开始进行拆包操作,判定消息包类型,并提取用户信息,根据提交的IP地址,得到对应的网桥地址,并发送放开消息请求给网桥,同时将用户信息如用户名、设备Mac、IP地址及运营商类型等信息存入数据库进行登记,更新登录时间。网桥将PPPo E握手消息转发给相应的运营商,并返回状态信息到接入服务器,然后客户端向不同运营商的PPPo E服务器发送登陆认证消息,从而实现多运营商共用链路。
用户选择需要接入的运营商,输入用户名和密码就可以连接网络,这与传统拨号上网方式类似,延续了用户的习惯,并能满足不同的上网需求。从运营商的角度来看,基于PPPoE协议实现多运营商拨号认证,对现存网络结构进行的变更也最小,很大程度上避免了运营商的重复投资,降低了运营商的运营成本。链路共享网络拓扑结构如图3所示。
图3 链路共享网络拓扑结构Fig.3 Link sharing network topology
实现多运营商链路共享需要解决用户流量穿越及运营商隔离问题。VPN技术通过公用网络建立一个临时的、安全的连接,是一条穿过混乱公用网络的安全、稳定隧道。在校园网中采用VPN网关技术既可以实现校园网与外网连接,也可以把校园网与Internet隔离。通过建立VPN通道,不同用户可在一个以太网上实现共享上网。使用PPPo E和VPN相结合设计的多运营商网络共享架构,用户在入网前借助校园网的DHCP服务器获取合法的私网地址,然后以L2TP(二层隧道协议)封装公网流量,同时加密用户私网的IP地址,利用VPN的标签来标识不同的运营商网络,在共享架构系统中实现对网络标签的修改,将用户请求由校园以太链路路由至运营商的LNS服务器,从而起到引导作用,实现与Internet互联。组网方式灵活,避免了额外敷设线路,只需在核心层设备上连接各运营商的LNS设备,对原有校园拓扑网络改动较小。
3 拨号认证客户端协议
拨号认证客户端是基于PPPoE和VPN的整个多运营商链路共享系统中非常重要的一个模块,是实现多运营商中客户端到服务器的链路建立和PPPo E拨号的关键。客户端应用程序将用户请求提交到接入服务器,并通过旁路网桥引导到不同的运营商。多运营商客户端工作流程如图4所示。
图4 多运营商客户端工作流程Fig.4 The procedure of multi-operators’client
客户端具体工作流程为:
1)用户登录客户端连接程序,选择需要接入的运营商,输入账号、密码。由客户端程序按照标准格式组装通信包发送请求消息到接入服务器,通信包格式如表1所示。其中:operator表示运营商编号;opt表示请求状态;checksum表示数据部分Hash值。
表1 通信包格式Tab.1 The format of communication packet
2)接入服务器首先判定消息包是否正确,若正确则进行拆包,并提取用户请求信息,同时向客户端回应已经放开,提示可向PPPoE服务器发送登陆认证消息。
选择2017年3—12月在新疆医科大学第一附属医院神经外科参与住院医师规范化培训学员54名,随机分为两组,PBL组采用PBL教学法,SBME-PBL组采用PBL结合SBME教学法,每组临床学习工作时间均为2个月。各组规培生在性别、年龄、规培前的理论考试成绩等方面差异均无统计学意义(P>0.05),详见表1。
3)客户端根据接入服务器的回应信息,向对应运营商的PPPo E服务器发送登录认证消息。
多运营商客户端功能模块如图5所示。
图5 多运营商客户端功能模块Fig.5 The function module of multi-operators’client
4 客户端实现
4.1 Windows拨号认证实现
Windows下采用Delphi实现客户端应用程序。具体步骤为:
1)在Delphi 7中编译添加Dialup控件,利用RAS实现Windows底层拨号,建立连接功能。
2)利用Windows辅助API模块iphlpapi.dll得到Adapter Info的信息,包括用户主机Mac、网关等地址信息,并按照通信包格式组装,通过UDP用户请求消息发送到接入服务器。
3)在接收到接入服务器的正确响应信息后,调用拨号函数Dial向PPPo E服务器发送登录认证消息,进而连接网络。
4.2 Linux拨号认证实现
Linux下基于rp-pppoe,采用C语言实现多运营商客户端到服务器的链路建立及PPPo E拨号。
考虑到完整实现PPPoE拨号比较复杂,通过Linux下开源拨号软件rp-pppoe实现底层拨号。具体实现步骤为:
1)进入rp-pppoe源码目录,修改src/scripts目录下pppoe-setup配置脚本,通过source命令将用户配置文件中自定义的变量导入pppoe-setup脚本,使其在程序执行过程中自动调用,无需用户进行繁琐设置。
2)使用ioctl获取IP、Mac等客户机信息,并通过Socket发送UDP通信包,将用户请求消息发送到接入服务器。
3)在接收到接入服务器的正确响应信息后,调用rp-pppoe的拨号程序向PPPoE服务器发送登录认证消息,进而连接网络。
5 实验分析
5.1 功能及界面
多运营商拨号认证客户端及测试如图6、7所示。用户选择需要接入的运营商,输入账号、密码之后进行信息配置并建立拨号连接,这样延续了传统拨号上网方式,用户容易接受。
图6 Windows拨号认证客户端Fig.6 Windows dial-up authentication client
图7 Linux拨号认证客户端Fig.7 Linux dial-up authentication client
5.2 安全分析
与传统拨号工具比较,多运营商拨号认证客户端实现了多运营商共用链路功能,在安全性方面也有一定优势。首先,客户端与接入服务器之间的私有通信协议包经过Hash值的保护,能防止协议包被窃取和篡改,从而保证用户信息安全。其次,接入服务器记录用户账号、IP、Mac等信息,并适时更新,若发现异常即通知网桥关闭链路并强制用户下线。最后,用户上线后,服务器通过心跳机制保持与客户机联系,如果规定时间内没有收到心跳包,则将用户下线,保证了用户正常使用网络,避免了用户由于异常断线而造成的损失,使客户端具有防破解功能。
5.3 客户端性能
实验在Windows XP/7/8及Linux版本等多个操作系统下进行测试。以Windows7及RHEL为例进行拨号测试并抽取10组数据。测试环境及拨号时间如表2和图8所示。
表2 实验环境参数Tab.2 The parameters of experimental environment
图8 拨号认证时间Fig.8 Dial-up authentication time
经过测试,Win7下单次拨号时间为1.8 s,Linux下单次拨号时间为2.4 s,程序内存消耗分别为2948 kB和2028 k B。由于用户机配置及网络状况不同,拨号时间会有相应差异。在Linux下有配置文件的读写,也会对拨号时间造成影响。
6 结束语
校园中普遍存在多个不同运营商网络,传统运营商接入认证及接入方式繁琐不统一,难以实现多运营商链路共享,容易造成重复建设,也不利于学校统一管理。针对电信、移动、联通和校园网等多个网络运营商共存模式,基于PPPo E和VPN设计了统一的多运营商网络共享架构,实现多运营商拨号认证客户端,使师生能够根据需求方便地在校园网和运营商之间切换使用,不用更换线路,从而满足不同用户的上网需求。系统已经在多家校园网得到应用,具有广阔应用前景。
[1] Simpson W.The point-to-point protocol(PPP)[EB/ OL].(1994-07-05)[2015-02-15].http://tools.ietf.org/ html/rfc1661.
[2] Mamakos L,Lidl K,Evarts J,et al.A method for transmitting PPP over ethernet(PPPoE)[EB/OL].(1999-02-10)[2015-02-15].http://tools.ietf.org/html/ rfc2516.
[3] 乐德广,郭东辉,吴伯僖.PPPoE技术及其在宽带接入系统中的应用[J].计算机应用研究,2003,20(3):130-132. [4] 边永涛.PPPo E在校园网中的应用[J].计算机与信息技术,2008,26(8):47-50.
[5] 卢玉涛.一种多运营商共用一套接入服务器和宽带接入网络的方法[P].中国专利:CN101699810A,2010-04-28.
[6] 北京城市热点资讯有限公司.高校多运营商共建模式下宽带认证计费系统技术建议书[EB/OL].(2014-05-20) [2015-02-15].http://www.doc88.com/p-3887916979403. html.
[7] 李健,刘俊民,王晓明,等.一个安全宽带接入系统的建立[J].计算机工程,2012,38(6):126-128.
[8] 周俊杰.校园网中三种常用认证计费技术的对比分析[J].网络安全技术与应用,2009,29(9):47-49.
[9] 廖春盛,梁卓明.PPPoE协议及其在校园网络中的应用[J].华南师范大学学报:自然科学版,2003,35(2):34-39.
[10] 肖媛娥,康永平.校园网中PPPo E上网方式的设计与实现[J].电脑知识与技术,2009,16(25):7118-7119.
[11] 杨岿,刘尧辉.校园网PPPo E和802.1x认证方式的对比[J].微计算机信息,2012,25(9):359-361.
编辑:翁史振 见习编辑:陈汝伟
A multi-operators sharing links authentication method based on PPPoE and virtual private network
Wei Bizhong1,Li Jia1,He Qian2,Hu Qiwei2,Chai Huaxin2
(1.School of Computer Science and Engineering,Guilin University of Electronic Technology,Guilin 541004,China;2.School of Information and Communication Engineering,Guilin University of Electronic Technology,Guilin 541004,China)
The traditional operators’access authentication methods are hard to realize the link sharing of multi-operators.According to the university campus with multiple network operators including Telecom,Unicom,Mobile and local network,an authentication method based on PPP over Ethernet(PPPoE)and virtual private network(VPN)is proposed to share a same link for multiple network operators.A uniform network sharing architecture for multi-operators is designed and the multioperators dial-up authentication client programs for Windows and Linux are realized.Experimental results show the method has good secure performance and meets requirements of different users.
multi-operators;PPPoE;VPN;network sharing architecture;dial-up authentication client
TP393
:A
:1673-808X(2015)04-0340-05
2015-03-17
国家自然基金(61201250,61163057,61163058);国家科技支撑计划(2012BAH18F00);广西自然科学基金(2012GXNSFBA053174)
韦必忠(1972―),男,广西来宾人,副教授,研究方向为计算机应用技术、图象处理与模式识别、数据挖掘。E-mail:wbz@guet.edu.cn
韦必忠,李嘉,何倩,等.基于PPPoE和虚拟专用网的多运营商链路共享认证方法[J].桂林电子科技大学学报,2015,35(4):340-344.