Pppoe does not get ipv6 address but I do get ipv6 prefix delegation

Summary: I have PPPOE working and assigning my vyos LAN interfaces (and other network devices) with ipv6 using prefix delegation fine. But the pppoe interface never gets an ipv6 address, though my ISP provide one.

If I plug a Ubuntu Linux laptop into the internet port instead of VyOS and connect with pppoe it gets an ipv6 address fine on pppoe using desktop distro network tools.

I usually use a more involved VyOS config but I stripped it down and removed all firewalling, VPN, etc parts to isolate the issue, and so I could try with the latest rolling release.

I’m expecting my pppoe1 interface should also get an ipv6 address here.

I’ve tried removing the “set interfaces pppoe pppoe1 ipv6 address autoconf” line but no difference in behaviour.

My ISP uses a different ipv6 prefix for the PPPOE interface to the delegated ipv6 prefix.

Any suggestions for getting an ipv6 address on the pppoe interface and the delegated LAN interfaces?

show interfaces  | strip-private 
Codes: S - State, L - Link, u - Up, D - Down, A - Admin Down
Interface    IP Address            MAC                VRF        MTU  S/L    Description
-----------  --------------------  -----------------  -------  -----  -----  ------------------
eth0         -                     xx:xx:xx:xx:xx:0e  default   1500  u/u    WAN SIDE for pppoe
eth1         -                     xx:xx:xx:xx:xx:0f  default   1500  u/u
eth1.1       xxx.xxx.0.1/24        xx:xx:xx:xx:xx:0f  default   1500  u/u    VLAN1-mgmt
eth1.102     xxx.xxx.102.1/24      xx:xx:xx:xx:xx:0f  default   1500  u/u    VLAN102
             xxxx:xxxx:4067::1/64
lo           xxx.xxx.0.1/8           xx:xx:xx:xx:xx:00  default  65536  u/u
             ::1/128
pppoe1       xxx.xxx.128.108/32    n/a                default   1492  u/u

config, stripped

set interfaces ethernet eth0 description 'WAN SIDE for pppoe'
set interfaces ethernet eth0 hw-id 'xx:xx:xx:xx:xx:0e'
set interfaces ethernet eth0 offload gro
set interfaces ethernet eth1 hw-id 'xx:xx:xx:xx:xx:0f'
set interfaces ethernet eth1 offload gro
set interfaces ethernet eth1 vif 1 address 'xxx.xxx.0.1/24'
set interfaces ethernet eth1 vif 1 description 'VLAN1-mgmt'
set interfaces ethernet eth1 vif 102 address 'xxx.xxx.102.1/24'
set interfaces ethernet eth1 vif 102 description 'VLAN102'
set interfaces ethernet eth1 vif 102 ipv6 address
set interfaces ethernet eth1 vif 102 ipv6 dup-addr-detect-transmits '1'
set interfaces loopback lo
set interfaces pppoe pppoe1 authentication password xxxxxx
set interfaces pppoe pppoe1 authentication username xxxxxx
set interfaces pppoe pppoe1 dhcpv6-options pd 0 interface eth1.102 address '1'
set interfaces pppoe pppoe1 dhcpv6-options pd 0 interface eth1.102 sla-id '0'
set interfaces pppoe pppoe1 dhcpv6-options pd 0 length '48'
set interfaces pppoe pppoe1 ip adjust-mss 'clamp-mss-to-pmtu'
set interfaces pppoe pppoe1 ipv6 address autoconf
set interfaces pppoe pppoe1 ipv6 adjust-mss 'clamp-mss-to-pmtu'
set interfaces pppoe pppoe1 mtu '1492'
set interfaces pppoe pppoe1 source-interface 'eth0'
set policy route pppoe-out description 'PPPoE TCPMSS clamping'
set policy route pppoe-out interface 'eth0'
set policy route pppoe-out rule 100 protocol 'tcp'
set policy route pppoe-out rule 100 set tcp-mss '1452'
set policy route pppoe-out rule 100 tcp flags syn
set protocols
set service ssh port '4522'
set system config-management commit-revisions '40'
set system host-name xxxxxx
set system ipv6
set system login user xxxxxx authentication encrypted-password xxxxxx
set system login user xxxxxx authentication plaintext-password xxxxxx
set system login user xxxxxx authentication public-keys [email protected] key xxxxxx
set system login user xxxxxx authentication public-keys [email protected] type ssh-xxx
set system name-server 'xxx.xxx.1.2'
set system name-server 'xxx.xxx.0.2'
set system name-server 'xxxx:xxxx:4700::1112'
set system name-server 'xxxx:xxxx:4700::1002'
set system option kernel disable-mitigations
set system option performance 'network-latency'
set system syslog local facility all level 'notice'
set system syslog local facility local7 level 'debug'
set system syslog remote xxx.xxx.102.100 facility all level 'all'
set system time-zone 'Australia/Melbourne'
1 Like

I’m now tending towards this being a bug, after trying a bunch of different versions of VyOS, more details in IPv6 does not seem to be working on PPPoE interfaces since 1.3rolling