Page MenuHomePhabricator

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

Difficulty level
Unknown (require assessment)
Version
-
Why the issue appeared?
Will be filled on close
Is it a breaking change?
Perfectly compatible

Event Timeline

jjakob created this task.Dec 12 2019, 7:39 PM
jjakob created this object in space S1 VyOS Public.
jjakob updated the task description. (Show Details)
jjakob claimed this task.Dec 12 2019, 7:48 PM
pasik added a subscriber: pasik.Dec 12 2019, 8:38 PM

https://github.com/vyos/vyos-1x/pull/182
We have to ship our own /etc/{init.d,default}/isc-dhcp{v4,v6}-server files since we can't overwrite the ones supplied by the debian package.

jjakob updated the task description. (Show Details)Dec 13 2019, 8:06 AM
jjakob closed this task as Resolved.Dec 19 2019, 11:44 AM
jjakob moved this task from Need Triage to Finished on the VyOS 1.3 Equuleus board.