2010-06-22 8 views
67

के माध्यम से अपना सार्वजनिक आईपी प्राप्त करना क्या कोई बड़ी कंपनी से कोई सार्वजनिक एपीआई प्रोग्राम के भीतर से मेरा सार्वजनिक आईपी प्राप्त करने के लिए है?एपीआई

मैं http://ip-address.domaintools.com/myip.xml पाया है, जो कि मैं वास्तव में क्या चाहते हैं, लेकिन दुर्भाग्य से यह ब्लॉक पायथन के urllib के साथ ही कई अन्य http पुस्तकालयों, जब तक आप हंसोड़ उपयोगकर्ता-एजेंट (कर रही कुछ भी एक API नहीं कहा जा सकता)।

समस्या यह है कि मुझे कुछ संभावित ओपन सोर्स लाइब्रेरी के लिए इस डेटा की आवश्यकता है, इसलिए हमें नियमों से खेलना है। मुझे यह भी पता है कि मैं सिर्फ print $_SERVER[REMOTE_ADDR] की तरह smth कर सकता हूं, लेकिन मैं अपनी लाइब्रेरी का उपयोग कर हर किसी के लिए यातायात सर्वर नहीं करना चाहता हूं।

तो, ऊपर यूआरएल की तरह कुछ है, लेकिन असली एपीआई, जो रोबोट की अनुमति देता है?

+0

संबंधित: [प्रोग्राम के सार्वजनिक आईपी की खोज] (http://stackoverflow.com/q/613471/4279) – jfs

+0

बतख बतख जाओ आपके आईपी पते को निर्धारित करने के लिए एक सार्वजनिक विधि है। मैंने इसे और अधिक विस्तृत किया है, क्योंकि यह प्रश्न बंद है और मैं कोई जवाब नहीं जोड़ सकता: http://stackoverflow.com/a/33743758/901641 – ArtOfWarfare

+1

https://www.ipify.org/ एक वैकल्पिक सेवा है । – Horcrux7

उत्तर

87

जबकि बड़ी कंपनियों से नहीं, इन सब काम करना चाहिए:

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

वापस आ जाएगा! बहुत बहुत धन्यवाद, esp। एक के लिए dyndns, वह करेगा! –

+3

icanhazip.com सबसे साफ परिणाम देता है imho – mnagel

+4

इसके अलावा http://ipinfo.io/ip –

34

आप अपने आईपी प्राप्त कर सकते हैं, और अन्य जानकारी की एक पूरी गुच्छा , मेरी सेवा से 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 
} 

तुम सिर्फ आईपी चाहते हैं:

$ curl ipinfo.io/ip 
67.188.232.131 

भी अन्य क्षेत्रों के लिए काम करता है यही कारण है, उदाहरण के लिए:

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

अधिक विवरण उपलब्ध http://ipinfo.io/developers

+1

HTTPS – Navin

+0

का समर्थन नहीं करता है भुगतान की गई सभी योजनाओं में HTTPS समर्थन है। Http://ipinfo.io/pricing –

2

मैं इस एक का उपयोग पर, करने के लिए आसान याद रखें और यह दूसरों की तुलना में छोटा है:

$ curl ifconfig.me

प्रोटीआईपी: याद रखें कि यदि आप खोल स्क्रिप्ट में कर्ल का उपयोग करते हैं तो आपको -s विकल्प का उपयोग करना होगा, अन्यथा यह डाउनलोड प्रगति तालिका मुद्रित करता है।

$ echo `curl -s ifconfig.me`

+2

देखें मैं धीमे – rodvlopes

0

हाँ आप whoisthisip के साथ प्रयास कर सकते हैं।कॉम

http://whoisthisip.com/HRAS/ वेबसाइट की स्थिति, देश स्थान और डोमेन नाम जैसी वेबसाइट की आईपी पता जानकारी प्राप्त करने के लिए whoisthisip.com पर पंजीकरण करें।

एक बार साइन इन करने के बाद, आपको एक संदर्भ कोड और एक यूआरएल दिया जाएगा जो आपके द्वारा पंजीकृत वेबसाइट के लिए आईपी पते की जानकारी देखने और प्राप्त करने के लिए दिया जाएगा।

1

आप उपयोग कर सकते हैं वेब सेवा एपीआई जो इस तरह काम करते हैं:

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

सौभाग्य !!!

+0

के कारण _ifconfig.me_ से _ipinfo.io_ पर जा रहा हूं http://ip-api.com/json सबसे तेज़ तरीका है और इसका सर्वोत्तम प्रतिक्रिया समय है। 150 अनुरोध/मिनट – ivahidmontazer

0

आप अपने सिस्टम wget संस्करण में कर्ल स्थापित नहीं कर सकता, तो होगा:

wget -qO- curlmyip.com