Linux下PPPoE Server测试环境搭建
1.1 服务器软件安装
安裝PPPoE Server 所需的软件:
- 安装ppp模块:
sudo apt-get install ppp //一般默认下已安装
- 安装rp-pppoe,从网络上下载安装包后拷贝到任意路径下,本文使用rp-pppoe-3.11版本:
sudo tar zxvf rp-pppoe-3.11.tar.gz //解压安装文件到当前路径,解压后ls可以看到当前路径下多出了一个rp-pppoe-3.11的文件夹
sudo chown -R root:root rp-pppoe-3.11 //改变文件属性
- 安裝软件开发函数库:
sudo apt-get install libc6-dev
- 生成需要的pppoe server程序

进入设置项页面后,这基本上不需要设置什么,直接回车,到防火墙选择项时选择0(即不需要防火墙):

到此软件安装完成。
1.2 配置
进入配置文件路径 :

- 配置option文件,编辑修改如下(基本取消红色项的注释符就可以了):
------------------/etc/ppp/options-----------------------------
ms-dns 202.106.0.20 //设置DNS
ms-dns 5.5.5.5
asyncmap 0
noauth
crtscts
local
lock
hide-password
modem
-pap //禁用pap认证方式
+chap //启用chap认证方式
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4
noipx
-------------------------------------------------------------------
- 配置pppoe-server-option文件,编辑修改如下:
------------------/etc/ppp/pppoe-server-option-----------------------------
# PPP options for the PPPoE server
# LIC: GPL
auth
require-chap
default-mru
default-asyncmap
lcp-echo-interval 10
lcp-echo-failure 2
ms-dns 202.106.0.20
ms-dns 5.5.5.5
noipdefault
noipx
nodefaultroute
proxyarp
noktune
-------------------------------------------------------------------

- 添加用户,编辑chap-secrets文件增加用户名密码:
---------------/etc/ppp/chap-secrets------------------
# Secrets for authentication using CHAP
# client server secret IP addresses
test-pppoe * 123456 *
-----------------------------------------------------------
//*表示不指定服务器和IP地址

1.3 启动和关闭服务器
执行如下命令可以启动pppoe server:
pppoe-server -I eth0 -L 55.55.55.1 -R 55.55.55.55 -N 100
- 命令说明如下(也可以使用man pppoe-server查看更详细的内容):
-I eth0 指定pppoe服务器在哪个网卡接口监听连接请求
-L 55.55.55.1 指定pppoe服务器的ip地址。(注意:此IP地址不是网卡的IP地址,而是PPPOE服务器的虚拟IP,地址可以任意)
-R 55.55.55.55 pppoe服务器分配给客户端的IP地址,从55.55.55.55开始递增
-N 100 指定最多可以连接pppoe服务器的客户端数量(默认是64 最大是65534)
可以查看进程检查服务器是否已启动:

执行killall pppoe-server命令可以关闭所有pppoe服务器进程:

1.4 启用服务器数据转发
通过前面的配置,pppoe拨号客户端应该已经可以正常拨号并获取地址,但是如果不启用服务器的数据转发,client即使拿到IP地址,流量也只能到达server而无法转发出去,可通过以下步骤启用服务器的数据转发。
- 修改sysctl.conf文件启用forward:
# vi /etc/sysctl.conf

执行命令sysctl –p让修改生效:

- 使用iptables规则
iptables -A INPUT -i eth0 -s 55.55.55.0/24 -j DROP
iptables -t nat -A POSTROUTING -s 55.55.55.0/24 -j SNAT --to-source 192.168.10.99 //192.168.10.99为服务器上实际网络出口的地址
1.5 测试
本处使用win7系统进行测试:
创建新的网络连接



创建完成后,拨号连接则可以正常从服务器上获取地址并连接网络:

查看获取到的地址和DNS:

路由跟踪可以看到所有访问外部网络的数据均经过pppoe server进行转发:

电脑上抓包可以看到数据包已进行pppoe封装:

Server端:

Linux下PPPoE Server测试环境搭建的更多相关文章
- linux下PPTP Server测试环境搭建
1.1 服务器软件安装 安裝PPTP Server 所需的软件: 安装PPTP: sudo apt-get install pptpd PPTP Server的软件安装很简单,只需要安装pptpd ...
- 2019-9-16:渗透测试,基础学习,Linux下软件安装,环境搭建,笔记
Centos linux下软件安装yum 通过分析rpm包头数据后,自动解决依赖关系,直接云端下载软件,根据不同版本系统获取不同软件信息,按顺序下载rpm包,安装软件yum search 软件名:搜索 ...
- Linux下分布式项目部署环境搭建与使用(druid-1.0.25.jar)数据库连接加密
一.JDK安装 1.执行命令:cd Downloads/ 2.上 传:jdk-8u111-linux-x64.tar.gz 到Downloads 3.执行命令:tar -zxvf jdk-8u111- ...
- linux下安卓编译apk环境搭建
ubuntu下linux安卓编译环境搭建. 配置好编译环境 (前提是已经安装了jdk,可以用java -verison 命令查看) 一.设置环境变量 用vi ~/.bashrc 打开编译环境 JA ...
- Linux下.Net Core+Nginx环境搭建小白教程
前言 对于接触.Net Core的我们来说之前从未接触过Linux,出于资源和性能及成本的考虑我们可能要将我们的环境搬到Linux下,这对于我们从未接触过Linux的童鞋们来说很棘手,那么我今天将带你 ...
- Linux下的ssh实验环境搭建与管理
实验环境[size=10.5000pt]1:网桥模式[size=10.5000pt]2:安装好vmtoos[size=10.5000pt]3:安装好yum[size=10.5000pt]4:安装好ss ...
- linux下solr5.0.0环境搭建
1解压 linux下解压命令 tar -zxvf solr-5.0.0.tgz 2启动 linux 系统 直接切换solr-5.0.0\bin 文件夹 执行 solr star -p 8983 (如果 ...
- linux下系统编程C环境搭建
一.系统安装 我使用的是VMware8下的ubuntu12.04,这是培训老师说的,12.04相对来说,比较新,而且是5年长期支持版,不容易过时.对于系统的安装,我不想说很多,只是希望大家主义这几点: ...
- 【redis】 linux 下redis 集群环境搭建
Redis集群 (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下) 127.0.0.1:63791 ...
随机推荐
- XMU 1071 圣斗士黄金十二宫(七)银河星爆 【计算几何】
1071: 圣斗士黄金十二宫(七)银河星爆 Time Limit: 500 MS Memory Limit: 64 MBSubmit: 193 Solved: 10[Submit][Status] ...
- C# 取html <data>内容
private void button1_Click(object sender, EventArgs e) { string strSource = GetHttpWebRequest(" ...
- HDU1540 Tunnel Warfare —— 线段树 区间合并
题目链接:https://vjudge.net/problem/HDU-1540 uring the War of Resistance Against Japan, tunnel warfare w ...
- 【转】wait和waitpid详解
发现进程有关的编程题里面的包含知识量实在是太庞大,这是关于wait和waitpid区别的,以前只是粗略知道它们的区别,这是网上看到的比较全的对比 转自http://blog.chinaunix.net ...
- JS处理空格
JS处理空格 2010-10-27 11:48:32| 分类: 技术-JS | 标签:js 空格 |字号 订阅 /*删除两侧空格*/ function trim(ui){ ...
- SPFA 算法详解( 强大图解,不会都难!) (转)
适用范围:给定的图存在负权边,这时类似Dijkstra等算法便没有了用武之地,而Bellman-Ford算法的复杂度又过高,SPFA算法便 派上用场了. 我们约定有向加权图G不存在负权回路,即最短路径 ...
- hdu4417(离线操作 + 树状数组)
题意: 给定一个长度为n的数组,有m次的查询,每次查询[a,b]区间里比H小的数有多少个? 由于n和m的取值范围为0到10的5次方,所以直接回答会超时,所以考虑先读入所有的查询操作,然后依次回答比H小 ...
- VS2010打包回顾
1. 在vs2010 选择“新建项目”à“ 其他项目类型”à“ Visual Studio Installerà “安装项目”: 命名为:Setup1 . 这是在VS2010中将有三个文件夹, 1. ...
- 【转载】SQL面试题
[本文转自]http://blog.csdn.net/u012467492/article/details/46790205 1.用一条SQL 语句 查询出每门课都大于80 分的学生姓名 name ...
- poj 1637 Sightseeing tour【最大流+欧拉路】
参考:https://www.cnblogs.com/kuangbin/p/3537525.html 这篇讲的挺好的 首先分清欧拉路和欧拉环: 欧拉路:图中经过每条边一次且仅一次的路径,要求只有两个点 ...