Earlier quoted context omitted.
Skype doesn't do this. Please read: http://www.mjalali.com/blog/?p=10 >1) Each client checks for internal and external IPs and saves them. That list is transmitted to your friends every time you update them with other data. It automatically manages this list of possible places to reach you. According to the link, "supernodes" route connections and provide matchmaking between Skype callers. How do you find the "supern…
That's true, its not exactly the same as your example. But the method I have developed does work.
Also, could you please point out to me the method you have developed for initial discovery? I've yet to see it in your source code. This is a very tough nut to crack and if you've got it done already then I'm impressed.