linux下pppoe服务器配置

终于搞明白pppoe + NAT 作上网服务器的原理了,哈哈哈。

rp-PPPoE设置

检查rppppoe装上没有(redFlag已经装上)

rpm  - qa  |  grep  - " pppoe "


/etc/ppp/pap-secrets
配置如下

# client server secret IP address
" usr "   *   " 123 "   *

/etc/ppp/chap-secrets的配置和pap-secrets一样

/etc/ppp/
pppoe-server-options配置如下

# auth  #注释掉这三行使用任意帐号就可以登录
#
require-pap
#
require-chap
login
lcp
- echo - interval  30
lcp
- echo - failure  4
ms
- dns   202.118 . 224.101



然后运行

modprobe pppoe
pppoe
- server  - I eth1  - 200   - 192.168 . 0.1   - 192.168 . 0.100   - - u


iptables设置:

打开ip转发和NAT功能

echo  1   >   / proc / sys / net / ipv4 / ip_forward
iptables  
- t nat  - F
iptables  
- t nat  - L
iptables 
- t nat  - A POSTROUTING  - o eth0  - j SNAT   -- to  219.217 . 235.73
# iptables -t nat -A POSTROUTING -o eth0 -j SNAT -s 192.168.0.0/24 --to 219.217.235.73


pppoe-server -I eth1  -r -u

xp连接就可以了

注意:

为了防止局域网内用户设置ip和eth1一致,从而达到间接上网的目的,必须将eth1的ip设置为空!
我猜测
用NAT上网时,客户设置好ip和网关为eth1后,发给服务器的连接会被iptables识别并路由过去。
用pppoe设置好后,客户如果没有建立pppoe连接,
发给服务器的数据报会被过虑到,iptables识别不了。
而建立连接后,
iptables识别就能识别出他来了。
具体是怎么实现的有待研究。

你可能感兴趣的:(linux)