Running OPNsense 26.7-amd64 (FreeBSD 15.1-RELEASE-p1) on a Lanner FW-7551A (Intel Atom C2358, Avoton). Fresh install via UFS/MBR (legacy BIOS hardware, no UEFI), serial console.
Symptom: WAN is configured for PPPoE, but the pppoe0 interface never gets created and mpd5 never starts, regardless of method used:
GUI: Interfaces → Devices → Point-to-Point, Link Type PPPoE, Link Interface igb0, valid username/password — created successfully, assigned to WAN under Interfaces → Assignments (confirmed pppoe0 (igb0) - <description> <username> shows correctly there).
configctl interface reconfigure wan returns "OK" but no mpd process starts and ifconfig -a | grep pppoe returns nothing.
Confirmed ng_pppoe.ko was not loaded by default; manually kldload ng_pppoe succeeded, but reconfigure still didn't start mpd.
Ran the full first-boot Setup Wizard (System → Wizard) with PPPoE type + credentials on the WAN step — same result after Apply.
Log evidence (/var/log/system/latest.log, filtered for "ppp"):
opnsense: /usr/local/etc/rc.configure_interface: The command '/sbin/ifconfig pppoe0 inet6 -accept_rtadv -no_dad description 'WAN (wan)' up' returned exit code 1 and the output was "ifconfig: interface pppoe0 does not exist"
opnsense: /usr/local/etc/rc.bootup: [same error]
opnsense: /usr/local/etc/rc.reload_all: Unable to configure nonexistent interface wan (pppoe0)
No mpd-related log entries appear anywhere in the logs — it's as if the step that should generate /var/etc/mpd5.conf and launch mpd5 is silently skipped entirely, even though configd's log shows "Configuring interface wan" being reached.
Confirmed intact:
config.xml has correct <system><primaryconsole> etc. and a valid <ppps><ppp> PPPoE block with working credentials (verified against RB5009's working PPPoE session using the same ISP/credentials)
Physical WAN link is up (igb0 shows carrier when connected)
/var/etc/mpd5.conf never gets created — file doesn't exist even after reconfigure
Has anyone seen mpd5/pppoe0 fail to initialize like this? Any pointers on which backend script is responsible for generating mpd5.conf and starting the daemon so I can check permissions/dependencies directly?
Yes there have been some threads, but they all ended in misconfiguration. Start by telling us your WAN configuration.
Cheers,
Franco
Thanks for the nudge, Franco — you were right to be skeptical. Found it: it was a misconfiguration, not a backend bug.
In /conf/config.xml, the <ppp> block's <ports> field was set to pppoe0 (pointing at another virtual PPPoE device) instead of igb0 (the actual physical WAN NIC). That invalid parent interface silently prevented mpd5 from ever starting — no error surfaced anywhere in the GUI or logs pointing at this specifically.
Fix was a one-line change: <ports>pppoe0</ports> → <ports>igb0</ports>. After that, configctl interface reconfigure wan immediately spawned mpd5, negotiated PPPoE successfully, and got a real IP from the ISP.
Not sure how <ports> ended up set to a pppoe device name rather than the physical NIC — possibly a GUI selection error on my end during setup, though it's also the kind of thing that could be worth a sanity-check/validation warning in the interface if a non-physical device is ever selected there. Posting the root cause here in case anyone else searches this exact symptom (mpd5.conf never generated, ifconfig shows pppoe0 doesn't exist).
Appreciate you taking the time to look — this saved me from tearing apart a mostly-working config.
Cheers,
Daniel
Hi Daniel,
I tested if it's possible to select a pppoeX device in the PPPoE setup but that did not seem to be the case.
If you can provide steps to reproduce I'll take a closer look. From memory, I can't remember hearing about this problem before.
Cheers,
Franco