通过API获取我的公共IP


76

是否有某个大公司提供的公共API,可以从程序中获取我的公共IP?

我已经找到了http://ip-address.domaintools.com/myip.xml,这正是我想要的,但是不幸的是,它阻塞了Pythonurllib以及许多其他的http库,除非您欺骗了用户代理(任何做不到的事情都不能称为API)。

问题是我需要一些可能的开源库的数据,因此我们必须遵守规则。我也知道我可以像一样做print $_SERVER[REMOTE_ADDR],但是我不想使用我的库来为所有人提供流量。

那么,上面是否有类似URL的东西,但真正的API允许机器人使用?



1
Duck Duck Go具有确定您IP地址的公共方法。由于此问题已经关闭并且我无法添加答案,因此我在这里详细介绍了一下:stackoverflow.com/a/33743758/901641
ArtOfWarfare 2015年

2
ipify.org是替代服务。
Horcrux7年

我建议尝试Ipregistry:api.ipregistry.co/? key= tryout(免责声明:我运行该服务)。
洛朗

Answers:


95

虽然不是大公司提供的,但所有这些都应该起作用:

curl icanhazip.com
curl -s 'http://checkip.dyndns.org' | sed 's/.*Current IP Address: \([0-9\.]*\).*/\1/g'
host -t a dartsclink.com | sed 's/.*has address //'
curl curlmyip.com
curl ifconfig.me # this has a lot of different alternatives too, such as ifconfig.me/host

资源


1
棒极了!非常感谢,尤其是。对于一个人,那会做!
Slava V

4
icanhazip.com返回最干净的结果imho
mnagel


@mnagel它似乎也是唯一支持HTTPS的服务器。多么讽刺...
纳文

4
您可以检查ipify.org,它具有清晰的API并支持HTTPS。
Yoan Tournade

40

您可以从我的服务http://ipinfo.io获取IP以及其他信息:

$ curl ipinfo.io
{
  "ip": "67.188.232.131",
  "hostname": "c-67-188-232-131.hsd1.ca.comcast.net",
  "city": "Mountain View",
  "region": "California",
  "country": "US",
  "loc": "37.385999999999996,-122.0838",
  "org": "AS7922 Comcast Cable Communications, Inc.",
  "phone": 650
}

如果只需要IP:

$ curl ipinfo.io/ip
67.188.232.131

这也适用于其他领域,例如:

$ curl ipinfo.io/org
AS7922 Comcast Cable Communications, Inc.

有关更多详细信息,请访问http://ipinfo.io/developers


2
不支持HTTPS
Navin 2013年

付费计划均具有HTTPS支持。参见ipinfo.io/pricing-Ben
Dowling,

不支持IPv6 ...
rustyx

它通过v6.ipinfo.io支持IPv6
Ben Dowling

好像现在支持https,不需要付费计划。
拉曼


3

我使用这个,容易记住,并且比其他的更短:

$ curl ifconfig.me

提示:请记住,如果在shell脚本中使用curl,则必须使用-s选项,否则它将打印下载进度表。

$ echo `curl -s ifconfig.me`


3
由于运行缓慢,我从ifconfig.me移至ipinfo.io
rodvlopes 2015年

不支持IPv6 ...
rustyx

0

是的,您可以尝试使用whoisthisip.com

http://whoisthisip.com/HRAS/ 注册到whoisthisip.com以获取网站的IP地址信息,例如城市位置,国家/地区和域名。

登录后,将为您提供参考代码和URL,以查看并获取您注册网站的IP地址信息。


0

您可以使用Web服务API来完成以下工作:

see example of service: http://ip-api.com and usage: http://whatmyip.info

祝好运!!!


ip-api.com/json是最快的方法,并且具有最佳的响应时间。每分钟150个请求
ivahidmontazer


-1

如果无法在系统中安装curl,则wget变体为:

wget -qO- curlmyip.com
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.