OpenWrt搭建PPPOE Server

您所在的位置:网站首页 pppoe服务器怎么设置 OpenWrt搭建PPPOE Server

OpenWrt搭建PPPOE Server

2024-07-13 07:06| 来源: 网络整理| 查看: 265

搭建IPv4 PPPOE Server环境

a. 修改/etc/ppp/pppoe-server-options 打开此文件vi /etc/ppp/pppoe-server-options,将配置按如下方式修改:

# PPP options for the PPPoE server # LIC: GPL require-chap login lcp-echo-interval 10 lcp-echo-failure 2 mru 1492 mtu 1492 ms-dns 8.8.8.8 ms-dns 114.114.114.114

b. 修改/etc/ppp/chap-secrets

这一步修改客户端连接PPPOE Server时的账号密码,IPv4/IPv6使用的是同一个,并且可以配置多个账号密码,vi /etc/ppp/chap-secrets,修改如下:

#USERNAME PROVIDER PASSWORD IPADDRESS "test" * "123" * "test1" * "1234" *

c. 修改防火墙规则

输入以下命令:

iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -j MASQUERADE iptables -I FORWARD -i ppp0 -j ACCEPT iptables -I FORWARD -o ppp0 -j ACCEPT

d. 启动PPPOE Server

输入以下命令:

pppoe-server -k -T 60 -I br-lan -N 100 -C Myp -L 10.0.0.1 -R 10.0.0.2

此时,路由器下挂设备可以通过PPPOE拨号获取IPv4地址。

搭建IPv6 PPPOE Server环境

在IPv4 PPPOE Server环境基础上做以下修改。

重启路由器后,按以下步骤搭建IPv6 PPPOE Server环境。

a. 修改/etc/ppp/pppoe-server-options 打开此文件vi /etc/ppp/pppoe-server-options,将配置按如下方式修改:

# PPP options for the PPPoE server # LIC: GPL require-chap login lcp-echo-interval 10 lcp-echo-failure 2 mru 1492 mtu 1492 ms-dns 8.8.8.8 ms-dns 114.114.114.114 +ipv6 ipv6 ::1,::2

b. 拷贝插件

输入以下命令:

cp /usr/lib/pppd/2.4.8/rp-pppoe.so /etc/ppp/plugins/

c. 修改/etc/config/network

添加ppp0节点,然后绑定到odhcpd,用于向下级分配ipv6地址,vi /etc/config/network,最后面添加:

config interface 'ppp0' option proto 'static' option device 'ppp0'

d. 修改/etc/config/dhcp

添加ppp0节点,然后绑定/etc/config/network中的ppp0节点,vi /etc/config/dhcp,最后面添加:

config dhcp 'ppp0' option interface 'ppp0' option start '100' option limit '150' option leasetime '12h' option force '1' option ra_management '1' option dhcpv6 'server' option ra 'server' option ra_default '1' list dns '2400:3200:baba::1' list dns '2400:3200::1'

其中,list dns的意思是ipv6 dns server,根据实际情况填写。这里填的是阿里的DNS。

e. 重启network、dhcp、odhcpd

输入以下命令:

/etc/init.d/network restart /etc/init.d/dnsmasq restart /etc/init.d/odhcpd restart

f. 启动PPPOE Server

输入以下命令:

killall pppoe-server pppoe-server -k -T 60 -I br-lan -N 100 -C Myp -L 10.0.0.1 -R 10.0.0.2 -S ppp0

其中 -S ppp0 表示绑定ppp0接口。

g. 节点绑定

给ppp0添加ipv6并将ppp0绑定到/etc/config/network中的ppp0节点:

ip -6 addr add `uci get network.globals.ula_prefix | sed 's/\/48//g'`5/64 dev ppp0 ubus call network.interface.ppp0 add_device "{\"name\":\"ppp0\"}"

此时,路由器下挂设备可以通过PPPOE拨号获取IPv6地址。

设置开机启动

a. 创建/etc/ppp/ipv6-up脚本 pppoe拨号成功或会执行这个脚本, vi /etc/ppp/ipv6-up 输入以下代码:

#!/bin/sh # 配置ipv4路由规则,$1为pppoe生成的设备名,一般为ppp0 iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -j MASQUERADE iptables -I FORWARD -i $1 -j ACCEPT iptables -I FORWARD -o $1 -j ACCEPT #给ppp0设置ipv6地址,使用的是network.globals.ula_prefix作为前缀 ip -6 addr add `uci get network.globals.ula_prefix | sed 's/\/48//g'`5/64 dev $1 #将ppp0绑定到network与dhcp中的ppp0,用于向下级分配ip ubus call network.interface.ppp0 add_device "{\"name\":\"$1\"}"

注意给此脚本添加权限:chmod +x /etc/ppp/ipv6-up

b. 创建开机自启动脚本

开机自启动,vi /etc/init.d/runPppoe 输入以下代码:

#!/bin/sh /etc/rc.common START=99 start() { killall pppoe-server pppoe-server -k -T 60 -I br-lan -N 100 -C Myp -L 10.0.0.1 -R 10.0.0.2 -S ppp0 echo "pppoe-server start" }

添加可执行权限:

chmod +x /etc/init.d/runPppoe

输入以下命令设置开机自启动:

service runPppoe enable


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3