PPPoE fails when configured on OpenWRT device but works with Draytek router

I have a draytek130 configured as a router which is doing PPPoE to connect to my ISP. There was a suggestion to configure the draytek device as a bridge and have my openwrt device act as the PPPoE client in this thread.
I just spent a lot of time trying to get this to work, the closest thing I came to success was that the PPPoE session was established but it seems as if this is happening on the openwrt device:

OpenWrt sends: LCP Conf-Request id 1 (no Auth-Prot option!)

  1. ISP sends: LCP Conf-Request id 218 (with Auth-Prot: PAP)
  2. OpenWrt sends: LCP Conf-Ack id 1 (acknowledging OpenWrt's own request??)
  3. OpenWrt keeps resending LCP Conf-Request id 1 (same one, over and over)
  4. ISP keeps sending LCP Conf-Request with incrementing IDs (218, 219, 220...)
  5. OpenWrt keeps sending LCP Conf-Ack id 1 but never acknowledges the ISP's Conf-Request!

You can see the summary of successufl and failed authentication pcaps here:

I tried a lot of different configurations; setting vigbrg on and off, using pppoe passthrough, different tagging mechanisms (on vigor, on openwrt, on both), but none of them seem to work. As you can see from the pppoe pcaps, my ISP is congstar. If there is anyone out there who was able to configure a draytek vigor130 along with an openwrt router to use the draytek as a transparent bridge, while openwrt does vlan tagging and PPPoE, I would really appreciate a comment on how you set it up.

Mmh, ard you sure the vigor passes your vlan on?
I opted for manually setting the VLAN tag on my bridged modem's dsl port, but I use VLANs to reach either the dsl bridge or tha lan dide with different VLANs...

No indeed I am not sure whether the vigor passes the vlan on or not, but I tried enabling and disabling it, configured the openwrt device with a vlan tagged wan interface but it does not work.

Not working:
uci set network.wan.device='wan'
uci set network.wan.proto='pppoe'
uci set network.wan.username='vdsl/334697944@congstar.de'
uci set network.wan.password='*****'
uci set network.wan.ipv6='auto'
uci delete network.wan.ipaddr 2>/dev/null
uci delete network.wan.netmask 2>/dev/null
uci delete network.wan.gateway 2>/dev/null
uci delete network.wan.dns 2>/dev/null
uci delete network.wan.mtu 2>/dev/null

Not working either:

uci set network.wan7.name='wan.7'
uci set network.wan7.type='8021q'
uci set network.wan7.ifname='wan'
uci set network.wan7.vid='7'
uci set network.wan7.mtu='1500'

uci set network.wan.device='wan.7'
uci set network.wan.proto='pppoe'
uci set network.wan.username='vdsl/334697944@congstar.de'
uci set network.wan.password='*****'
uci set network.wan.ipv6='auto'
uci delete network.wan.ipaddr 2>/dev/null
uci delete network.wan.netmask 2>/dev/null
uci delete network.wan.gateway 2>/dev/null
uci delete network.wan.dns 2>/dev/null
uci delete network.wan.mtu 2>/dev/null

Also tried adjusting mtu to 1492.

This is the only working configuration, which relies on the vigor to be configured as a router:

uci set network.wan.proto='static'
uci set network.wan.device='wan'
uci set network.wan.ipaddr='172.16.8.10'
uci set network.wan.netmask='255.255.255.248'
uci set network.wan.gateway='172.16.8.9'
uci set network.wan.dns='8.8.8.8 8.8.4.4'
uci delete network.wan.username 2>/dev/null
uci delete network.wan.password 2>/dev/null
uci delete network.wan.ipv6 2>/dev/null
uci delete network.wan.mtu 2>/dev/null

It can do either - either taking care of all the tagging or passing through tagged connections. Personally I always did the later, doing the tagging on my router, not the modem.

Keep in mind, BNG is a relatively new development, originally 'Internet', VoIP and IPTV were often transported via different VLANs, in those situations your router needs to be able to get multiple different VLANs over the modem.

The (indirectly) referenced Configuration Issues OpenWRT 19.07.3 and DrayTek Vigor 130 - #4 by slh show exactly that setup. The router doing all the VLAN tagging (VID 7, in my case back then), the modem merely passing it through.

Thanks a lot for your response. Followed the configuration in the thread you mentioned, the result:

root@OpenWrt:~# uci show network
network.@device[1]=device
network.@device[1].type='8021q'
network.@device[1].ifname='wan'
network.@device[1].vid='7'
network.@device[1].name='wan.7'
network.wan_7=interface
network.wan_7.proto='pppoe'
network.wan_7.device='wan.7'
network.wan_7.force_link='1'
network.wan_7.username='vdsl/334697944@congstar.de'
network.wan_7.password='*****'
network.wan_7.ipv6='auto'
network.wan_7.norelease='1'
network.wan_7.keepalive='0 1'

Fri Jan 23 22:41:39 2026 daemon.info pppd[28620]: Plugin pppoe.so loaded.
Fri Jan 23 22:41:39 2026 daemon.info pppd[28620]: PPPoE plugin from pppd 2.5.1
Fri Jan 23 22:41:39 2026 daemon.notice pppd[28620]: pppd 2.5.1 started by root, uid 0
Fri Jan 23 22:42:14 2026 daemon.warn pppd[28620]: Timeout waiting for PADO packets
Fri Jan 23 22:42:14 2026 daemon.err pppd[28620]: Unable to complete PPPoE Discovery phase 1
Fri Jan 23 22:42:14 2026 daemon.info pppd[28620]: Exit.
Fri Jan 23 22:42:15 2026 daemon.info pppd[28777]: Plugin pppoe.so loaded.
Fri Jan 23 22:42:15 2026 daemon.info pppd[28777]: PPPoE plugin from pppd 2.5.1
Fri Jan 23 22:42:15 2026 daemon.notice pppd[28777]: pppd 2.5.1 started by root, uid 0
Fri Jan 23 22:42:50 2026 daemon.warn pppd[28777]: Timeout waiting for PADO packets
Fri Jan 23 22:42:50 2026 daemon.err pppd[28777]: Unable to complete PPPoE Discovery phase 1
Fri Jan 23 22:42:50 2026 daemon.info pppd[28777]: Exit.
Fri Jan 23 22:42:50 2026 daemon.info pppd[28907]: Plugin pppoe.so loaded.
Fri Jan 23 22:42:50 2026 daemon.info pppd[28907]: PPPoE plugin from pppd 2.5.1
Fri Jan 23 22:42:50 2026 daemon.notice pppd[28907]: pppd 2.5.1 started by root, uid 0
Fri Jan 23 22:43:25 2026 daemon.warn pppd[28907]: Timeout waiting for PADO packets
Fri Jan 23 22:43:25 2026 daemon.err pppd[28907]: Unable to complete PPPoE Discovery phase 1
Fri Jan 23 22:43:25 2026 daemon.info pppd[28907]: Exit.
Fri Jan 23 22:43:26 2026 daemon.info pppd[29058]: Plugin pppoe.so loaded.
Fri Jan 23 22:43:26 2026 daemon.info pppd[29058]: PPPoE plugin from pppd 2.5.1
Fri Jan 23 22:43:26 2026 daemon.notice pppd[29058]: pppd 2.5.1 started by root, uid 0
Fri Jan 23 22:44:01 2026 daemon.warn pppd[29058]: Timeout waiting for PADO packets
Fri Jan 23 22:44:01 2026 daemon.err pppd[29058]: Unable to complete PPPoE Discovery phase 1
Fri Jan 23 22:44:01 2026 daemon.info pppd[29058]: Exit.

So it is still timing out. I think I will just live with tagging and dial up on vigor 130 and static ip on openwrt.

my guess is that bridge do not work as expected on the vigor side.
Even on attempt to connect you should see RX / TX bytes on the
ifconfig wan.7 or wan dependent how bridge is set on vigor.

When I used a Vigor 130, it was important to configure MPoA bridge mode, because PPPoE passthrough was broken. Generally, the configuration linked by @slh looks good to me.

For debugging of the PPPoE connection you can use option pppd_options 'debug'. Then you can see what is going on without doing a packet capture.