Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Bug#882250: isc-dhcp-server: The dhcpv6 server does not respond to solicits, and therefore does not hand out ipv6 leases.

167 views
Skip to first unread message

Spotswood-adm, Robert

unread,
Nov 20, 2017, 12:40:02 PM11/20/17
to

Package: isc-dhcp-server

Version: 4.3.5-3

Severity: important

Tags: ipv6

 

Dear Maintainer,

 

The dhcpv4 server works fine. However, the dhcpv6 server does not respond to solicits, and therefore will not hand out ipv6 leases.

The server does log the solicits, so it is seeing them.

 

I confirmed this is a bug in the Debian version by downloading the official 4.3.5 version from ISC, compiling it, and then

running it with exact same config file and command line (except for the location of the server binary). Clients then

get ipv6 leases.

 

 

-- System Information:

Debian Release: 9.2

  APT prefers stable-updates

  APT policy: (500, 'stable-updates'), (500, 'stable')

Architecture: amd64 (x86_64)

 

Kernel: Linux 4.9.0-3-amd64 (SMP w/2 CPU cores)

Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE= (charmap=UTF-8)

Shell: /bin/sh linked to /bin/dash

Init: systemd (via /run/systemd/system)

 

Versions of packages isc-dhcp-server depends on:

ii  debconf [debconf-2.0]  1.5.61

ii  debianutils            4.8.1.1

ii  libc6                  2.24-11+deb9u1

ii  libdns-export162       1:9.10.3.dfsg.P4-12.3+deb9u3

ii  libirs-export141       1:9.10.3.dfsg.P4-12.3+deb9u3

ii  libisc-export160       1:9.10.3.dfsg.P4-12.3+deb9u3

ii  lsb-base               9.20161125

 

Versions of packages isc-dhcp-server recommends:

ii  isc-dhcp-common  4.3.5-3

ii  policycoreutils  2.6-3

 

Versions of packages isc-dhcp-server suggests:

pn  isc-dhcp-server-ldap  <none>

ii  policykit-1           0.105-18

 

-- Configuration Files:

/etc/dhcp/dhcpd.conf changed [not included]

/etc/dhcp/dhcpd6.conf changed [not included]

 

-- debconf information:

  isc-dhcp-server/interfaces:

Robert Senger

unread,
Dec 27, 2017, 8:00:02 PM12/27/17
to
Package: isc-dhcp-server
Version: 4.3.5-3
Followup-For: Bug #882250

I can confirm this bug after upgrading from Debian 8 Jessie to Debian 9
Stretch.

I am running isc-dhcp-server in both v4 and v6 mode on a number of interfaces,
one LAN and several WLAN interfaces.

Before upgrade, clients got v6 addresses on all interfaces. After upgrade, only
WLAN clients get v6 addresses from isc-dhcp-server. Whenever LAN clients
connect, I see solicit messages in the isc-dhcp-server logs and in tcpdump
output, but there's never sent an answer. Radvd and ipv4 works fine on all
interfaces.

The only difference between LAN and WLAN interface is that the LAN interface
has some additional addresses used as listening addresses by a local squid
proxy and that it has a global dynamic address assigned by the ISP.

Some configuration and debugging information:

root@prokyon:/etc/dhcp# ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.251 netmask 255.255.255.0 broadcast 192.168.0.255
inet6 fd10:2842:f0d1:101:20d:b9ff:fe0d:84b0 prefixlen 128 scopeid
0x0<global>
inet6 2001:472:7d:977::53 prefixlen 128 scopeid 0x0<global>
inet6 2001:a61:4619:8f01::1 prefixlen 64 scopeid 0x0<global>
inet6 fd10:3d52:f521::13 prefixlen 128 scopeid 0x0<global>
inet6 2001:472:7d:977::13 prefixlen 128 scopeid 0x0<global>
inet6 fd10:5d12:c721::13 prefixlen 128 scopeid 0x0<global>
inet6 fd10:2842:f0d1::13 prefixlen 128 scopeid 0x0<global>
inet6 fd10:7d41:b631::13 prefixlen 128 scopeid 0x0<global>
inet6 2001:472:52b5:101:20d:b9ff:fe0d:84b0 prefixlen 128 scopeid
0x0<global>
inet6 fe80::20d:b9ff:fe0d:84b0 prefixlen 64 scopeid 0x20<link>
ether 00:0d:b9:0d:84:b0 txqueuelen 1000 (Ethernet)
RX packets 9329004 bytes 6196176943 (5.7 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7248452 bytes 4465680935 (4.1 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

root@prokyon:/etc/dhcp# ifconfig wlan0
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.123 netmask 255.255.255.128 broadcast 192.168.1.127
inet6 2001:472:52b5:202:a5:4ff:fe3d:9610 prefixlen 128 scopeid
0x0<global>
inet6 fd10:2842:f0d1:202:a5:4ff:fe3d:9610 prefixlen 128 scopeid
0x0<global>
inet6 fe80::a5:4ff:fe3d:9610 prefixlen 64 scopeid 0x20<link>
ether 02:a5:04:3d:96:10 txqueuelen 1000 (Ethernet)
RX packets 645631 bytes 147489457 (140.6 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 813939 bytes 494687778 (471.7 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0


dhcpd6.conf:
subnet6 fd10:2842:f0d1:101::/64 {
# lan

# Range for clients
range6 fd10:2842:f0d1:101:af31:9c41:dd6b:7a4
fd10:2842:f0d1:101:af31:9c41:dd6b:7c4;

# Range for clients requesting a temporary address
range6 fd10:2842:f0d1:101::/64 temporary;

# Additional options
option dhcp6.name-servers fd10:2842:f0d1:101:20d:b9ff:fe0d:84b0;
option dhcp6.sntp-servers fd10:2842:f0d1:101:20d:b9ff:fe0d:84b0;
option dhcp6.domain-search "its-me.de";

# Prefix range for delegation to sub-routers
#prefix6 2001:472:7c:100:: 2001:db8:0:f00:: /56;

ddns-domainname "its-me.de.";
ddns-rev-domainname "ip6.arpa.";
}

subnet6 fd10:2842:f0d1:202::/64 {
# wlan

# Range for clients
range6 fd10:2842:f0d1:202:5d32:abf3:7de2:5d3
fd10:2842:f0d1:202:5d32:abf3:7de2:5f3;

# Range for clients requesting a temporary address
range6 fd10:2842:f0d1:202::/64 temporary;

# Additional options
option dhcp6.name-servers fd10:2842:f0d1:101:20d:b9ff:fe0d:84b0;
option dhcp6.sntp-servers fd10:2842:f0d1:101:20d:b9ff:fe0d:84b0;
option dhcp6.domain-search "its-me.de";

# Prefix range for delegation to sub-routers
#prefix6 2001:472:7c:100:: 2001:db8:0:f00:: /56;

ddns-domainname "its-me.de.";
ddns-rev-domainname "ip6.arpa.";
}

dhcpd.log: (LAN client, broken)
Dec 28 01:41:51 prokyon dhcpd[27274]: Solicit message from
fe80::230:5ff:fe96:90dd port 546, transaction ID 0x925C6800
Dec 28 01:41:53 prokyon dhcpd[27274]: Solicit message from
fe80::230:5ff:fe96:90dd port 546, transaction ID 0x925C6800
Dec 28 01:41:55 prokyon dhcpd[27274]: Solicit message from
fe80::230:5ff:fe96:90dd port 546, transaction ID 0x925C6800
Dec 28 01:41:59 prokyon dhcpd[27274]: Solicit message from
fe80::230:5ff:fe96:90dd port 546, transaction ID 0x925C6800
Dec 28 01:42:07 prokyon dhcpd[27274]: Solicit message from
fe80::230:5ff:fe96:90dd port 546, transaction ID 0x925C6800

tcpdump: (LAN client, broken)
01:42:44.628547 IP6 fe80::230:5ff:fe96:90dd.dhcpv6-client >
ff02::1:2.dhcpv6-server: dhcp6 solicit
01:42:45.699812 IP6 fe80::230:5ff:fe96:90dd.dhcpv6-client >
ff02::1:2.dhcpv6-server: dhcp6 solicit
01:42:47.902235 IP6 fe80::230:5ff:fe96:90dd.dhcpv6-client >
ff02::1:2.dhcpv6-server: dhcp6 solicit
01:42:52.096659 IP6 fe80::230:5ff:fe96:90dd.dhcpv6-client >
ff02::1:2.dhcpv6-server: dhcp6 solicit
01:43:00.885703 IP6 fe80::230:5ff:fe96:90dd.dhcpv6-client >
ff02::1:2.dhcpv6-server: dhcp6 solicit

dhcpd.log: (WLAN client, okay)
Dec 28 01:42:58 prokyon dhcpd[27274]: Renew message from fe80::21f:e1ff:fe1d:61
port 546, transaction ID 0xEF0D5700
Dec 28 01:42:58 prokyon dhcpd[27274]: Reply NA: address
fd10:2842:f0d1:202:5d32:abf3:7de2:5f1 to client with duid
00:04:9d:83:51:09:62:93:3d:bb:05:9f:95:24:50:3f:5c:f2 iaid = -518193055 valid
for 1200 seconds

tcpdump: (WLAN client, okay)
01:47:15.872782 IP6 fe80::21f:e1ff:fe1d:61.dhcpv6-client >
ff02::1:2.dhcpv6-server: dhcp6 confirm
01:47:15.872902 IP6 fe80::21f:e1ff:fe1d:61.dhcpv6-client >
ff02::1:2.dhcpv6-server: dhcp6 confirm
01:47:15.899030 IP6 fe80::a5:4ff:fe3d:9610.dhcpv6-server >
fe80::21f:e1ff:fe1d:61.dhcpv6-client: dhcp6 reply




-- System Information:
Debian Release: 9.3
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages isc-dhcp-server depends on:
ii debconf [debconf-2.0] 1.5.61
ii debianutils 4.8.1.1
ii libc6 2.24-11+deb9u1
ii libdns-export162 1:9.10.3.dfsg.P4-12.3+deb9u3
ii libirs-export141 1:9.10.3.dfsg.P4-12.3+deb9u3
ii libisc-export160 1:9.10.3.dfsg.P4-12.3+deb9u3
ii lsb-base 9.20161125

Versions of packages isc-dhcp-server recommends:
ii isc-dhcp-common 4.3.5-3
ii policycoreutils 2.6-3

Versions of packages isc-dhcp-server suggests:
pn isc-dhcp-server-ldap <none>
ii policykit-1 0.105-18

-- Configuration Files:
/etc/dhcp/dhcpd.conf changed [not included]
/etc/dhcp/dhcpd6.conf changed [not included]

-- debconf information excluded

Robert Senger

unread,
Dec 27, 2017, 9:00:02 PM12/27/17
to
Package: isc-dhcp-server
Version: 4.3.5-3
Followup-For: Bug #882250

I can also confirm that compiling the original dhcp-4.3.5 tarball from isc and
replacing the binary in /usr/sbin resolves this problem.



-- System Information:
Debian Release: 9.3
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages isc-dhcp-server depends on:
ii debconf [debconf-2.0] 1.5.61
ii debianutils 4.8.1.1
ii libc6 2.24-11+deb9u1
ii libdns-export162 1:9.10.3.dfsg.P4-12.3+deb9u3
ii libirs-export141 1:9.10.3.dfsg.P4-12.3+deb9u3
ii libisc-export160 1:9.10.3.dfsg.P4-12.3+deb9u3
ii lsb-base 9.20161125

Versions of packages isc-dhcp-server recommends:
ii isc-dhcp-common 4.3.5-3
ii policycoreutils 2.6-3

Versions of packages isc-dhcp-server suggests:
pn isc-dhcp-server-ldap <none>
ii policykit-1 0.105-18

-- Configuration Files:
/etc/dhcp/dhcpd.conf changed [not included]
/etc/dhcp/dhcpd6.conf changed [not included]

-- debconf information excluded

Robert Senger

unread,
Dec 28, 2017, 5:50:03 AM12/28/17
to
Package: isc-dhcp-server
Version: 4.3.5-3
Followup-For: Bug #882250

This issue seems to be caused by the Debian-specific patch dhcommon-
getifaddrs.patch, reverting this patch in the Debian Stretch source package and
compiling and installing the package also resolves the problem.

In my previous posts I forgot to mention that eth0 on my machine also has some
aliases:

eth0:0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.3.251 netmask 255.255.0.0 broadcast 172.16.255.255
ether 00:0d:b9:0d:84:b0 txqueuelen 1000 (Ethernet)

eth0:1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.4.251 netmask 255.255.0.0 broadcast 172.16.255.255
ether 00:0d:b9:0d:84:b0 txqueuelen 1000 (Ethernet)

eth0:2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 172.16.2.251 netmask 255.255.0.0 broadcast 172.16.255.255
ether 00:0d:b9:0d:84:b0 txqueuelen 1000 (Ethernet)

I do not know what makes the new method using getifaddr() fail on eth0 in my
specific case. Maybe the multiple ip6 addresses, maybe the aliases, maybe
anything other.



-- System Information:
Debian Release: 9.3
APT prefers stable-updates
APT policy: (500, 'stable-updates'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 4.9.0-4-amd64 (SMP w/2 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8), LANGUAGE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages isc-dhcp-server depends on:
ii debconf [debconf-2.0] 1.5.61
ii debianutils 4.8.1.1
ii libc6 2.24-11+deb9u1
ii libdns-export162 1:9.10.3.dfsg.P4-12.3+deb9u3
ii libirs-export141 1:9.10.3.dfsg.P4-12.3+deb9u3
ii libisc-export160 1:9.10.3.dfsg.P4-12.3+deb9u3
ii lsb-base 9.20161125

Versions of packages isc-dhcp-server recommends:
ii isc-dhcp-common 4.3.5-3
ii policycoreutils 2.6-3

Versions of packages isc-dhcp-server suggests:
pn isc-dhcp-server-ldap <none>
ii policykit-1 0.105-18

-- Configuration Files:
/etc/dhcp/dhcpd.conf changed [not included]
/etc/dhcp/dhcpd6.conf changed [not included]

-- debconf information excluded

Dean Hamstead

unread,
Nov 17, 2021, 8:40:04 PM11/17/21
to
I just experienced this bug in dhcp-server-4.3.6-45.el8.x86_64.rpm frpm
centos8

The dhcommon-
getifaddrs.patch patch based on
https://sources.debian.org/patches/isc-dhcp/4.3.5-3+deb9u1/dhcommon-getifaddrs.patch/
was produced by redhat and appears to now be merged in to 4.3.6

i extracted the src rpm and the dhcp-4.3.6.tar.gz in turn - the changes
to discover.c have been applied.

so it seems that this bug is now merged upstream.


So in ipv6 if there is an alias interface with no ipv6 address (i.e.
eth0:0) configured the entire interface (i.e. eth0) will be silently
ignored.


Fun


Dean

Dean Hamstead

unread,
Nov 19, 2021, 6:10:04 PM11/19/21
to
Specifying the interface name as an argument to dhcpd seems to work
around this issue.
0 new messages