>> 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

Reply via email to