I cannot comment on PPPoE, but I do know you have misspelled
"persistent" in your dhcpcd.conf(5) file. I don't know if it will help,
but you may try explicitly assigning an IAID to pppoe0 and perhaps use
that same IAID for ia_na and ia_pd. You say you are delegated a /48,
but you don't state how you know that. You may want to modify your
ia_pd line and specify the prefix length to be delegated to you as
well as the prefix lengths you want assigned to em0 and em1. For
example, something like:

interface pppoe0
        iaid 0
        ia_na 0
        ia_pd 0/::/48 em0/0/64 em1/1/64
        ipv6rs

Note, if you want to use SLAAC for em0 and em1; then you need to add
"/0" after "64" otherwise 1 will be used as your interface identifier.

You may want to include the output of dhcpcd -U pppoe0 and perhaps a
snippet of /var/log/daemon showing the exchange between dhcpcd and your
ISP. You should probably include /etc/hostname.pppoe0 as well.

You don't have "pass quick log on em1 all" in your pf(4) rules like you
do with em0, so you may want to make sure IPv6 communication is not
being blocked on it. Also, you may want to experiment with relaxing
your ICMPv6 rules, at least temporarily. You appear to be allowing the
necessary message types; but unless you know ICMPv6 well, you could be
blocking more than you should. Finally, you may be overly restrictive
with your DHCPv6 rules. For example, RFC 8415 says nothing about what
_source_ ports clients and servers MUST use but only the _destination_
ports-a similar issue was addressed by Florian Obser in dhcpleased(8)
(https://marc.info/?l=openbsd-bugs&m=163507791819694&w=2).

Reply via email to