Make get_iface_hw_addr work on Linux and BSD

Having #define __FLAVOR_BSD seems to break some of the libdnet
stuff on Linux, so just fallback to the old way of getting the
hardware address by making a socket and sending an ifreq.