#992873 dhcrelay -6 does not work if there are interface aliases up in the system

Package:
isc-dhcp-relay
Source:
isc-dhcp
Description:
ISC DHCP relay daemon
Submitter:
"Santiago R.R."
Date:
2021-08-24 14:45:03 UTC
Severity:
important
Tags:
#992873#5
Date:
2021-08-24 14:44:00 UTC
From:
To:
Hi there,

I've been hitted by this bug on a machine running stretch, but it is
also present in the current version on sid (4.4.1-3).

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 -l and -u filters do not work. But that's another bug.

Cheers,