>>254
100% Pure .Netでやるには、これしか方法はない。

IPHostEntry entry = Dns.GetHostByName( Dns.GetHostName() );
foreach( IPAddress address in entry.AddressList )
{
  byte[] addr = address.GetAddressBytes();
  if ( addrがプライベートIPじゃない )
  {
    return address;
  }
}