it-swarm.com.de

Meine öffentliche IP über API abrufen

Gibt es eine öffentliche API einer großen Firma, um meine öffentliche IP aus einem Programm heraus zu erhalten? 

Ich habe http://ip-address.domaintools.com/myip.xml gefunden, was genau das ist, was ich will, aber leider blockiert es die urllib von Python sowie viele andere http-Bibliotheken, es sei denn, Sie spoof den user-agent (irgendetwas, das überhaupt keine API nennen kann).

Das Problem ist, dass ich diese Daten für eine potenziell Open Source-Bibliothek benötige, sodass wir uns an die Regeln halten müssen. Ich weiß auch, dass ich etwas wie print $_SERVER[REMOTE_ADDR] tun kann, aber ich möchte keinen Traffic für alle Benutzer meiner Bibliothek erstellen.

Gibt es so etwas wie die URL oben, aber echte API, die Roboter erlaubt?

70
Slava V

Obwohl nicht von großen Unternehmen, sollten alle diese funktionieren:

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

Quelle

91
Jamie Wong

Sie erhalten Ihre IP-Adresse und eine ganze Reihe weiterer Informationen von meinem Dienst http://ipinfo.io :

$ 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
}

Wenn du nur die IP willst:

$ curl ipinfo.io/ip
67.188.232.131

Das funktioniert auch für andere Bereiche, zB:

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

Weitere Informationen finden Sie unter http://ipinfo.io/developers

36
Ben Dowling

Im Json-Format mit weiteren Details wie latlong, country, city, user-agent

https://www.trackip.net/ip?json

oder 

https://www.trackip.net/ip

13
nbari

Ich benutze dieses, leicht zu merken und es ist kürzer als andere:

$ curl ifconfig.me

PROTIP: Denken Sie daran, dass Sie bei Verwendung von curl in Shell-Skripts die Option -s verwenden müssen. Andernfalls wird die Download-Fortschrittstabelle gedruckt.

$ echo `curl -s ifconfig.me`

2
sscarduzio

sie können Web-Service-APIs verwenden, die diese Funktion ausführen, z.

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

viel Glück!!!

1
user3463375
0
rkhan

Wenn Sie curl nicht in Ihrem System installieren können, wäre die Wget-Variante:

wget -qO- curlmyip.com
0
mimoralea

Ja, Sie können es mit whoisthisip.com ausprobieren

http://whoisthisip.com/HRAS/ Melden Sie sich bei whoisthisip.com an, um die IP-Adresse einer Website zu erhalten, z. B. Ort, Land und Domainname. 

Nach der Anmeldung erhalten Sie einen Referenzcode und eine URL, um die IP-Adresse der registrierten Website anzuzeigen und abzurufen. 

0
Adam Biju