Ipoe / ra / dhcpv6 pd

Hi All,

First time here and first time with VyOS - let’s see how it goes but I am looking forward to the enhanced performance over Mikrotik that I’ve been using for years…

I’m trying to setup IPoE - and I pretty much have IPv4 nailed. I am seeing very weird things on IPv6 however, which I am not quite understanding…

vyos@vyos:~$ show version
Version:          VyOS 1.5-stream-2025-Q2
Release train:    circinus
Release flavor:   generic

Built by:         autobuild@vyos.net
Built on:         Thu 10 Jul 2025 00:09 UTC
Build UUID:       141037c5-126a-4fbf-bd87-406253347924
Build commit ID:  be16c8588264f3-dirty

Architecture:     x86_64
Boot via:         installed image
System type:      VMware guest

Hardware vendor:  VMware, Inc.
Hardware model:   VMware Virtual Platform
Hardware S/N:     VMware-56 4d 77 cb 90 af b7 79-91 09 f2 be 10 af 8e 23
Hardware UUID:    cb774d56-af90-79b7-9109-f2be10af8e23

Copyright:        VyOS maintainers and contributors

Traffic comes in via a vxlan. When I run ipoe on the vxlan service itself, nothing works. I see DHCP (ipv4 and ipv6) coming in but accel-pppd just ignores it and does not respond. So I’ve moved the vxlan to a bridge which seems to make ipv4 work at least

vyos@vyos# show interfaces
 bridge br0 {
     address 100.80.0.1/20
     address fd00:0:9000:ff::1/64
     member {
         interface vxlan0 {
         }
     }
     mtu 6144
 }
 ethernet eth1 {
     address fd00:0:9000:1:10:144:0:35/64
     address 10.144.0.35/27
     hw-id 00:0c:29:af:8e:23
     mtu 8192
 }
 loopback lo {
     address 10.144.0.3/32
     address fd00:0:9000:0:10:144:0:3/128
 }
 vxlan vxlan0 {
     description WC-TST01-PE01
     mtu 6144
     parameters {
     }
     remote 10.240.0.21
     source-address 10.144.0.3
     source-interface lo
     vni 1
 }

IPoE Service

vyos@vyos# show service ipoe-server 
 authentication {
     mode noauth
 }
 client-ip-pool IPoEv4 {
     range 100.80.0.0/20
 }
 client-ipv6-pool IPoEv6 {
     delegate fd00:0:e000::/44 {
         delegation-prefix 56
     }
     prefix fd00:0:9000:ff::/64 {
         mask 64
     }
 }
 default-pool IPoEv4
 default-ipv6-pool IPoEv6
 description "IP over Ethernet Server"
 gateway-address 100.80.0.1/20
 interface br0 {
     mode l2
     network shared
     start-session dhcp
 }
 log {
     level 5
 }
 name-server 1.1.1.1
 name-server 8.8.8.8

Now what I am not understanding…

vyos@vyos:~$ tcpdump -nei vxlan0
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on vxlan0, link-type EN10MB (Ethernet), snapshot length 262144 bytes
10:05:21.555946 78:9a:18:c0:3a:6b > 33:33:00:01:00:02, ethertype IPv6 (0x86dd), length 132: fe80::7a9a:18ff:fec0:3a6b.546 > ff02::1:2.547: dhcp6 solicit
10:05:22.520369 78:9a:18:c0:3a:6b > 33:33:00:01:00:02, ethertype IPv6 (0x86dd), length 132: fe80::7a9a:18ff:fec0:3a6b.546 > ff02::1:2.547: dhcp6 solicit
10:05:24.432932 78:9a:18:c0:3a:6b > 33:33:00:01:00:02, ethertype IPv6 (0x86dd), length 132: fe80::7a9a:18ff:fec0:3a6b.546 > ff02::1:2.547: dhcp6 solicit
10:05:28.136399 78:9a:18:c0:3a:6b > 33:33:00:01:00:02, ethertype IPv6 (0x86dd), length 132: fe80::7a9a:18ff:fec0:3a6b.546 > ff02::1:2.547: dhcp6 solicit
10:05:35.545769 78:9a:18:c0:3a:6b > 33:33:00:01:00:02, ethertype IPv6 (0x86dd), length 132: fe80::7a9a:18ff:fec0:3a6b.546 > ff02::1:2.547: dhcp6 solicit
10:05:35.867862 78:9a:18:c0:3a:6b > 33:33:00:00:00:01, ethertype IPv6 (0x86dd), length 209: fe80::7a9a:18ff:fec0:3a6b.5678 > ff02::1.5678: UDP, length 147
^C
6 packets captured
6 packets received by filter
0 packets dropped by kernel
vyos@vyos:~$ tcpdump -nei br0
tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
listening on br0, link-type EN10MB (Ethernet), snapshot length 262144 bytes
10:05:50.088391 0a:75:55:35:f7:1e > 33:33:00:00:00:01, ethertype IPv6 (0x86dd), length 86: fe80::875:55ff:fe35:f71e > ff02::1: ICMP6, router advertisement, length 32
10:05:50.984346 78:9a:18:c0:3a:6b > 33:33:00:01:00:02, ethertype IPv6 (0x86dd), length 132: fe80::7a9a:18ff:fec0:3a6b.546 > ff02::1:2.547: dhcp6 solicit
10:06:05.874853 78:9a:18:c0:3a:6b > 33:33:00:00:00:01, ethertype IPv6 (0x86dd), length 209: fe80::7a9a:18ff:fec0:3a6b.5678 > ff02::1.5678: UDP, length 147
10:06:06.100927 0a:75:55:35:f7:1e > 33:33:00:00:00:01, ethertype IPv6 (0x86dd), length 86: fe80::875:55ff:fe35:f71e > ff02::1: ICMP6, router advertisement, length 32
10:06:06.448899 78:9a:18:c0:3a:6b > 33:33:00:01:00:02, ethertype IPv6 (0x86dd), length 132: fe80::7a9a:18ff:fec0:3a6b.546 > ff02::1:2.547: dhcp6 solicit
10:06:07.532884 78:9a:18:c0:3a:6b > 33:33:00:01:00:02, ethertype IPv6 (0x86dd), length 132: fe80::7a9a:18ff:fec0:3a6b.546 > ff02::1:2.547: dhcp6 solicit
10:06:09.755975 78:9a:18:c0:3a:6b > 33:33:00:01:00:02, ethertype IPv6 (0x86dd), length 132: fe80::7a9a:18ff:fec0:3a6b.546 > ff02::1:2.547: dhcp6 solicit

  1. VyOS, is sending RA messages out on br0 as it should. These packets are however never transmitted out on vxlan0?
  2. I see the DHCPv6 requests coming in on vxlan0, and they are present on br0 as well, but there is no response to the DHCPv6 request from VyOS. I believe this is because RA is failing however

0a:75:55:35:f7:1e - VyOS box
78:9a:18:c0:3a:6b - CPE

Am I missing something here?

Thanks,

2025-07-28 13:50:04 radvd,debug received Router Advertisement on unconfigured sfp1 from fd00:0:9000:ff:875:55ff:fe35:f71e
 2025-07-28 13:50:04 radvd,warning received Router Advertisement packet with non-linklocal source address
vyos@vyos:~$ show interfaces bridge br0 
br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 6144 qdisc noqueue state UP group default qlen 1000
    link/ether 0a:75:55:35:f7:1e brd ff:ff:ff:ff:ff:ff
    inet 100.80.0.1/20 brd 100.80.15.255 scope global br0
       valid_lft forever preferred_lft forever
    inet6 fd00:0:9000:ff::1/64 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::875:55ff:fe35:f71e/64 scope link 
       valid_lft forever preferred_lft forever

    RX:        bytes  packets  errors  dropped  overrun       mcast
         14034387500  6138253       0        0        0         302
    TX:        bytes  packets  errors  dropped  carrier  collisions
          6010724194  5740907       0        0        0           0

So VyOS is not sending RAs from link-local for some reason?