Problem with dhcpv6 and systemd-networkd clients

Robert Senger robert.senger at lists.microscopium.de
Tue Apr 7 14:18:29 UTC 2020


Dear all,

I just discovered a problem with two clients that use systemd-networkd
for network configuration.

Both clients, as well as the dhcp server, run Debian 10.

Both clients have their network interfaces in /etc/systemd/network
configured like this:

File /etc/systemd/network/10-eth0.network
---
[Match]
MACAddress=00:30:05:c9:38:ff

[Network]
IPv6AcceptRA=yes
DHCP=yes

[DHCP]
UseDomains=true
---

When the clients come up, or when I restart systemd-networkd on the
client, I see this in the dhcpd logs:

Apr  7 15:54:19 prokyon dhcpd[9823]: Solicit message from fe80::230:5ff:fec9:38ff port 546, transaction ID 0xF7324300
Apr  7 15:54:19 prokyon dhcpd[9823]: Advertise NA: address fd10:2842:f0d1:101:af31:9c41:dd6b:7d5 to client with duid 00:02:00:00:ab:11:71:bc:09:50:c1:3c:0b:51 iaid = 1232215879 static
Apr  7 15:54:19 prokyon dhcpd[9823]: Sending Advertise to fe80::230:5ff:fec9:38ff port 546
Apr  7 15:54:19 prokyon dhcpd[9811]: DHCPREQUEST for 192.168.0.21 (192.168.0.251) from 00:30:05:c9:38:ff via eth0
Apr  7 15:54:19 prokyon dhcpd[9811]: DHCPACK on 192.168.0.21 to 00:30:05:c9:38:ff via eth0
Apr  7 15:54:20 prokyon dhcpd[9823]: Request message from fe80::230:5ff:fec9:38ff port 546, transaction ID 0x8DF86200
Apr  7 15:54:20 prokyon dhcpd[9823]: Discarding Request from fe80::230:5ff:fec9:38ff; not our server identifier (CLIENTID 00:02:00:00:ab:11:71:bc:09:50:c1:3c:0b:51, SERVERID 00:03:00:01:00:1d:aa:97:f0:44, server DUID 00:01:00:01:26:1f:32:19:02:a5:04:3d:96:27)

The client then assigns an address to it's eth0 interface, that is completely wrong:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.0.21  netmask 255.255.255.0  broadcast 192.168.0.255
        inet6 fe80::230:5ff:fec9:38ff  prefixlen 64  scopeid 0x20<link>
        inet6 fd10:2842:f0d1:101::1 prefixlen 128  scopeid 0x0<global>
        inet6 2001:470:52a0:101:230:5ff:fec9:38ff  prefixlen 64  scopeid 0x0<global>
        ether 00:30:05:c9:38:ff  txqueuelen 1000  (Ethernet)
        RX packets 14402  bytes 6624577 (6.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 9253  bytes 1639921 (1.5 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 17 

For explanation, the address 2001:470:52a0:101:230:5ff:fec9:38ff is the
SLAAC address. The DHCPV6 address should be
fd10:2842:f0d1:101:af31:9c41:dd6b:7d5 as sent by the dchp server. But
the client assignes fd10:2842:f0d1:101::1 to its interface (the other
client fd10:2842:f0d1:101::2), addresses that I never have configured
anywhere.

Other Linux clients using NetworkManager, or Windows 10 Clients, get
configured well in that setup.
 
What is going wrong here? I don't know if this is a server side or a
client side problem.

What I already did: Deleted all lease files in /var/lib/dhcp and
restarted isc-dhcp-server (server side). Restarted clients. No success.

Thanks for help,

Robert


-- 
Robert Senger




More information about the dhcp-users mailing list