[Pkg-mpd-maintainers] Bug#738831: mpd: Mpd does not start: mpdsocket: Failed to bind to '[::]:6600': Address already in use

Max Kellermann max at duempel.org
Thu Feb 13 10:29:53 UTC 2014


On 2014/02/13 11:16, Niccolo Rigacci <niccolo at rigacci.org> wrote:
> Mpd does not start properly when bind_to_address option is "any" and
> you have support for both ipv4 and ipv6.
> 
> This bug seems related to #563125, but it is not a problem of the resolver,
> because if you specify the following in /etc/mpd.conf:
> 
> bind_to_address         "0.0.0.0"
> bind_to_address         "::"
> 
> the daemon fails to start with the error:
> mpdsocket: Failed to bind to '[::]:6600': Address already in use
> 
> Instead if you start the daemon with either one of the lines, the daemon starts
> binding as expected on ipv4 only
> 
>   tcp   0   0 0.0.0.0:6600   0.0.0.0:*  LISTEN
> 
> or on ipv6 only:
> 
>   tcp6  0   0 :::6600        :::*       LISTEN
> 
> So it is impossible to listen on both ipv4 and ipv6 addresses.

No, and this bug report is bogus, because it is based on a
misconfiguration.

You configured /proc/sys/net/ipv6/bindv6only=0 and you tell MPD to
bind to IPv4:6600 first.  The second line will then try to bind to
IPv4 *again*, as your configuration demands.  Your kernel does not
allow binding to the same address twice.

How to solve the problem:

- remove the "0.0.0.0" line as "::" already implies IPv4

OR

- set bindv6only=1



More information about the Pkg-mpd-maintainers mailing list