I find goagent use the same method to find my external ip, give it credit