/* * return the best address out of the same scope. if no address was * found, return the first valid address from designated IF. */