title: Is there a standard .NET decoder for ipv4 and ipv6 addresses?
body: <p>I'd like to write a fairly simple client-server network app. I only use a pure IPv4 network, but it would be nice to future-proof my code. I'll probably be using TcpListener/TcpClient, because <a href="http://msdn.microsoft.com/en-us/library/ms734712.aspx" rel="nofollow">preliminary investigation of WCF</a> reveals it to be overly complex to set up and hard to grok.</p>
  
  <p>For the client side, does .NET provide a facility to automatically decode a string that contains an IPv4 or IPv6 address (where the IPv4 address includes a port number)? Bonus points if it can resolve a domain name.</p>
  
  <p><strike>For the server side, I heard IPv6 doesn't use port numbers, so what's the equivalent of the port to listen on, and is there a standard way to differentiate a IPv4 port number string from the IPv6 equivalent?</strike> Never mind, IPv6 services have 16-bit port numbers just like IPv4 ones.</p>