Skip to content

Nuface Blog

隨意隨手記 Casual Notes

Menu
  • Home
  • About
  • Services
  • Blog
  • Contact
  • Privacy Policy
  • Login
Menu

Troubleshooting PPPoE Issues After Upgrading to Ubuntu 24

Posted on 2025-10-302025-10-30 by Rico

After upgrading from Ubuntu 22 to Ubuntu 24, many users have found that PPPoE tools—such as pppoeconf, pppoe-discovery, or pppd-pppoe—no longer work properly.
This is mainly due to changes in pppd behavior and kernel module handling introduced in newer Ubuntu releases.


🔍 Why PPPoE Fails on Ubuntu 24

1. pppoeconf Has Been Removed

Starting from Ubuntu 22, the classic pppoeconf package is no longer maintained and has been removed from the repository.
After upgrading, you might find that the command no longer exists or is marked as obsolete.

2. Kernel Module Changes

PPPoE relies on several kernel modules:
ppp_generic, pppoe, and pppox.
After upgrading to Ubuntu 24.04 (with a newer kernel), these modules may not be automatically loaded, causing PPPoE to fail to connect.

3. NetworkManager and systemd Integration

In newer Ubuntu versions, PPP functionalities are integrated into NetworkManager.
If you previously used manual methods like /etc/ppp/peers/ with pon/poff, you’ll need to adjust your configuration.


🧪 Diagnostic Steps

1️⃣ Check if PPP Packages Are Installed

dpkg -l | grep ppp

If not installed:

sudo apt install ppp pppoe

2️⃣ Verify Kernel Modules

lsmod | grep ppp

If you don’t see pppoe or pppox, load them manually:

sudo modprobe pppoe
sudo modprobe pppox

3️⃣ Test PPPoE Discovery

pppoe-discovery -I eth0

If there is no response, the module may not be loaded properly, or your ISP line is unreachable.

4️⃣ Check System Logs

journalctl -xe | grep ppp

Look for any related pppd or pppoe error messages.


🧰 Solutions

🅰️ Method 1: Continue Using Classic pppd

Create the configuration file /etc/ppp/peers/dsl-provider:

noipdefault
defaultroute
replacedefaultroute
hide-password
lcp-echo-interval 20
lcp-echo-failure 3
noauth
persist
mtu 1492
plugin rp-pppoe.so
eth0
user "your-ISP-username"

Store your password in /etc/ppp/pap-secrets or /etc/ppp/chap-secrets:

"your-ISP-username" * "your-password"

Start the connection:

sudo pon dsl-provider

Disconnect:

sudo poff dsl-provider

🅱️ Method 2: Use NetworkManager (Recommended for Desktop)

If NetworkManager is active, you can easily set up a DSL connection through its interface:

nm-connection-editor

Then:

  1. Add a new DSL (PPPoE) connection
  2. Enter your account and password
  3. Select the correct network interface (e.g., eth0)

This method integrates smoothly with systemd and desktop networking tools.


🅾️ Method 3: Automate via systemd Service

You can create a custom systemd unit to bring up the PPPoE connection automatically:

[Unit]
Description=PPPoE connection
After=network.target

[Service]
ExecStart=/usr/bin/pon dsl-provider
ExecStop=/usr/bin/poff dsl-provider
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

Save this file as /etc/systemd/system/pppoe.service, then enable it:

sudo systemctl enable pppoe.service
sudo systemctl start pppoe.service

⚙️ Common Root Cause

After upgrading to Ubuntu 24, the pppoe and pppox kernel modules are often not loaded automatically.
Always verify with:

lsmod | grep ppp

If missing, load them manually before troubleshooting further.


✅ Summary

IssueCauseSolution
pppoeconf command missingDeprecated packageInstall ppp and pppoe manually
No PPPoE responseKernel module not loadedRun modprobe pppoe pppox
Manual pon/poff not workingSystemd & NM changesUse NetworkManager or systemd service
Log shows pppd errorPermission or plugin issueCheck /etc/ppp/peers and rp-pppoe.so path

💡 Tip: For server environments that do not use NetworkManager,
the pppd + systemd approach is still the most reliable and controllable way to maintain stable PPPoE connections.

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Recent Posts

  • Enable Logrotate for Dovecot in Docker: Prevent Huge Log Files and Disk Overflow
  • 在 Docker Dovecot 中啟用 Logrotate:避免 log 爆量、磁碟被塞滿的最佳做法
  • How to Choose Suricata RuleSets on OPNsense — Practical Guide & Best Recommendations
  • OPNsense Suricata 使用指南 — 規則(RuleSets)該怎麼選?最佳實務與推薦設定
  • Proxmox VE + Proxmox Backup Server Integration & Cross-Node Restore Guide

Recent Comments

No comments to show.

Archives

  • November 2025
  • October 2025

Categories

  • AI
  • Apache
  • Cybersecurity
  • Database
  • DNS
  • Docker
  • Fail2Ban
  • FileSystem
  • Firewall
  • Linux
  • LLM
  • Mail
  • N8N
  • OpenLdap
  • OPNsense
  • PHP
  • QoS
  • Samba
  • Switch
  • Virtualization
  • VPN
  • WordPress
© 2025 Nuface Blog | Powered by Superbs Personal Blog theme