>> The following relevant portion in my working networking config. > > You did not show any of the systemd/networkd conf files.
True. Let me start over. In the "old" situation I configure the system with "legacy scripts" as they call it, which do not use networkd beyond putting .link units in /etc/systemd/network: networking is setup separately and dhcp is handled by dhcpcd. In the "new" situation I am trying to use systemd. In my previous email I shared the NixOS config that generates the unit files but in hindsight I shouldn't have assumed that everyone is familiar with NixOS. And, I see in the archives of this list that the formatting of my first turned up horrible, so I'll try a different mail client - hopefully this one will work better. > What software are you using for dhcp? So let me start over and try better descriptions. First the old situation, in which the wan device (a vlan ethernet link) is setup by NixOS and is assigned the IPv6 address 2001:db8:effe:ffff::fe/128. Then it runs dhcpcd: dhcpcd.conf: ---- hostname option domain_name_servers, domain_name, domain_search option classless_static_routes, ntp_servers, interface_mtu nohook lookup-hostname denyinterfaces ve-* vb-* lo peth* vif* tap* tun* virbr* vnet* vboxnet* sit* allowinterfaces wan waitip 4 waitip 6 option host_name hostname clientid persistent option rapid_commit option domain_name_servers, host_name nooption interface_mtu slaac private nohook lookup-hostname noipv4ll interface wan nooption interface_mtu ipv6rs ia_pd 1/::/48 ---- 'ip -6 addr show dev wan' shows two IP addresses: 2001:db8:effe:ffff::fe/128 fe80::somethingsomething/64 'ip -6 route show default' shows: default via fe80::2 dev wan proto ra metric 1006 pref high Then radvd is started with this radvd.conf for my LAN (vlan 10, bridge vbr10): ---- interface vbr10 { AdvSendAdvert on; prefix 2001:4c3b:8631:10::/64 { AdvAutonomous on; AdvOnLink on; AdvPreferredLifetime 54800; # 18 hours AdvValidLifetime 604800; # 7 days }; RDNSS fe80::76:35ff:fefb:1001 { AdvRDNSSLifetime 14400; # 4 uur }; }; --- This gives me working IPv6 on my router and on my LAN. So now the new situation. Here is the .network unit which ultimately results in partially configured non-working IPv6: 15-wan.network: configure the vlan interface ---- [Match] Name=wan [Link] RequiredForOnline=true [Network] DHCP=yes DHCPPrefixDelegation=true IPv6AcceptRA=true IPv6PrivacyExtensions=true LinkLocalAddressing=ipv6 # I tried both with and without this line: Address=2001:db8:effe:ffff::fe/128 [DHCPv4] # working dhcpv4 ClientIdentifier=mac RapidCommit=true UseHostname=false UseMTU=false [DHCPv6] PrefixDelegationHint=::/48 RapidCommit=true [IPv6AcceptRA] # I tried both with and without this line: Token=static:::ffff:0:0:fe UseAutonomousPrefix=false UseDNS=false ---- > In my case my ISP provides a PPPoE interface that does a lot of the > heavy lifting. > You have ethernet without the PPPoE it seems. Yeah idk about PPPoE, here my the router is connected to a XS-010X-Q, a simple fiber to ethernet converter pretty much, with internet on a vlan. It isn't really relevant to any of this; my goal is to use systemd instead of dhcpcd / dhclient, for IPv6 as well which if I understand correctly should be doable. > Then I use /etc/systemd/networkd .conf for the internal and external > interfaces. > > I can get ISC kea dhcp to work for ipv4, but not integrate with bind. > So I'm still on ISC dhcpv4 until I have time to fix the integration. > The IPv6 is doing prefix deligation and that is all in the .conf > files. It looks like you're setting up your networking with systemd and then relying on an external dhcp client to set up your connection. My question is about how to let systemd handle that part too. I appreciate your mail, it helped me sort my thoughts, Mark