BSD: Use MSG_DONTROUTE for unicast packets on FreeBSD

BSD systems cannot use SO_DONTROUTE, because it does not work properly
with multicast packets (perhaps it tries to find iface based on multicast
group address). But we can use MSG_DONTROUTE sendmsg() flag for unicast
packets. Works on FreeBSD, is ignored on OpenBSD and is broken on NetBSD
(i guess due to integrated routing table and ARP table).
49 jobs for master in 6 minutes and 28 seconds (queued for 12 seconds)
Status Job ID Name Coverage
  Image
passed #154708
dind allowed to fail
docker_centos-6-amd64

00:00:19

passed #154709
dind allowed to fail
docker_centos-7-amd64

00:00:19

passed #154698
dind allowed to fail
docker_debian-7-amd64

00:00:21

passed #154702
dind allowed to fail
docker_debian-7-i386

00:00:20

passed #154699
dind allowed to fail
docker_debian-8-amd64

00:00:22

passed #154703
dind allowed to fail
docker_debian-8-i386

00:00:18

passed #154700
dind allowed to fail
docker_debian-9-amd64

00:00:21

passed #154704
dind allowed to fail
docker_debian-9-i386

00:00:18

passed #154701
dind allowed to fail
docker_debian-testing-amd64

00:00:21

passed #154705
dind allowed to fail
docker_debian-testing-i386

00:00:18

passed #154706
dind allowed to fail
docker_fedora-25-amd64

00:00:20

passed #154707
dind allowed to fail
docker_fedora-26-amd64

00:00:20

passed #154710
dind allowed to fail
docker_opensuse-42_3-amd64

00:00:19

passed #154711
dind allowed to fail
docker_ubuntu-14_04-amd64

00:00:19

passed #154712
dind allowed to fail
docker_ubuntu-16_04-amd64

00:00:17

 
  Build
passed #154725
docker linux amd64
build-centos-6-amd64

00:00:56

passed #154726
docker linux amd64
build-centos-6-amd64-v6

00:01:18

passed #154727
docker linux amd64
build-centos-7-amd64

00:01:14

passed #154728
docker linux amd64
build-centos-7-amd64-v6

00:01:13

passed #154713
docker linux amd64
build-debian-7-amd64

00:01:19

passed #154717
docker linux amd64
build-debian-7-amd64-v6

00:01:18

passed #154735
docker linux amd64
build-debian-7-i386

00:00:48

passed #154736
docker linux amd64
build-debian-7-i386-v6

00:00:51

passed #154714
docker linux amd64
build-debian-8-amd64

00:01:00

passed #154718
docker linux amd64
build-debian-8-amd64-v6

00:01:11

passed #154737
docker linux amd64
build-debian-8-i386

00:00:50

passed #154738
docker linux amd64
build-debian-8-i386-v6

00:00:48

passed #154715
docker linux amd64
build-debian-9-amd64

00:01:05

passed #154719
docker linux amd64
build-debian-9-amd64-v6

00:01:18

passed #154739
docker linux amd64
build-debian-9-i386

00:00:47

passed #154740
docker linux amd64
build-debian-9-i386-v6

00:00:45

passed #154716
docker linux amd64
build-debian-testing-amd64

00:01:16

passed #154720
docker linux amd64
build-debian-testing-amd64-v6

00:01:21

passed #154741
docker linux amd64
build-debian-testing-i386

00:00:39

passed #154742
docker linux amd64
build-debian-testing-i386-v6

00:00:42

passed #154721
docker linux amd64
build-fedora-25-amd64

00:01:21

passed #154722
docker linux amd64
build-fedora-25-amd64-v6

00:01:12

passed #154723
docker linux amd64
build-fedora-26-amd64

00:01:06

passed #154724
docker linux amd64
build-fedora-26-amd64-v6

00:00:58

passed #154743
freebsd amd64
build-freebsd-11-amd64

00:05:01

passed #154744
freebsd amd64
build-freebsd-11-amd64-v6

00:05:07

passed #154745
freebsd i386
build-freebsd-11-i386

00:05:20

passed #154746
freebsd i386
build-freebsd-i386-v6

00:05:24

passed #154729
docker linux amd64
build-opensuse-42_3-amd64

00:01:13

passed #154730
docker linux amd64
build-opensuse-42_3-amd64-v6

00:01:17

passed #154731
docker linux amd64
build-ubuntu-14_04-amd64

00:01:17

passed #154732
docker linux amd64
build-ubuntu-14_04-amd64-v6

00:01:17

passed #154733
docker linux amd64
build-ubuntu-16_04-amd64

00:00:49

passed #154734
docker linux amd64
build-ubuntu-16_04-amd64-v6

00:00:51