dhcrelay -6 does not work if there are interface aliases up in the system
I've been hit by this issue on Debian stretch through sid (the latest including 4.4.1, I've been unable to test on 4.4.2).
dchrelay -6 doesn't start if there are interface aliases up in the system:
# /usr/sbin/dhcrelay -6 -pf /var/run/dhcrelay6.pid -l vlan.881 -u 2001:db8:cafe::2%vlan.880 Internet Systems Consortium DHCP Relay Agent 4.4.1 Copyright 2004-2018 Internet Systems Consortium. All rights reserved. For info, please visit https://www.isc.org/software/dhcp/ Bound to *:547 Listening on Socket/vlan.881:0 Sending on Socket/vlan.881:0 Listening on Socket/vlan.880:0 Sending on Socket/vlan.880:0 Listening on Socket/vlan Sending on Socket/vlan setsockopt: IPV6_JOIN_GROUP: Address already in use If you think you have received this message due to a bug rather than a configuration issue please read the section on submitting bugs on either our web page at www.isc.org or in the README file before submitting a bug. These pages explain the proper process and the information we find helpful for debugging. exiting.
The above error can be reproduced with inside a container with the following /etc/network/interfaces:
auto lo iface lo inet loopback auto vlan iface vlan inet dhcp auto vlan.880 auto vlan.880:0 iface vlan.880 inet static address 192.168.133.1/24 iface vlan.880 inet6 static address 2001:db8:cafe::1/64 iface vlan.880:0 inet static address 10.0.133.1/16 auto vlan.881 auto vlan.881:0 iface vlan.881 inet static address 192.168.131.1/24 iface vlan.881 inet6 static address 2001:db8:cafe:1::1/64 iface vlan.881:0 inet static address 10.1.131.1/16
Just removing (or commenting out) the interface aliases entries makes dchrelay -6 happy (again).
Please note the
-u filters do not work. But that's another bug.
This seems similar to #88. The patch attached there doesn't fix the problem.