怎样在Linux下建立PPPOE服务器

怎样在Linux下建立PPPOE服务器,第1张

Linux自身的网络设置

Linux做PPPOE服务器,在操作上虽然也可以在图形界面中是为网卡设置IP地址,但是真正实现网卡IP地址等信息的准确可靠,还是要在相应的文件中作设置,我们本次要设置两块网卡,编辑好的文件内容如下:

[root@localhost network-scripts]# pwd  

/etc/sysconfig/network-scripts  

[root@localhost network-scripts]# more ifcfg-eth0  

TYPE="Ethernet"

BOOTPROTO="static"

IPADDR="0000"

DEVICE="lan"

HWADDR="00:0C:29:33:69:86"

ONBOOT="yes"

NETMASK="0000"

[root@localhost network-scripts]# more ifcfg-eth1  

TYPE="Ethernet"

BOOTPROTO="static"

IPADDR="10701011"

DEVICE="wan"

HWADDR="00:0C:29:33:69:90"

ONBOOT="yes"

NETMASK="25525500"

GATEWAY="107001"

Linux做PPPOE服务器的设置过程中,我们重点看一下ifcfg-eth1的配置文件,其中ONBOOT="yes"是必须的,可以保证系统启动网卡自动连接到网络上,网关的信息是我们手工添加进出去,保证有网关可以正常的访问外部网络,ifcfg-eth0文件中只要保证ONBOOT="yes"就可以了,当然象在routeros中一样,我们将外网口的名字定义为wan,将内网口的名字定义为lan。

Linux做PPPOE服务器设置

一)检查本机有没有安装PPPOE服务

[root@localhost network-scripts]# rpm -q rp-pppoe  

rp-pppoe-35-35

以上信息说明安装了

二)配置必要的参数

为了使Linux中的配置过程比较好理解,我们以routeros下的配置过程作为参考。

1、了解pppoe-server-options

这个文件有点类似于ROUTERS下的profile文件,在这个文件中定义了使用哪种验证方式:require-chap,为用户分配的DNS服务器地址是多少:

ms-dns 2191460130  

ms-dns 22217516991

完整的pppoe-server-options文件如下所示

[root@localhost ppp]# more pppoe-server-options  

# PPP options for the PPPoE server  

# LIC: GPL  

require-chap  

login  

lcp-echo-interval 10  

lcp-echo-failure 2  

ms-dns 2191460130  

ms-dns 22217516991

2、添加用户名和密码

在相同的目录下有一个chap-secrets文件,在这里面可以添加用户名和密码

[root@localhost ppp]# more chap-secrets  

# Secrets for authentication using CHAP  

# client        server secret                  IP addresses  

abc                abc                        

3、允许本地验证

也就是修改options文件,将而来默认的lock改为local即可。

[root@localhost ppp]# more options  

#lock  

local

4、开启PPPOE服务

[root@localhost ppp]# more pppstart  

pppoe-server -I lan -L 19216801 -R 19216805 -N 10

像以前一样,我将这条命令做成了一个脚本,这样操作测试其中的参数比较方便,我简单介绍一下Linux做PPPOE服务器当中这条命令中的各个参数的意思。

I:指定响应PPPOE请求的端口,本例中是在lan口上。

L:PPPOE服务器的IP地址,这是客户端所填的PPPOE服务器的地址。

R:这是分配给客户端的地址池起始地址,本例中从19216805开始

N:地址池的IP地址递增几个,本例中添增10,也就是从19216805开始,到192168014结束。

做完以上的设置,我们再梳理一下routeros下建立PPPOE服务的步骤

1、添加一个地址池

2、添加一个profile文件

3、添加拨号用户

4、启动pppoe服务

对照一下,可以看出我们在Linux中将以上步骤都完成了,也就是说PPPOE服务准备好了,客户端PPPOE拨号,顺利的话就可以拨号成功了。当然现在客户端还不能上网,设置Linux做PPPOE服务器的这个时候,还没有启用NAT,我们用IPTABLES软件来实现,写一个这样的脚本即可:

echo "1" >> /proc/sys/net/ipv4/ip_forward  

iptables -t nat -A POSTROUTING -s 19216800/24 -o wan -j SNAT --to 10701023

第一行的作用是启用IP转发,第二行是启动IPTABLES进行NAT转换,下面是对各个参数的解释

-t nat表示进行NAT转化

-s 19216800/24表示源地址为19216800/24这个网段

-j SNAT --to 10701023表示将源地址都转化成10701023这个外网地址

同样的,我们可以对照routeros系统里NAT的设置来理解这条命令。启动NAT以后,这台PPPOE服务器就功能完整了,客户端不仅可以拨通服务器,拨通后还可以上网。

关于这个问题,延迟从硬件角度一般有2个方面造成。1、ROS使用的网卡问题,建议购买intel400~1000元等级网卡。2、ROS的cpu、内存不足导致。另外可以考虑升级ros到最新的522版本再实验一下。注:PPPoE方式下ROS要多做一些运算的,1、要验证是否是合法用户。2、PPPoE本身要重新封装IP包+PPP头。所以说比LAN模式多一些延迟是比较正常的,3ms左右吧。

右键点宽带连接-属性,共享网络

然后IP地址设置为19216801,子网2552552550

网关19216801

其他机器设置为1921680X

网关同上,DNS写你当地的DNS

这样其他机器就能通过你主机上网了。

不过不建议你这样做,因为这种共享需要开主机其他机器才能上网

你把宽带账号和密码设置在路由里面

WAN口连接ADSL猫。其他电脑接在LAN口就可以共享上网了

(注意某些电信ISP绑定了MAC地址,只有最先拨号的那台电脑能拨号,这样需要用那台电脑访问路由然后克隆一下MAC地址就解决问题了)。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 怎样在Linux下建立PPPOE服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情