转载一篇文章,介绍Linux上搭建pppoe服务器的方法。在工作中,因为pppoe拨号要跑到测试部,很麻烦,所以自己搭建了一个模拟的。
原文出处:http://940137.blog.51cto.com/930137/432557
1、查看系统上是否安装了pppoe服务器软件
[root@localhost ~]# rpm -qa | grep pppoe
rp-pppoe-3.10-6.fc12.i686
若显示以上信息则已经安装了pppoe软件,若无信息则首先安装pppoe软件
[root@localhost ~]# yum install pppoe
2、配置系统支持IP转发
root@localhost ~]# vim /etc/sysctl.conf
修改net.ipv4.ip_forward = 1
3、修改pppoe服务器的主配置文件
[root@localhost ~]# vim /etc/ppp/pppoe-server-options
若认证方式采用 chap则配置内容如下
# PPP options for the PPPoE server
# LIC: GPL
require-chap
#require-pap
login
lcp-echo-interval 10
lcp-echo-failure 2
#default-asyncmap
#ms-dns 202.96.134.133
若认证方式采用 pap则配置内容如下
# PPP options for the PPPoE server
# LIC: GPL
#require-chap
require-pap
#login
lcp-echo-interval 10
lcp-echo-failure 2
#default-asyncmap
#ms-dns 202.96.134.133
4、添加认证帐号
若认证方式采用 chap则
引用块内容[root@localhost ~]# vim /etc/ppp/chap-secrets
内容如下
username password
swz * swz *
abc * abc *
若认证方式采用 pap则
[root@localhost ~]# vim /etc/ppp/pap-secrets
内容如下
#username password
swz * swz *
abc * abc *
备注:此认证方式的帐号必须是系统帐号,即 /etc/passwd文件中存在的帐号
5、修改配置文件/etc/ppp/options
[root@localhost ~]# vim /etc/ppp/option
若认证方式为chap则内容如下
local
#auth
#lock
若认证方式为pap则内容如下
#local
auth
lock
6、启用pppoe服务
[root@localhost ~]# pppoe-server -I eth0 -L 192.168.40.12 -R 192.168.40.100 -N 10
-L: 设备虚拟的pppoe接口,该接口的IP地址可以为任意指定
-R: pppoe地址池的起始地址
-N: 地址的个数
最后,将我自己参考这个文章后,写的脚本贴出来,这样每次直接运行该脚本即可运行pppoe服务器
#!/bin/sh
busybox ifconfig eth0 10.10.26.47 netmask 255.255.255.0
busybox route add default gw 10.10.26.1
killall pppoe-server
pppoe-server -I eth0 -L 192.168.26.1 -R 192.168.26.10 -N 10
iptables -F
echo 0 > /proc/sys/net/ipv4/ip_forward
iptables -A INPUT -i eth0 -s 192.168.26.0/24 -j DROP
iptables -t nat -A POSTROUTING -s 192.168.26.0/24 -j SNAT --to-source 10.10.26.47
echo 1 > /proc/sys/net/ipv4/ip_forward