लोकलहोस्ट और आईपी एड्रेस के बीच अंतर


16

यदि Python में लोकलहोस्ट के लिए एक सॉकेट बाँधता है, 8200 यह http: // localhost: 8200 / के माध्यम से सुलभ है । लेकिन नहीं http: // xxxx: 8200 /

यदि Python में एक सॉकेट को xxxx, 8200, machinename, 8200 से बाँधा जाए तो यह http: // xxxx: 8200 / और http: // machinename: 8200 / के माध्यम से सुलभ है , लेकिन http: // localhost: 8200 /

मुझे लगा कि लोकलहोस्ट का मतलब 'इस मशीन' से है, और इसका इस्तेमाल करने से मशीन का आईपी एड्रेस 'लूप बैक' हो जाएगा, लेकिन यह अलग-अलग तरह का लगता है।

क्या 127.0.0.1 मशीनों के आईपी पते पर हमेशा एक अलग आईपी पता होता है?

अपडेट करें:

मैं समझता हूं कि वास्तविक संख्या अलग हैं, लेकिन लूपबैक क्या करता है?

उदाहरण के लिए wikepedia का कहना है कि
'URL के लिए एक वेब ब्राउज़र की ओर इशारा करते हुए http://127.0.0.1/ या http: // localhost / उस कंप्यूटर की अपनी वेब साइट तक पहुंच प्राप्त करेगा'

लेकिन वह वेब साइट xxxx पर भी उपलब्ध होगी, और संभवतः xxxx पर एक ही सॉकेट के साथ स्थापित किया जाएगा तो दोनों संदर्भ कैसे काम करते हैं?

निष्कर्ष:

मुझे लगता है कि मैं अंत में समझता हूं कि 127.0.0.1 और xxxx इस तरह काम करते हैं

--127.0.0.1 ==\
               >- Computer
--x.x.x.x   ==/

और नहीं

--127.0.0.1 ==\
--------------- x.x.x.x >- Computer

या

--x.x.x.x ==\
--------------- 127.0.0.1 >- Computer

आप सब का सहायता के लिए धन्यवाद


1
आपने लिखा "मशीन के आईपी पते के लिए हमेशा 127.0.0.1 एक अलग आईपी पता होता है"। डॉट्स के बीच की संख्या अलग-अलग है, यह एक अलग आईपी एड्रेस है। आप कितना अजीब सवाल पूछते हैं। यदि मशीन के आईपी पते से, आपका मतलब 127.0.0.1 के अलावा कुछ है तो हाँ, यह एक अलग आईपी पता होगा। और अगर आप अपने मशीन के आईपी पते को 192.168.0.1 (या कुछ अन्य मानक स्थानीय सीमा) कहते हैं, तो आपको ऐसा कहने से डरने की जरूरत नहीं है। आप इसे xxxx के बजाय लिख सकते हैं। 192 का पता वैसे भी इंटरनेट पर मौजूद नहीं होगा।
बार्लोप

वेब सर्वर कैसे कॉन्फ़िगर किया गया है, इस वजह से दोनों के संदर्भ काम करते हैं। आप सर्वर को सभी पतों पर, या केवल विशिष्ट लोगों को सुनने के लिए कह सकते हैं। चूंकि लूपबैक और वास्तविक आईपी अलग-अलग पते हैं, इसलिए कॉन्फ़िगरेशन यह निर्धारित कर रहा है कि किस आईपी को सुनना है। चूंकि लोकलहोस्ट 127.0.0.1 के लिए केवल एक मेजबान प्रविष्टि है, यह केवल तभी काम करेगा जब वेब सर्वर 127.0.0.1 से बंधा हो।
छिलका

जवाबों:


17

तुम्हारे प्रश्न का उत्तर देने के लिए।

127.0.0.1 मशीन आईपी पते के लिए केवल एक अलग आईपी पता नहीं है, यह एक अलग इंटरफ़ेस भी है। 127.0.0.1 को स्थानीय नेटवर्क पर नहीं देखा जाना चाहिए। यह लूपबैक एडॉप्टर के लिए एक विशेष आंतरिक आईपी पता है।

xxxx आपका ईथरनेट कार्ड होगा।

वैसे 'लोकलहोस्ट' आपकी होस्ट्स फ़ाइल में एक प्रविष्टि है जो 127.0.0.1 की ओर इशारा करती है

यदि आप एक सॉकेट को 127.0.0.1:8200 पर बांधते हैं, तो केवल स्थानीय रूप से चलने वाले ग्राहक ही इसे एक्सेस कर पाएंगे और केवल http://127.0.0.1:8200 या http: // localhost: 8200 (या dns या होस्ट्स) के साथ फ़ाइल प्रविष्टि वह बिंदु 127.0.0.1)।

Xxxx: 8200 के लिए एक सॉकेट केवल http: // xxxx: 8200 या dns या होस्ट फ़ाइल प्रविष्टि के माध्यम से उपलब्ध होगा जो उस ओर इशारा करता है।

127.0.0.1 को सॉकेट बांधना स्वचालित रूप से ईथरनेट इंटरफेस पर भी उपलब्ध नहीं कराता है।

Thats क्यों आप xxxx: 8200 से कनेक्ट नहीं कर सकते

आप पोर्ट 8200 को सभी उपलब्ध इंटरफेस (0.0.0.0) से बांध सकते हैं, फिर इसे काम करना चाहिए।


तो 'लूपबैक' बिट क्या करता है? यह क्या करता है? मुझे लगा कि यह मशीन के आईपी पते को संदर्भित करने का एक तरीका है, जो कुछ भी हुआ 'यानी 127.0.0.1 => xxxx
डेविड

1
लूपबैक इंटरफ़ेस एक वर्चुअल इंटरफ़ेस है। यह अक्सर कार्यक्रमों को एक ही मशीन पर एक दूसरे से बात करने की अनुमति देने के लिए उपयोग किया जाता है। यह मशीन आईपी पते को संदर्भित करने का एक तरीका नहीं है। 127.0.0.1 लूपबैक वर्चुअल एडेप्टर का आईपी पता है।
मैट एच

1
लूपबैक एडॉप्टर के बारे में दूसरी बात यह है कि क्योंकि यह आभासी है, यह वास्तव में नेटवर्क कार्ड के माध्यम से किसी भी पैकेट को पारित नहीं करता है।
मैट एच

1
शाब्दिक रूप से इस अवधारणा को समझने में 4 घंटे बर्बाद नहीं हुए ... जाहिरा तौर पर कुछ वेब सर्वर स्वचालित रूप से आपके लिए xxxx और 127.0.0.1 दोनों को बाँध देते हैं जो भ्रम पैदा करता है। शानदार सवाल और जवाब दोस्तों। Thx =)
jrhee17

3

उदाहरण के लिए wikepedia का कहना है कि 'URL के लिए एक वेब ब्राउज़र की ओर इशारा करते हुए http://127.0.0.1/ या http: // localhost / उस कंप्यूटर की अपनी वेब साइट पर पहुंच जाएगा'

थोड़ा गलत है। ऐसा हो सकता है। समान रूप से अच्छी तरह से यह किसी भी वेबसाइट को नहीं ला सकता है और जब आप अपने xxxx पते का उपयोग करते हैं तो आपको जो मिलता है उससे एक अलग आंतरिक वेबसाइट प्रदर्शित करना संभव है।

127.0.0.1 आपकी खुद की मशीन को इंगित करता है, लेकिन इसका मतलब यह नहीं है कि यह उसी तरह से व्यवहार करेगा जैसे ही यह आपकी मशीन तक पहुंचता है

यदि आप एक गैर-तकनीकी सादृश्य चाहते हैं, तो आप उन्हें अपने घर के विभिन्न दरवाजों पर विचार कर सकते हैं।

दोनों एक ही घर की ओर इशारा करते हैं लेकिन वे एक ही चीज नहीं हैं। प्रत्येक द्वार के लिए आपको एक ही कमरे में ले जाना संभव है या वे आपको एक अलग कमरे में ले जा सकते हैं। एक दरवाजे को बंद करना भी संभव है और दूसरे को नहीं।

जब आप किसी वेबसाइट को कॉन्फ़िगर करते हैं, तो आप यह निर्दिष्ट करते हैं कि कौन से पते को बाँधना है और अक्सर उत्तर सभी पते हैं। (यह सभी दरवाजों को एक कमरे में ले जाने के बराबर है)

आप वेबसाइट को केवल एक पते पर बाँधने के लिए भी निर्दिष्ट कर सकते हैं। (यह एक को छोड़कर सभी दरवाजों को बंद करने के बराबर है।)

यदि आपके पास दो (या अधिक) वेबसाइट हैं, तो आप उन्हें अलग-अलग पते पर बाँध सकते हैं। (यह अलग कमरे में जाने वाले प्रत्येक दरवाजे के बराबर है)।

दोनों संदर्भ कैसे काम करते हैं, इसका एक उदाहरण मेरे विंडोज 7 कंप्यूटर ने IIS स्थापित किया है, जब मैं IIS प्रबंधक में जाता हूं और डिफ़ॉल्ट वेब साइट पर राइट क्लिक करता हूं, तो यह मुझे एक 'एडिट बाइंडिंग' मेनू विकल्प देता है। उस का चयन करके बाइंडिंग की एक सूची तैयार करें। मेरे पास केवल एक है, लेकिन आईपी पते के लिए यह * है जिसका अर्थ है कि IIS मेरे सभी आईपी पते पर सुनता है।


महान सादृश्य! आपका बहुत बहुत शुक्रिया ! मैंने सिर्फ ट्रायल किया। मैं सफलतापूर्वक 127.0.0.1:5000एक वेबसाइट से जुड़ 192.168.1.104:5000गया और दूसरी साइट से जुड़ गया। कुंजी यह है कि address:portघर (कंप्यूटर) में एक अलग कमरा (सेवा) का मतलब है।
रिक

1

सिस्टम पर प्रत्येक आईपी पता स्वतंत्र है और विशेष पते 0.0.0.0 के अपवाद के साथ अलग से सॉकेट से बाध्य किया जा सकता है, जो सभी इंटरफेस के लिए सॉकेट को बांधने के लिए ओएस को इंगित करता है।


1
लेकिन 127.0.0.1 भी एक विशेष पता है, लूपबैक इंटरफ़ेस के लिए सबसे आम विकल्प है। वह पता पाश वापस क्या करता है?
डेविड

यह इसे "विशेष" नहीं बनाता है, यह सिर्फ इसे "लूपबैक इंटरफ़ेस पर एक पता" बनाता है (जब तक आप कहते हैं कि "हर पता अपने तरीके से विशेष है", लेकिन चलो वहां नहीं जाते हैं)। यह इंटरफ़ेस है जो लूपिंग करता है, एड्रेस नहीं।
इग्नासियो वाज़क्वेज़-अब्राम्स
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.