我正在用c#开发一个应用程序,我需要找到用于连接到互联网的公共IP地址。我怎么能得到这个?
答案 0 :(得分:1)
您可以使用http://showip.codebrainz.ca/来获取它。更多信息here。
代码示例:
using System;
using System.Net;
class Program
{
static void Main()
{
// Create web client.
WebClient client = new WebClient();
// Download string.
string ip = client.DownloadString("http://showip.codebrainz.ca/");
// Write ip.
Console.WriteLine(ip);
}
}
答案 1 :(得分:0)
答案 2 :(得分:0)
其他海报已经解决了获取公共IP地址的最简单方法。有一些替代方案,但它们是情境性的(例如需要支持SNMP的路由器的SNMP)。
如果您想要一种方法,不仅可以让您获取公共IP地址,还可以测试您连接到互联网的方式(例如,对称NAT,全锥,直接连接等),您可以使用STUN协议(见RFC 5389)。 STUN还要求您联系外部STUN服务器。
如果你想要一个例子,Ivar Lumi在codeproject上发布了一些working c# code。根据您的要求,这可能是过度的。