As mentioned here https://darkcointalk.org/threads/rc4-testing.1830/page-96#post-15961 Bitcoin uses in some cases some external sites to find out its client's public IP. Those external sites may or may not be available in the future, or even try to do nasty things. Theymos has explained several times that it's kinda okay but of course not optimal to get the public IP from some external service. What about using the masternodes for this? It's about one line of PHP to return the clients public IP.