如何使用netplan配置PPPoE?

And*_*ewG 4 pppoe 17.10 netplan

我想向工作01-netcfg-yaml文件添加行以自动连接接口以ppp使用pppoeconf.

但我找不到任何指南或示例。

我非常感谢“howto”帮助我做到这一点。

提前致谢。

Rob*_*sak 5

我已经配置了运行 Ubuntu 的 PPPoE 路由器,使用 netplan 作为常规以太网接口,并直接使用 systemd 作为 PPPoE 接口。

对于 PPP 部分,我将 PPPoE 接口完全排除在 netplan 之外,并创建了一个/etc/systemd/system/ppp.service文件,如下所示。ens7是连接到 PPPoE 调制解调器的接口,您需要根据您的情况进行更改(每次出现)。我还通过将 MTU 设置为 1508 来使用小型巨型帧。如果您的 NIC 或 ISP 无法处理此问题,那么您应该删除该行:

[Unit]
BindsTo=sys-subsystem-net-devices-ens7.device
After=sys-subsystem-net-devices-ens7.device

[Service]
ExecStartPre=/sbin/ip link set mtu 1508 dev ens7
ExecStartPre=/sbin/ip link set up dev ens7
ExecStart=/usr/sbin/pppd call provider
Type=forking
SuccessExitStatus=5
PIDFile=/run/ppp-pppoe.pid

[Install]
WantedBy=sys-subsystem-net-devices-ens7.device
Run Code Online (Sandbox Code Playgroud)

我的/etc/ppp/peers/provider样子是这样的 再次,ens7是我的PPPoE接口;您需要将其更改为您自己的以下名称以及my_username_with_my_isp. 如果您的硬件(或 ISP)无法处理小型巨型帧,并且您删除了上面的 mtu 行,那么也将下面的值更改mtumru1492。我还在这里启用了 ipv6。usepeerdns如果您希望使用 ISP 提供的 DNS 服务器(而不是静态配置它们),请添加。

user my_username_with_my_isp
plugin rp-pppoe.so
ens7
noipdefault
defaultroute
hide-password
lcp-echo-interval 20
lcp-echo-failure 3
noauth
persist
maxfail 0
mtu 1500
mru 1500
noaccomp
default-asyncmap
+ipv6
linkname pppoe
Run Code Online (Sandbox Code Playgroud)

我的/etc/ppp/chap-secrets样子是这样的 /etc/ppp/pap-secrets如果您的 ISP 不支持 CHAP,您可能需要使用它。

* * my_password_with_my_isp
Run Code Online (Sandbox Code Playgroud)

将 18.04 的所有内容放在一起:

  1. 安装ppp软件包。

  2. 创建/编辑/etc/systemd/system/ppp.service/etc/ppp/peers/provider如上所述/etc/ppp/chap-secrets

  3. sudo systemctl daemon-reloadsudo systemctl enable ppp然后sudo systemctl start ppp

  4. 使用systemctl status ppp和查看/var/log/syslogPPP 状态。