在Ubuntu上配置PPPoE服务:从安装到自动化启动的全指南
PPPoE(点对点协议以太网)是一种广泛用于DSL和光纤宽带连接的协议。在本篇技术博客中,我们将详细介绍如何在Ubuntu系统上配置PPPoE服务,包括安装、配置、启动以及设置自动启动等步骤。
1. 安装pppoe-server
首先,我们需要安装
pppoe-server
工具。使用以下命令进行安装:
sudoapt-get update
sudoapt-getinstall pppoe
安装完成后,可以使用
pppoe-server -h
命令查看软件版本以确认安装成功。
2. 配置服务器
配置基本选项
在
/etc/ppp
目录下编辑配置文件:
编辑
/etc/ppp/options
sudonano /etc/ppp/options
修改以下内容:
- 找到
# ms-dns
行,去掉注释并将其改为实际可用的DNS服务器地址,如114.114.114.114
或8.8.8.8
。 - 注释掉
+pap
,取消注释-pap
。 - 取消注释
+chap
,注释掉-chap
。
PAP和CHAP是两种不同的认证协议,根据需要选择其一。
编辑
/etc/ppp/chap-secrets
sudonano /etc/ppp/chap-secrets
添加以下内容,设置用户名和密码:
123456 * 123456 *
表示用户名为
123456
,服务器名为任意,密码为
123456
,IP为任意的IP。
创建并编辑
/etc/ppp/pppoe-server-options
如果文件不存在则创建该文件,并添加以下内容:
sudonano /etc/ppp/pppoe-server-options
auth
require-chap
logfile /var/log/pppd.log
3. 设置IP策略
开启IP转发功能
打开
/etc/sysctl.conf
文件,找到并取消注释
net.ipv4.ip_forward=1
行,然后运行以下命令以启用IP转发:
sudosysctl-p
配置iptables的IP策略
在超级用户权限下运行以下命令:
sudo iptables -A POSTROUTING -t nat -s192.168.156.0/24 -j MASQUERADE
其中
192.168.156.0/24
为实际的网络地址,需要根据你的实际情况填写。
4. 运行PPPoE服务器
使用以下命令启动PPPoE服务器:
sudo pppoe-server -I ens33 -L192.168.156.117 -R192.168.156.118 -N10
参数说明:
-I
:指定网络端口名称。-L
:指定PPPoE服务器的IP地址。-R
:指定客户连接到服务器时分配的IP地址范围。-N
:指定最多允许的客户连接数。
示例
sudo pppoe-server -I eth0 -L172.168.0.1 -R172.168.0.210 -N20
5. 添加开机自启动
配置rc-local服务
编辑
rc-local.service
文件
sudochmod777 /lib/systemd/system/rc-local.service
sudonano /lib/systemd/system/rc-local.service
在文件尾部添加以下内容:
[Install]
WantedBy=multi-user.target
Alias=rc-local.service
编辑
/etc/rc.local
文件
如果文件不存在则创建该文件,并添加以下内容:
sudonano /etc/rc.local
#!/bin/sh
echo "看到这行字,说明添加自启动脚本成功。" > /usr/local/test.log
pppoe-server -I ens33 -L 200.200.156.117 -R 200.200.156.118 -N 10
iptables -A POSTROUTING -t nat -s 200.200.156.0/24 -j MASQUERADE
exit 0
为
/etc/rc.local
文件加上执行权限:
sudochmod +x /etc/rc.local
创建软链接
在
/etc/systemd/system
目录下创建软链接:
sudoln-s /lib/systemd/system/rc-local.service /etc/systemd/system/
停止 PPPoE 服务器
- 查找并终止 PPPoE 服务器进程 使用以下命令查找
pppoe-server
进程:ps aux |grep pppoe-server
终止进程:sudokill<pppoe-server进程ID>
或者使用以下命令停止所有pppoe-server
进程:sudokillall pppoe-server
使用pppoeconf配置PPPOE服务
在 Ubuntu 上开启和关闭 PPPoE 服务也可通过安装并配置
pppoeconf
工具完成。
开启 PPPoE 服务
- 安装 pppoeconf 工具 如果没有安装
pppoeconf
,可以使用以下命令进行安装:sudoapt-get updatesudoapt-getinstall pppoeconf
- 配置 PPPoE 连接 运行
pppoeconf
工具进行 PPPoE 连接配置:sudo pppoeconf
按照屏幕上的提示进行配置,输入 ISP 提供的用户名和密码等信息。 - 启动 PPPoE 连接 配置完成后,可以使用以下命令启动 PPPoE 连接:
sudo pon dsl-provider``````dsl-provider
是pppoeconf
创建的默认配置文件名称。 - 验证连接 使用以下命令查看 PPPoE 连接状态:
ifconfig ppp0
或者:ip addr show ppp0
如果看到ppp0
接口的 IP 地址,说明 PPPoE 连接已经成功启动。
关闭 PPPoE 服务
- 停止 PPPoE 连接 使用以下命令停止 PPPoE 连接:
sudo poff dsl-provider
这将断开当前的 PPPoE 连接。 - 验证连接断开 再次查看网络接口状态,确保
ppp0
接口已经消失或不再有 IP 地址:ifconfig ppp0
或者:ip addr show ppp0
示例
以下是一个完整的示例过程,包括安装、配置、启动和关闭 PPPoE 服务的命令:
# 更新软件包列表并安装 pppoeconf 工具sudoapt-get update
sudoapt-getinstall pppoeconf
# 运行 pppoeconf 配置 PPPoE 连接sudo pppoeconf
# 按照提示输入 ISP 提供的用户名和密码,完成配置# 启动 PPPoE 连接sudo pon dsl-provider
# 验证 PPPoE 连接状态ifconfig ppp0
# 或者ip addr show ppp0
# 停止 PPPoE 连接sudo poff dsl-provider
# 验证连接断开ifconfig ppp0
# 或者ip addr show ppp0
通过以上步骤,你可以在 Ubuntu 上成功开启和关闭 PPPoE 服务。如果遇到问题,确保你的网络设备和 ISP 提供的设置正确,并检查系统日志获取更多信息。
结论
通过以上步骤,你可以在Ubuntu上成功配置并运行PPPoE服务,并设置其为开机自启动。这样不仅可以确保网络服务的持续性,还能提供稳定的PPPoE连接服务。希望本教程对你有所帮助,如果在操作过程中遇到问题,欢迎留言讨论。
版权归原作者 Calvin880828 所有, 如有侵权,请联系我们删除。