sudo apt-get install pppoe
sudo apt-get install ppp (默认已安装)
sudo gedit /etc/ppp/options
就是打开/etc/ppp/options中下面的几个功能(去掉前面的#就可以了)
------------------/etc/ppp/options-----------------------------
ms-dns 114.114.114.114
noauth
crtscts
local
lock
hide-password
modem
-pap
+chap
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4
noipx
note:
ms-dns 219.141.140.10 (这个是设置DNS的)
-pap (这个是禁用pap认证方式的)
+chap (这个是启用chap认证方式的)
此文件不存在话就创建,添加以下内容:
auth
require-chap
logfile /var/log/pppd.log
test * 123456 *
表示用户名为test,服务器名为任意,密码为123456,IP为任意的IP
sudo pppoe-server -I enp3s0 -L 192.168.21.1 -R 192.168.21.5 -N 10
sudo killall pppoe-server
其中:
-I 参数为网络端口名称,可以使用 ifconfig 命令查看当前工作的端口。
-L 参数为一个PPP连接中,PPPoE服务器的IP地址,即当前 Ubuntu 服务器的地址。
-R 参数为当有客户连接到服务器上时,从哪个IP地址开始分配。
-N 参数为至多可以有多少个客户同时连接到当前服务器上。
进入root命令 :
sudo -s -H
#echo “1”>/proc/sys/net/ipv4/ip_forward
注意: 这条命令一定要用root身份执行,sudo都没用,否则会提示权限不够。
如果不启用forward, client即使拿到IP, traffic也不能出去,只能到server而已。
或者这样改
修改/etc/sysctl.conf文件:net.ipv4.ip_forward = 1 启用转发功能
执行如下命令,让配置即时生效
#sysctl -p
进入root命令 :
sudo -s -H
iptables -A POSTROUTING -t nat -s 192.168.21.0/24 -j MASQUERADE
注:-s 参数后面的网络地址是一会儿将要开启的pppoe-server设置的网络地址,这个地址可以根据需要自己设定,只要iptables和pppoe-server匹配就好。
外网ap之间不进行NAT,只是forward
9.1 pppoe环境搭建
外网--------外网route---------pppoe server--------内网route-------pc
|
tr069 server
9.1.1 外网route
wan ip : 100.64.63.196
lan ip : 192.168.20.1/255.255.252.0
9.1.2 tr069 server
ip address: 192.168.20.106/255.255.255.0
9.1.3 pppoe server
ip1: 192.168.20.170/255.255.255.0 Gateway:192.168.20.1
ip2: 无
ip2转ppp:192.168.21.1
开启forward
9.1.4 内网route
wan: 192.168.21.5 (通过pppoe获得)
lan:192.168.0.1
9.1.5 pc ip address :192.168.0.11 (通过dhcp获得)
9.1.6 要让内网pc能正常访问服务器和外网需要配置以下内容
在外网路由器上配置反向路由:
route add -net 192.168.21.0 netmask 255.255.255.0 gw 192.168.20.170
9.1.7 要让tr069服务器访问正常,要在tr069服务器上配置
route add 192.168.21.0 mask 255.255.255.0 192.168.20.170
需要注意的是:
对于外网路由器来说,内网服务器的ip和pppoe分配的ip都是它的子网。
但是pppoe服务器ip1和ppp的地址不能是一个子网。
参考
https://blog.csdn.net/lee244868149/article/details/38314671
https://blog.csdn.net/leiming32/article/details/50462838