在Linux下建立PPPOE服务器的步骤
pppoe服务器简介

一、PPPoE简介PPPoE(Point-to-Point Protocol over Ethernet),即以太网上的点对点协议,它可以使以太网上的主机通过一个简单接入设备连到Internet上,并对接入的用户进行控制、计费管理。
PPPoE协议采用Client/Server(客户端/服务器)方式,它将PPP报文封装在以太网帧内,在以太网上提供点对点的连接。
二、PPPoE连接PPPoE拨号连接包括Discovery(发现)和Session(PPP会话)两个阶段。
下面将分别介绍这两个阶段。
1、Discovery阶段此阶段用来建立连接,当一个用户主机想开始一个PPPoE会话时,首先必须进行发现阶段以识别PPPoE Server的以太网MAC地址,并建立一个PPPoE会话标识(Session ID)。
图1-1 Discovery阶段的基本工作流程如图1-1所示,Discovery阶段由四个步骤组成,下面将介绍它的基本工作流程。
∙l PADI:如果要建立一条PPPoE连接,首先PPPoE客户端就要以广播的方式发送一个PADI(PPPoE Active Discovery Initiation)数据包,PADI数据包包括客户端请求的服务。
∙PADO:当PPPoE服务器收到一个PADI包之后,它会判断自己是否能够提供服务,如果能够提供服务的话,就会向客户端发送PADO(PPPoE Active Discovery Offer)数据包来进行回应。
PADO1、PPPoE服务器全局配置图1-1 PPPoE服务器全局配置启用PPPoE服务器:启用/禁用设备的PPPoE服务器功能,选中为启用,且必须启用后才能对其中的参数进行配置;起始IP地址:PPPoE服务器给局域网计算机自动分配的起始IP地址;总地址数:PPPoE服务器可以分配的地址总数量;主DNS服务器:PPPoE服务器给局域网计算机自动分配的主用DNS服务器的IP地址;备DNS服务器:PPPoE服务器给局域网计算机自动分配的备用DNS服务器的IP地址;密码验证方式:PPPoE验证用户名和密码的方式,HiPER提供PAP、CHAP以及AUTO三种验证方式,默认值为AUTO,表示系统自动选择PAP和CHAP中的一种对拨入用户进行身份验证,一般情况下不需要设置;系统最大会话数:系统支持建立PPPoE会话的最大数量,取值范围视具体的产品型号而定;保存:PPPoE服务器全局配置参数生效;重填:恢复到修改前的配置参数。
Linux下搭建一个支持IPv6的PPTPVPN

Linux下搭建一个支持IPv6的PPTPVPN
自从上次成功的搞定Linux下的IPv6隧道以后,我一直在想还能怎么玩这个/48的路由。
前几天某人需要一个国内的VPN,于是在搭建VPN的时候研究了一下如何在VPN上分配IPv6地址。
现在吧过程记录如下:
1.安装一个普通的PPTP VPN,不会的自己去Google,其实不只是PPTP,L2TP或者其他基于pppd的隧道都可以使用下面的方法支持IPv6
2.编辑相应的pppd options文件,比如pptpd的是/etc/ppp/pptp-options,添加下面的选项:
ipparam pptpd
ipv6 ,
注意ipv6后面是空格和逗号
3.安装radvd,从下载tdhcpd
4.新建文件夹/etc/ppp/ipv6-radvd,新建文件/etc/ppp/ipv6-up.d/radvd:
CODE:
的/64地址,但是注意一定要/64的,我试过更小的地址段都不成功,可能是客户端做自动分配地址时是需要使用EUI-64的原因吧。
另外最后的nsupdate那段如果不需要修改dns记录或者根本就没有DNS服务器就可以去掉,不影响。
5.然后是/etc/ppp/ipv6-down.d/radvd:
CODE:
Windows Vista以上)获取IPv6地址了,另外需要注意的是如果有内网的话记着添加相应的路由记录,比如我使用OSPFv3路由重分发参考资料:。
建立与使用PPPoE拨号的方式

建立与使用PPPoE拨号的方式
行政人事部
本文主要介绍在Windows XP以及Windows 7操作系统下利用系统自带拨号程序建立和使用PPPoE拨号的方法,其他操作系统(如Windows 2000/Linux/Mac OS等)的拨号方式请咨询网络管理员。
一、Windows XP下建立宽带拨号连接的方式:
a)依次打开“控制面板”——“网络连接”
b)点击“网络连接”左边的“创建一个新的连接”,如下图:
c)在弹出的窗口中点“下一步”,在“网络连接类型”点“连接到Internet”,
然后点“下一步”。
d)选择“用要求用户名和密码的宽带连接来连接”:
e)接下来的两个窗口都可以随便选择,如下图:
f)输入网络管理员分配的用户名和密码,如下图
g)选择“在我的桌面上添加一个到此连接的快捷方式”,最后按“完成”
以后在桌面上点击刚刚建立的宽带连接图标即可拨号上网(打开后点下图的“连接”按钮:
二、在Windows 7下建立宽带拨号连接的方式:
a)点击桌面右下方托盘的网络小图标,再点“打开网络和共享中心”
b)点“设置新的连接或网络”
c)选第一项“连接到Internet”
d)点“宽带(PPPoE)使用需要用户名和密码的DSL或电缆连接。
”
e)输入用户名和密码,勾选“记住此密码”,然后点“连接”
f)连接成功!点关闭
g)日后可以点桌面右下角网络小图标,再选择刚刚建立的宽带连接连接到公司宿舍的网络,如下图:。
(完整版)LINUXPPPOEV6服务器搭建测试

linux搭建ipv6的pppoe server端近期在做PPPOEV6的测试,就尝试着在linux搭建pppoe相关软件,主要是开源软件ppp-2.4.5和rp-pppoe-3.8以下是对网上资料的整理,跳过很多人写的乱七八糟的COPY,完全按下面步骤走就可以了网络架构pc------------router---------serverPC: WIN7ROUTER:dlink 860lbServer:DEBIAN 5(这个安好就自带了ppp rp-pppoe,但下面我还是讲下如何用GZ来安,你可以用apt-get autoremove ppp pppoe 将它删了)如何查看是否安好了,用dpkgdebian:/etc/ppp# dpkg -l | grep ppprc ppp 2.4.5-4 Point-to-Point Protocol (PPP) - daemonrc pppoe 3.8-3 PPP over Ethernet driverdebian:/etc/ppp# dpkg --get-selections | grep pppppp deinstallpppoe deinstall如上,系统自带的被我删了,然后我自己装了这2个软件1.下载ppp-2.4.5.tar.gz、rp-pppoe-3.8.tar.gz2.安装a.将ppp、rp-pppoe解压b.安装pppdcd ppp-2.4.5/pppdvi Makefile.linux开启HAVE_INET6=y // 关键点,不然不支持IPV6cd ppp-2.4.5./configure(备注:先make clean一下,确保HAVE_INET6开启)makemake installc.安装rp-pppoecd rp-pppoe/src./configure --enable-plugin=/opt/ppp-2.4.5 //这句好像没什么意义makemake install3.修改配置文件vim /etc/ppp/pppoe.conf修改下面几个值,其他的不要动ETH=eth0USER=rp-pppoe //拨号用户名LINUX_PLUGIN=/etc/ppp/plugins/rp-pppoe.sovim /etc/ppp/pppoe-server-options下面是全部内容# PPP options for the PPPoE server# LIC: GPLrequire-chap //表示会用到chap-secrets文件#loginlcp-echo-interval 10lcp-echo-failure 2+ipv6ipv6 ::1,::2SERVER会分到一个FE80::1/10的地址,ROUTER会分到一个FE80::2/10的地址,然后我们需要配置dibbler才能让ROUTER拿到GLOBAL地址vim /etc/ppp/chap-secrets# Secrets for authentication using CHAP# client server secret IP addressesrp-pppoe * rp-pppoe *用*代替地址,这个表是CHAP认证的账号和密码对照表,所以实际上我们拨号的账号密码都是rp-pppoevim optionslocal4. 开启server端pppoe-server -I eth05.页面和配置效果PPPOEV6 ONLY拨号成功以后可以看到PPP0 分配了一个本地地址FE80::2/10ppp0 Link encap:Point-to-Point Protocolinet6 addr: fe80::2/10 Scope:LinkUP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1RX packets:7 errors:0 dropped:0 overruns:0 frame:0TX packets:17 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:3RX bytes:196 (196.0 B) TX bytes:1291 (1.2 KiB)但是我们还没有拿到GLOBAL地址,所以我们需要在debian上跑radvd和dibbler来给PPP 接口分配地址1.STATELESS的情况,这种模式下只跑RADVD就可以了,RADVD的配置文件如下Vim /etc/radvd.confinterface ppp0{AdvSendAdvert on;MinRtrAdvInterval 3;MaxRtrAdvInterval 10;AdvDefaultPreference high;AdvHomeAgentFlag off;IgnoreIfMissing on; //这个很关键AdvManagedFlag off; //这个很关键AdvOtherConfigFlag off; //这个很关键prefix 2001::/96{AdvOnLink on;AdvAutonomous on; //让PPP接口根据PREFIX生成地址AdvRouterAddr on;};RDNSS 2001::1 2001::2{AdvRDNSSPreference 8;AdvRDNSSLifetime 30;};};然后看效果,GLOBAL地址成功分配ppp0 Link encap:Point-to-Point Protocolinet6 addr: 2001::2/64 Scope:Globalinet6 addr: fe80::2/10 Scope:LinkUP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1RX packets:47 errors:0 dropped:0 overruns:0 frame:0TX packets:13 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:3RX bytes:5452 (5.3 KiB) TX bytes:1439 (1.4 KiB)cat /etc/resolv.conf# Auto-Generatednameserver 192.168.0.1search但是RDNSS没有解析成功,没拿到DNS地址,看来只有换STATEFUL模式2.STATEFUL模式,既要配置RADVD又要配置DIBBLERVim /etc/radvd.conf 注意红色部分的不同interface ppp0{AdvSendAdvert on;MinRtrAdvInterval 3;MaxRtrAdvInterval 10;AdvDefaultPreference high;AdvHomeAgentFlag off;IgnoreIfMissing on;AdvManagedFlag on;AdvOtherConfigFlag on;prefix 2001::/96{AdvOnLink on;AdvAutonomous off;AdvRouterAddr on;};RDNSS 2001::1 2001::2{AdvRDNSSPreference 8;AdvRDNSSLifetime 30;};};红色部分意思是RADVD不分配地址,用DIBBLER来分,原理就是协议上规定的M和O值Vim /etc/dibbler/server.conf# Logging level range: 1(Emergency)-8(Debug)log-level 8# Don't log full datelog-mode short# set preference of this server to 0 (higher = more prefered)preference 0iface "ppp0" {// also ranges can be defines, instead of exact valuest1 1800-2000t2 2700-3000prefered-lifetime 3600valid-lifetime 7200class {pool 2000::/64}# assign temporary addresses from this poolta-class {pool 3000::/96}#assign /96 prefixes from this poolpd-class {pd-pool 3000:458:ff01:ff03:abcd::/80pd-length 96}option dns-server 2000::ff,2000::fe}有时候会发生不回报文的问题,红色部分ppp0 表示在这个接口上跑dibbler然后我将ppp0改成eth0,居然成功了,但第二次失败,又改回ppp0,成功,后来我发现原来是因为PPP0接口建立之前带DIBBLER会不能通信,必须在PPP0建立后把DIBBLER带起来,这个BUG看来需要自己研究配置文件才行了,暂时放着成功以后分得GLOBAL地址ppp0 Link encap:Point-to-Point Protocolinet6 addr: 2000::ea5c:2de2:713e:a561/96 Scope:Globalinet6 addr: fe80::2/10 Scope:LinkUP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1RX packets:56 errors:0 dropped:0 overruns:0 frame:0TX packets:16 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:3RX bytes:6847 (6.6 KiB) TX bytes:1806 (1.7 KiB)DNS也分到了# cat /etc/resolv.conf# Auto-Generatednameserver 2000::ffnameserver 2000::fenameserver 192.168.0.1search~~~~~~~~~~~~分割线~~~~~~~~~~~~~~~~~~~这个ROUTER还支持pppoev4 share pppoev6SERVER的参数有点不一样,其它都一样,主要是给一个IPV4的地址pppoe-server -I eth0 –L 10.10.10.10 -R 10.10.10.11拨号成功以后PPP0接口会既有IPV4地址又有IPV6地址,非常有意思ppp0 Link encap:Point-to-Point Protocolinet addr:10.10.10.13 P-t-P:10.10.10.10 Mask:255.255.255.255inet6 addr: 2001::2/64 Scope:Globalinet6 addr: fe80::2/10 Scope:LinkUP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1RX packets:27 errors:0 dropped:0 overruns:0 frame:0TX packets:28 errors:0 dropped:0 overruns:0 carrier:0collisions:0 txqueuelen:3RX bytes:2544 (2.4 KiB) TX bytes:2014 (1.9 KiB)但是SERVER这边没有GLOBAL地址,我们可以自己配一个Debian:/#ip -6 addr add 2001::1/64 dev ppp0加路由Debian:/#ip -6 route add 3001::1/64 via 2001::1;。
PPPoE拨号流程

PPPoE拨号流程PPPoE(Point to Point Protocol over Ethernet,基于以太网的点对点协议)的工作流程包含发现(Discovery)和会话(Session)两个阶段,发现阶段是无状态的,目的是获得PPPoE终端(在局端的ADSL设备上)的以太网MAC地址,并建立一个惟一的PPPoE SESSION-ID。
发现阶段结束后,就进入标准的PPP会话阶段。
1.发现阶段(PPPoED:PPPoE Discovery)1.1 PADI(PPPoE Active Discovery Initiation)主机广播发起分组,分组的目的地址为以太网的广播地址 0xffffffffffff,CODE(代码)字段值为0×09(PADI Code),SESSION-ID(会话ID)字段值为0x0000。
PADI分组必须至少包含一个服务名称类型的标签(Service Name Tag,字段值为0x0101),向接入集中器提出所要求提供的服务。
1.2 PADO(PPPoE Active Discovery Offer)接入集中器收到在服务范围内的PADI分组,发送PPPoE有效发现提供包分组,以响应请求。
其中CODE字段值为0×07(PADO Code),SESSION-ID字段值仍为0x0000。
PADO分组必须包含一个接入集中器名称类型的标签(Access Concentrator Name Tag,字段值为0x0102),以及一个或多个服务名称类型标签,表明可向主机提供的服务种类。
PADO和PADI的Host-Uniq Tag值相同。
1.3 PADR(PPPoE Active Discovery Request)主机在可能收到的多个PADO分组中选择一个合适的PADO分组,然后向所选择的接入集中器发送PPPoE有效发现请求分组。
其中CODE字段为0x19(PADR Code),SESSION_ID字段值仍为0x0000。
linux下搭建pppoe服务器

linux下搭建pppoe服务器Linux 系统服务器配置文档—《PPPoE 篇》一、简介1.1. 什么是 PPPoE?PPPoE 即Point to Point Protocol over Ethernet的简称,即基于以太网的点对点协议。
最初由IETF在的RFC 2516中定义。
1998年后期问世的以太网上点对点协议(PPP over Ethernet)技术是由Redback 网络公司、客户端软件开发商RouterWare公司以及Worldcom子公司UUNET Technologies公司在IETF RFC的基础上联合开发的。
通过把最经济的局域网技术以太网和点对点协议的可扩展性及管理控制功能结合在一起,网络服务提供商和电信运营商便可利用可靠和熟悉的技术来加速部署高速互联网业务。
它使服务提供商在通过数字用户线、电缆调制解调器或无线连接等方式,提供支持多用户的宽带接入服务时更加简便易行。
同时该技术亦简化了最终用户在动态地选择这些服务时的操作。
1.2. PPPoE 应用PPPoE 基于以太网的点对点协议,当前的 PPPOE 主要被 ISP用于 xDSL 和cable modems 与用户端的连接,他们几乎与以太网一样。
PPPoE 是一种标准的点对点协议(PPP),他们之间只是传输上的差异:PPPoE 使用 modem 连接来代替普通的以太网。
一般来说, PPPoE 是基于与用户认证和通过分发 IP 地址给客户端。
一个PPPoE 连接由客户端和一个访问集线服务器组成,客户端可以是一个安装了PPPoE协议的电脑。
PPPoE 客户端和服务器能工作在任何以太网等级的网络接口上。
除了应用于modem与用户端的连接之外,也常用于在LAN接入方式的宽带环境中用户端接入。
1.3. PPPoE 软件的选择PPPoE 实现包含两个主要的软件包:ppp-2.4.2-6.4.RHEL4官方网站:rp-pppoe-3.5-22官方网站:/penguin/pppoe/为了使PPPoE支持mppe加密方式的客端端接入,因此需加入mppe支持。
linux中PPP、PPPoE连接管理命令

linux中PPP、PPPoE连接管理命令实例:每间隔5秒钟,显示2次PPP网络连接状态信息,执行命令:[root@localhost ~]# pppstats –w 5 –c 2管理PPP连接——pppdpppd [参数][终端设备名称(tty_name)][速率]实例1:执行pppd命令建立PPP连接。
执行如下命令手动建立ppp连接,测试拨号能否成功。
[root@localhost ~]# pppd debug lock modem crtscts defaultroute /dev/ttyS0 115200&然后在另外一个控制台上运行如下命令,动态地观察各种日志信息,包括pppd的调试信息。
[root@localhost ~]# tail -f /var/log/messages实例2:执行pppd命令建立PPP连接,并将日志信息保存到ppp.log文件中。
执行如下命令手动建立ppp连接,测试拨号能否成功:[root@localhost ~]# pppd noauth /dev/ttyS0 logfile ppp.log 执行命令查看日志信息:[root@localhost ~]# cat ppp.log转换PPP记录文件——pppdumppppdump [参数] [文件…]实例:将pppd生成的ppptest.log文件,转换为可读性较强的格式。
首先使用pppd命令生成文件ppptest.log:[root@localhost ~]# pppd noauth logfile ppptest.log然后使用pppdump命令进行格式转换:[root@localhost ~]# pppdump ppptest.log串行口通信程序——minicomminicom [参数] [配置文件]实例1:通过串口通信,直接传输8位字节。
执行命令:[root@localhost ~]# minicom -8系统将会首先执行初始化调制解调器的过程。
--Linux搭建局域网代理服务器

Linux搭建局域网代理服务器信息安全03-1班张川王孟玉〖摘要〗本文是linux作为寝室代理服务器的一个实现,力求让普通用户在阅读此文后能快速搭建一个实用且高效的linux代理服务器。
文中介绍了关于nat技术和iptables的一些基本概念,以及怎样在linux下通过nat技术代理内网用户上网及发布内网服务等。
〖关键字〗Linux Slackware iptables 发行版〖Summary〗This article is a linux Be a realization of the bedroom proxy server, try hard for to let the common customer be able to build quickly after read this text a practical and efficiently of linux proxy server.It introduced some basic concepts concerning the nat technique and the iptables in the text, and how pass the nat technique to act for to get to the Internet and release inside the net customer under the linux etc. is inside the net service.〖Key word〗Linux Slackware Iptables distribution正文:1.代理服务器:1.1代理服务器概述代理服务器(Proxy Server)是运行特定服务器程序的计算机。
代理服务器拥有两个网络接口,一个接口用于连接Internet,另一个接口则用于连接内部网络。
代理服务器能够对Internet保护内部IP地址,只有运行Proxy Server的计算机的IP地址才是在Internet 中可见的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
在Linux下建立PPPOE服务器的步骤建立环境:操作系统:DEBIAN 2.2 升级到3.0内核:2.4.18硬件环境:赛扬3 1.1G ,内存 128M ,硬盘 40G ,主板芯片组 694T显卡:ATI RAGE IIC(4M)PPPOE服务器:RP-PPPOE 3.4.1RADIUS服务器:FREERADIUS 0.8数据库: MYSQL 3.23.56PPPOE服务器认证的建立分三种认证方式,第一种方式为用RP-PPPOE 自带的基于文本认证方式,第二种方式为建立在RADIUS认证服务器上的文本认证方式,第三种方式是基于MYSQL的数据库认证方式一、编译内核要建立PPPOE服务器,除了内核要支持PPP以外还需要内核支持PPPOE,不过在2.4.18里需要打开内核的不成熟代码才可以选择,内核的配置如下:code maturity level options——>∙ prompt for development and/or incomplete code/driversnetworking options——>∙ packet socket∙ packet socket:mmapped ionetwork device support——>∙ ppp (point-to-point protocol) support∙ ppp multilink support (experimental)∙ ppp filtering∙ ppp support for async serial ports∙ ppp support for sync tty ports∙ ppp deflate compression∙ ppp bsd-compress compression∙ ppp over Ethernet (experimental)character devices——>∙ non-standard serial port support∙ hdlc line discipline support编辑/etc/modules.conf(redhat好象是conf.modules),如果没有就加入以下几行:• alias char-major-108 ppp_generic• alias /dev/ppp ppp_generic• alias tty-ldisc-3 ppp_async• alias tty-ldisc-13 n_hdlc• alias tty-ldisc-14 ppp_synctty• alias ppp-compress-21 bsd_comp• alias ppp-compress-24 ppp_deflate• alias ppp-compress-26 ppp_deflate完成以后就可以下一步,建立PPP拨号服务器了二、建立PPP服务器在建立拨号服务器之前,应确保你在内核中打开了IP转发功能:echo “1”>/proc/sys/net/ipv4/ip_forward编译PPP服务器很容易,就是按以下几步就可以了:•使用configure•使用make编译PPPD,这里有几个参数比较重要,要支持windows的客户端,应该在编译时加上选项USE_MS_DNS=1,如果你的系统shadow的话,你应该使用make HAS—SHADOW=1表示支持shadow密码•编译完成后,将生成pppd、pppdump、chat和pppstats这几个文件,使用make install安装这些文件•修改pppd的访问权限,允许由root启动服务进程chmod u+s /usr/sbin/pppd三、建立PPPOE服务器cd /rp-pppoe-3.4/src./configuremakemake install启动PPPOE进程:pppoe-server –L 10.0.0.1 –R 10.0.0.2 –N 64 –k -u-L: 指定PPPOE服务器的IP地址-R:指定PPPOE拨入服务器分配给客户端的IP地址段-N:允许客户端同时拨入的数量(默认是64 最大是65534)-k: 使用内核方式(不过好象无法使用)修改/etc/ppp/options,查看有没有以下几行,没有就加进去:localrepaire-paploginauthdefaultroutehide-passwordipcp-accept-localipcp-accept-remote10.0.0.1:10.0.0.255netmask 255.255.255.0ms-dns 10.0.0.1修改/etc/ppp/pppoe-server-options,将所有的行都注释掉添加用户到/etc/ppp/pap-secrets中,例如添加用户luo,密码为123456,允许从任何位置拨入:#client server secret ip addressesluo * “123456” *设置windows的用户名:luo 密码: 123456,如果连接成功就可以进行下一步四、建立RADIUS认证服务器cd /freeradius-0.81./configuremakemake install编辑/usr/local/etc/raddb/clients,输入你的NAS(网络认证服务器)的IP 地址和serect,本例中NAS为本机,serect为linux,看上去如下:localhost linux编辑/usr/local/etc/raddb/clients.conf,加入以下几行:client 127.0.0.1{secret = linuxshortname = localhost}nastype = other编辑/usr/local/etc/raddb/naslist,加入:localhost local编辑/usr/local/etc/raddb/users,加入用户:luo、密码:123456,显示如下:luo Auth-Type:=local, User-Password==“123456”Service-Type:= Framed-User,Framed-Protocol = PPPFramed-IP-Address := 10.0.0.2Framed-IP-Netmask := 255.255.255.0启动RADIUS服务、测试帐号启动调试模式RADIUS –X进行帐号测试Radtest luo 123456 localhost 0 linux如果能看到应答,说明RADIUS设置成功了要使PPPD进程能够使用RADIUS进行认证,需要加入RADIUS认证的插件cp radius.so /usr/lib编辑/etc/ppp/options,加入以下到文件:plugin /usr/lib/radius.soradius-servers localhost:1812/1813radius-auth-key linuxradius-ip-pool 10.0.0.2:10.0.0.255运行客户端进行登陆,如果能通过认证则成功了五、建立MYSQL服务器tar zxvf mysql-3.23.56.tar.gzcd mysql-3.23.56./configuremakemake installcd script./mysql_install_db/usr/local/bin/safe_mysqld&安装RADIUS数据库cd freeradius-0.81/src/modules/rlm_sql/drivers/rlm_sql_mysql mysql –u root –p 密码 radius<db_mysql.sql编辑/usr/local/etc/raddb/radius.conf使其支持SQL,修改后如下:authorize{preprocesschapmschapsuffixsql}accounting{……sql……}修改sql.conf,如下所示:server="loclahost" login="root" password="mysql的root的密码"加入组帐号mysql –u root –p 密码 radiusinsert into radgroupreply (groupname,attribute,op,value) values(‘user’,’Auth-Tyep’,’:=’,’local’);insert into radgroupreply (groupname,attribute,op,value) values(‘user’,’Service-Type’,’:=’,’Framed-User’);insert into radgroupreply (groupname,attribute,op,value) values(‘user’,’Framed-IP-Netmask’,’:=’,’255.255.255.0’);#设定拨入用户的掩码,本例只有PPPOE服务,所以可以与options中设定相同加入用户帐号:insert into radcheck (username,attribute,op,value) values(‘luo’,’User-Password’,’:=’,’123456’);将用户帐号加入组帐号insert into usergroup(username,groupname) values(‘luo’,’user’); 如果提示无法找到rlm_sql_mysql文件,则:cp /usr/local/lib /usr/lib测试:radtest luo 123456 localhost 0 linux见到应答就OK了!。