如何查询外网的IP(局域网,就是网络的IP地址 代码实现最佳 求助!求助!
注明:不是通过dos中的Ipconfig和本地127.0.0.1

解决方案 »

  1.   

    static string GetPage(string url) 
      { 
        HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); 
        try 
        { 
          using (HttpWebResponse res = (HttpWebResponse)req.GetResponse()) 
          { 
            using (StreamReader sr = new StreamReader(res.GetResponseStream())) 
            { 
              return sr.ReadToEnd(); 
            } 
          } 
        } 
        catch (System.Exception e) 
        { 
          return e.Message; 
        } 
        finally 
        { 
          req.Abort(); 
        } 
      } 
      // 通过外部网站得到本机的外部IP 
      static string GetOuterIP() 
      { 
        string patt = @"IP: \[(? <IP>[0-9\.]*)\]"; 
        string url  = ""; 
        return Regex.Match(GetPage(url), patt).Groups["IP"].Value; 
      }   static void Main() 
      { 
        foreach (IPAddress ip in Dns.GetHostEntry(Dns.GetHostName()).AddressList) 
        { 
          Console.WriteLine(ip); 
        } 
        Console.WriteLine(); 
        Console.WriteLine(GetOuterIP()); 
      }