Page MenuHomeVyOS Platform

DHCP server fails to start due to a change in isc-dhcp-server init scripts
Closed, ResolvedPublic

Description

In buster /etc/init.d/isc-dhcp-server changed. It now starts both v4 and v6 servers if INTERFACES, INTERFACESv4 and INTERFACESv6 are unset in /etc/default/isc-dhcp-server (as is the case in jessie).

INTERFACES is deprecated and replaced by INTERFACES{v4,v6}.

/etc/init.d/isc-dhcp-server:

start)
        if test -n "$INTERFACES" -a -z "$INTERFACESv4"; then
                echo "DHCPv4 interfaces are no longer set by the INTERFACES variable in" >&2
                echo "/etc/default/isc-dhcp-server.  Please use INTERFACESv4 instead." >&2
                echo "Migrating automatically for now, but this will go away in the future." >&2
                INTERFACESv4="$INTERFACES"
        fi
        if test -n "$INTERFACESv4"; then
                echo "Launching IPv4 server only."
                start_daemon "-4" "$DHCPDv4_CONF" "$NAME4" \
                        "$DHCPDv4_PID" "$DESC4" "$INTERFACESv4"
        fi
        if test -n "$INTERFACESv6"; then
                echo "Launching IPv6 server only."
                start_daemon "-6" "$DHCPDv6_CONF" "$NAME6" \
                        "$DHCPDv6_PID" "$DESC6" "$INTERFACESv6"
        fi
        if test -z "$INTERFACESv4" -a -z "$INTERFACESv6"; then
                echo "Launching both IPv4 and IPv6 servers (please configure INTERFACES in /etc/default/isc-dhcp-server if you only want one or the other)."
                start_daemon "-4" "$DHCPDv4_CONF" "$NAME4" \
                        "$DHCPDv4_PID" "$DESC4" ""
                start_daemon "-6" "$DHCPDv6_CONF" "$NAME6" \
                        "$DHCPDv6_PID" "$DESC6" ""

We need to set the interfaces to listen to in /etc/default or modify the init script to have a working dhcp-server startup.

Details

Version
-
Is it a breaking change?
Unspecified (possibly destroys the router)
Issue type
Bug (incorrect behavior)