获取全球ip地址

Oha*_*had 4 c++

我怎样才能(在C++中)我的计算机(Windows XP)的全局IP地址?

Tha*_*tos 5

你不能。

您可以确定各个接口上的 IP 地址,并且可能有多个。这些可能是局域网 IP(10.0.0.0/8、192.168.0.0/16 等),也可能是 Internet 可路由的。

您似乎在问“如果我有 192.168.0.3,我如何获得我的 Internet IP?” 没有函数调用来执行此操作:这样的 IP 可能存在,也可能不存在,甚至可能不止一个。

最接近的方法是让互联网上的已知计算机告诉您:连接到其他计算机,并要求他们发回他们认为您的 IP 地址。有一些网站可以实现此目的,有些甚至可能有 API 来执行此操作。

我觉得一些家庭路由器也可以通过 uPnP 告诉你,但同样,这并不能涵盖所有可能的情况。