Set IP_FREEBIND on socket before bind to allow start before the network is fully up
Add support for binding on non-local sockets on FreeBSD (IPV6_FREEBIND)
IP freebind: add IP_BINDANY for FreeBSD
Merge branch 'freebind' into 'master'

Allow server to start before the interfaces are up

This adds very simple support for starting server before all interfaces are up (see [1]).  The most correct solution would be to use rtnetlink[2] and bind to interfaces as they come up, since using IP_FREEBIND or IP(V6)_BINDANY also means that wrong IP address won't be detected and reported as error.

Something like this is needed for systems with systemd as init system and dynamic interfaces.

NSD is also haunted by this (see [3]).

References:
1. http://www.freedesktop.org/wiki/Software/systemd/NetworkTarget/
2. http://man7.org/linux/man-pages/man7/rtnetlink.7.html
3. https://bugs.debian.org/765831

See merge request !295