अगले लेख में हम यह देखने के लिए जा रहे हैं कि हम कैसे कर सकते हैं हमारे सार्वजनिक आईपी पते की भौगोलिक स्थिति प्राप्त करें। हम खुले एपीआई और एक साधारण बैश स्क्रिप्ट के माध्यम से ऐसा कर पाएंगे, जो कि उबंटू टर्मिनल से लिया गया है। आज इंटरनेट से जुड़े सभी उपकरणों में एक आईपी है, जो दुनिया के लिए उनका पहचानकर्ता है। यह पता वह है जिसका उपयोग हम आपके स्थान को प्राप्त करने के लिए करेंगे।
जब हम इंटरनेट पर सर्फ करते हैं, प्रत्येक सर्वर में एक सार्वजनिक आईपी पता होता है, यह सीधे सर्वर को या एक राउटर के माध्यम से सौंपा जाता है जो उस सर्वर पर नेटवर्क ट्रैफ़िक भेजता है। आईपी पते दुनिया में सर्वर की भौगोलिक स्थिति को ट्रैक करने का एक आसान तरीका प्रदान करते हैं। इसके द्वारा प्रदान किए गए दो एपीआई का उपयोग करके प्राप्त किया जा सकता है ipinfo.io e ipvigilante.com जिसके साथ हम सर्वर का देश, शहर का नाम और उसके भौगोलिक निर्देशांक प्राप्त कर सकेंगे।
निम्नलिखित लाइनों में हम देखेंगे कि कैसे लाओ एक आईपी की भौगोलिक स्थिति टर्मिनल से हमें कर्ल और जेक की मदद से। मुख्य उद्देश्य और उपयोग के लिए कर्ल फ़ाइल ट्रांसफ़र या स्वचालित रूप से संचालन के अनछुए दृश्यों को स्वचालित करना है, जबकि jq JSON डेटा स्ट्रीम के बैकट्रैकिंग और प्रबंधन के समर्थन के साथ एक बहुत ही उच्च-स्तरीय कार्यात्मक भाषा है।
टर्मिनल से एक आईपी की भौगोलिक स्थिति
कर्ल और जेक स्थापित करें
आईपी पते की भौगोलिक स्थिति प्राप्त करने के लिए, हमें करना होगा कर्ल स्थापित करें और jq कमांड लाइन टूल जियोलोकेशन एपीआई से प्राप्त JSON डेटा को संसाधित करने के लिए। दोनों को स्थापित करने के लिए, एक टर्मिनल (Ctrl + Alt + T) में आपको कमांड लिखना होगा:
sudo apt install curl jq
सर्वर का सार्वजनिक आईपी पता प्राप्त करें
स्थान प्राप्त करने से पहले, आपको करने की आवश्यकता है जिस सर्वर से हम कनेक्ट होते हैं, उसका सार्वजनिक आईपी पता। इसके लिए, हम निम्नलिखित cURL कमांड का उपयोग करेंगे जिसके साथ हम एक अनुरोध करेंगे ipinfo.io नीचे दिखाए गए अनुसार टर्मिनल (Ctrl + Alt + T):
curl https://ipinfo.io/ip
एपीआई के लिए अपने सिस्टम के आईपी के भौगोलिक स्थान के डेटा को प्राप्त करें
पिछली कमांड को निष्पादित करने के बाद हम सार्वजनिक आईपी एड्रेस प्राप्त करेंगे। एक बार जब हमारे पास होगा, हम कर सकेंगे जियोलोकेशन डेटा प्राप्त करने के लिए ipvigilante.com से अनुरोध करें। इसके लिए हम टर्मिनल में निम्नलिखित कमांड (Ctrl + Alt + T) का उपयोग करेंगे। पिछले आदेश के साथ प्राप्त सार्वजनिक आईपी को बदलना महत्वपूर्ण है।
curl https://ipvigilante.com/la-dirección-IP
बैश स्क्रिप्ट का उपयोग करके एपीआई कॉल को स्वचालित करें
एपीआई के साथ संचार प्रक्रिया को स्वचालित करने के लिए हम जा रहे हैं नामक एक फ़ाइल के अंदर एक स्क्रिप्ट बनाएँ ipgeolocator.sh (नाम वैकल्पिक है) का है। इसके निर्माण के लिए हम कमांड लाइन के लिए किसी भी संपादक का उपयोग करने में सक्षम होंगे जिसके साथ प्रत्येक को सबसे अधिक आरामदायक लगता है।
vim ipgeolocalizador.sh
जब संपादक खुलता है, तो आपके भीतर बस होना है लाइन चिपकाएं नीचे दिखाया गया है:
curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'
एक बार पेस्ट करने के बाद, आपको बस फ़ाइल को सहेजना होगा और संपादक से बाहर निकलना होगा। इसके बाद यह आवश्यक होगा स्क्रिप्ट निष्पादित करें। हम एक ही टर्मिनल में लिखकर ऐसा करने जा रहे हैं:
chmod +x ipgeolocalizador.sh
इस बिंदु पर, हम कर सकते हैं IP की जियो लोकेशन पाने के लिए स्क्रिप्ट को निम्नानुसार चलाएं सार्वजनिक:
./ipgeolocalizador.sh
उपरोक्त स्क्रिप्ट अनुमानित अक्षांश और देशांतर निर्देशांक के साथ शहर और देश का नाम प्रदर्शित करता है। सच्चाई यह है कि मुझे पता नहीं है कि त्रुटि का मार्जिन हो सकता है.
यदि आप एक फ़ाइल के अंदर उपरोक्त लंबी कमांड को सहेजना नहीं चाहते हैं, आप टर्मिनल में सीधे उसी कमांड को भी चला सकते हैं (Ctrl + Alt + T):
curl -s https://ipvigilante.com/$(curl -s https://ipinfo.io/ip) | jq '.data.latitude, .data.longitude, .data.city_name, .data.country_name'
इस छोटे से लेख में, हमने देखा है कि कैसे टर्मिनल और कर्ल और jq कमांड का उपयोग करके उबंटू से एक आईपी का जियोलोकेशन प्राप्त करें। आप के बारे में अधिक जानकारी प्राप्त कर सकते हैं jq या के बारे में कर्ल उनके इसी विकिपीडिया लेख में।