[英]get global ip address
如何获得(在C ++中)我的计算机的全局 IP地址(Windows XP)?
你不能。
您可以确定各种接口上的IP地址,并且可能有多个IP地址。 这些可能是局域网IP(10.0.0.0/8,192.168.0.0/16等),或者它们可能是互联网可路由的。
您似乎在问“我是否有192.168.0.3,如何获取我的Internet IP?” 没有函数调用来执行此操作:这样的IP可能存在,它可能不存在,甚至可能不止一个。
您可以获得的最接近的是让互联网上的已知计算机告诉您:连接到其他计算机,并要求他们发回他们认为您的IP地址。 有一些网站为此,有些可能甚至有API来做到这一点。
我觉得有些家用路由器也可能通过uPnP告诉你,但同样,这不会涵盖所有可能的情况。
使用此纯文本IP url: get ip
在Windows上,您需要获取本地主机名,然后将其传递给winsock2中的gethostbyname
函数,该函数返回关联的IP地址。
示例: http : //tangentsoft.net/wskfaq/examples/ipaddr.html
Linux的堆栈溢出答案:
您必须向http://whatismyipaddress.com/
等网站发出请求,并在其中提取显示您的IP的字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.