लोकलहोस्ट और 0.0.0.0 के लिए IPV6 क्या है?


104

जैसा कि हम सभी के लिए IPv4 पता जानते हैं localhostहै 127.0.0.1(लूपबैक पता)। IPv6 का पता क्या है localhostऔर इसके लिए 0.0.0.0मुझे कुछ विज्ञापन होस्ट को ब्लॉक करने की आवश्यकता है।

जवाबों:


124

जैसा कि हम सभी जानते हैं कि के लिए IPv4 पता localhostहै 127.0.0.1(लूपबैक पता)।

दरअसल, कोई भी IPv4 एड्रेस 127.0.0.0/8लूपबैक एड्रेस होता है।

IPv6 में, लूपबैक रेंज का सीधा एनालॉग है ::1/128। तो ::1(लंबा रूप 0:0:0:0:0:0:0:1) एक और केवल IPv6 लूपबैक पता है।


जबकि होस्टनाम localhostसामान्य रूप से 127.0.0.1या के लिए हल होगा ::1, मैंने ऐसे मामलों को देखा है जहां किसी ने इसे आईपी पते पर बाध्य किया है जो लूपबैक पता नहीं है। यह थोड़ा पागल है ... लेकिन कभी-कभी लोग ऐसा करते हैं।

मैं कहता हूं "यह पागल है" क्योंकि आप ऐसा करके अनुप्रयोगों की धारणाओं को तोड़ने के लिए उत्तरदायी हैं; उदाहरण के लिए एक एप्लिकेशन लूपबैक आईपी पर रिवर्स लुकअप करने की कोशिश कर सकता है और अपेक्षित परिणाम नहीं पा सकता है। सबसे खराब स्थिति में, एक एप्लिकेशन दुर्घटना द्वारा असुरक्षित नेटवर्क पर संवेदनशील ट्रैफ़िक भेजना समाप्त कर सकता है ... हालांकि आपको संभवतः अन्य गलतियों के साथ-साथ "प्राप्त" करने की आवश्यकता है।


ब्लॉकिंग का 0.0.0.0कोई मतलब नहीं है। IPv4 में इसे कभी भी रूट नहीं किया जाता है। IPv6 में समतुल्य ::पता (लंबा रूप 0:0:0:0:0:0:0:0) है ... जिसे कभी भी रूट नहीं किया गया है।

0.0.0.0और ::पते "किसी भी पता" मतलब के लिए आरक्षित हैं। इसलिए, उदाहरण के लिए, एक प्रोग्राम जो एक वेब सेवा प्रदान कर रहा है , वह होस्ट के IPv4 पतों में से किसी के माध्यम से HTTP कनेक्शन स्वीकार करने के लिए 80 पोर्ट को बाँध सकता है 0.0.0.0। ये पते IP पैकेट के स्रोत या गंतव्य पते के रूप में मान्य नहीं हैं।


अंत में, कुछ टिप्पणियाँ ::/128बनाम ::/0बनाम के बारे में पूछ रहे थे ::

यह अंतर क्या है?

कड़ाई से बोलते हुए, पहले दो CIDR संकेतन हैं IPv6 पते नहीं। वे वास्तव में आईपी पते की एक श्रृंखला निर्दिष्ट कर रहे हैं । CIDR में IP पता और अतिरिक्त संख्या होती है जो नेटमास्क में बिट्स की संख्या को निर्दिष्ट करती है। दोनों एक साथ कई पते निर्दिष्ट करते हैं; अर्थात दिए गए पते से बाहर निकले हुए बिट्स की अनदेखी करके गठित पतों का सेट।

इसलिए:

  • :: सिर्फ IPv6 पते का मतलब है 0:0:0:0:0:0:0:0
  • ::/1280:0:0:0:0:0:0:0नेटमास्क का मतलब होता है जिसमें 128 बिट्स होते हैं। यह एक नेटवर्क रेंज देता है जिसमें ठीक एक पता होता है।
  • ::/00:0:0:0:0:0:0:00 बिट्स से युक्त नेटमास्क के साथ इसका मतलब है । यह एक नेटवर्क रेंज देता है जिसमें 2 128 पते हैं। यानी यह संपूर्ण IPv6 एड्रेस स्पेस है!

अधिक जानकारी के लिए, IPv4 और IPv6 पतों, और CIDR संकेतन पर विकिपीडिया पृष्ठ पढ़ें:


69

IPv6 लोकलहोस्ट

::1है लूपबैक आईपीवी 6 में पता।

URL के भीतर

URL के भीतर, वर्ग कोष्ठक का उपयोग करें []:

  • http://[::1]/
    डिफ़ॉल्ट पोर्ट 80 के लिए।
  • http://[::1]:80/
    पोर्ट निर्दिष्ट करें।

URL में उपयोग के लिए वर्ग कोष्ठक में IPv6 शाब्दिक संलग्न करना RFC 2732 में परिभाषित किया गया है - URL में शाब्दिक IPv6 पते के लिए प्रारूप



4

बस पूर्णता के लिए: IPv4- मैप्ड IPv6 पते हैं , जहां आप IPv6 पते में IPv4 पता एम्बेड कर सकते हैं (हर IPv6 उपकरण द्वारा समर्थित नहीं किया जा सकता है)।

उदाहरण: मैं अपनी मशीन पर एक सर्वर चलाता हूं, जिसके माध्यम से पहुँचा जा सकता है http://127.0.0.1:19983/solr। अगर मैं इसे IPv4- मैप किए गए IPv6 पते के माध्यम से एक्सेस करता हूं तो मैं इसे एक्सेस करता हूं http://[::ffff:127.0.0.1]:19983/solr(जिसे परिवर्तित किया जाएगा http://[::ffff:7f00:1]:19983/solr)


2

में उपयोग के लिए /etc/hostsडोमेन को हल करने में विफल होने के लिए एक साधारण विज्ञापन अवरोधन तकनीक के रूप में फ़ाइल, 0.0.0.0 पते का व्यापक रूप से उपयोग किया गया है, क्योंकि यह बिना किसी प्रयास के भी तुरंत विफल होने के अनुरोध का कारण बनता है, क्योंकि यह एक मान्य या नियमित पता नहीं है। यह उस स्थान पर 127.0.0.1 का उपयोग करने की तुलना में है, जहां यह देखने के लिए कम से कम यह देखने के लिए जांच करेगा कि क्या आपका अपना कंप्यूटर अनुरोध किए गए पोर्ट 80 पर 'कनेक्शन से इनकार करने से पहले' सुन रहा है। डोमेन के लिए होस्ट फ़ाइल में उपयोग किए जा रहे उन पतों में से किसी एक को भी वास्तविक नेटवर्क पर प्रयास करने से रोका जाएगा, लेकिन 0.0.0.0 ने पक्ष लिया क्योंकि यह उपरोक्त कारण से अधिक 'इष्टतम' है। "127" आईपी आपके स्वयं के कंप्यूटर को हिट करने का प्रयास करेगा, और किसी अन्य आईपी को इसे रूट करने के लिए राउटर को भेजने का अनुरोध करने का कारण होगा, लेकिन वहां 0.0.0.0 के लिए '

कहा जा रहा है कि डोमेन को ब्लॉक करने के लिए आपके होस्ट्स फ़ाइल में कोई भी IP सूचीबद्ध होना पर्याप्त है, और आपको अपनी मेजबानों की फाइल में तब तक ipv6 पता लगाने की जरूरत नहीं होगी, जब तक - संभवतः - आप नहीं IPv4 को बिल्कुल सक्षम करें। मैं वास्तव में आश्चर्यचकित हो जाता अगर ऐसा ही होता। और फिर भी, मुझे लगता है कि होस्ट एक बुरे ipv4 पते के साथ / etc / मेजबान में दिखाई देता है जब आपके पास ipv4 सक्षम नहीं होता है तब भी आपको वह परिणाम देगा जिसकी आप तलाश कर रहे हैं जिसके लिए वह असफल है, बजाय देखने के असली DNS का कहना है, adserver-example.com और वापस v4 या v6 IP प्राप्त करना।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.