获取机器公网IP

时间:2018-11-07 05:51:50

标签: c# networking network-programming ip-address

尝试使用c#获取机器的公共地址(不是本地IP)。无法获取公共IP。

我们可以使用外部link中的库或API来获取公共IP地址。

是否有可能在不使用外部API和库的情况下在c#中获得计算机公共IP地址?

2 个答案:

答案 0 :(得分:0)

尝试

public String getPublicIp()
{
    HTTPGet req = new HTTPGet();
    req.Request("http://checkip.dyndns.org");
    string[] a = req.ResponseBody.Split(':');
    string a2 = a[1].Substring(1);
    string[] a3=a2.Split('<');
    string ip = a3[0];
    return ip;
}

答案 1 :(得分:0)

异步获取公用IP(V4)地址(推荐)

HttpClient client = new HttpClient();
var ipTask = client.GetStringAsync("https://api.ipify.org");
var ipAddress = await ipTask;

对于IP V6,请使用以下URL:

var ipTask = client.GetStringAsync("https://api6.ipify.org");