make exception tranferrable
fix bug of get if addr always use last interface candidate