राउटर पर VPN के साथ STUN कौन-सा स्रोत पता देखता है?
मार्ग, स्रोत का चयन और अनुवाद तय करते हैं कि परावर्तक कौन-सा पता बताता है। तीन तथ्य लिखने के लिए, फिर एक क्वेरी यह पुष्टि करने के लिए कि कौन-सा मार्ग जीतता है।
सवाल एक ही खोज जैसा लगता है और असल में तीन फैसले हैं। binding request कौन-सा मार्ग लेती है, कर्नेल उस मार्ग के लिए कौन-सा स्रोत चुनता है और क्या रास्ते में कोई चीज़ उस स्रोत को फिर से लिखती है। इनमें से कोई एक बदलिए और STUN सर्वर जो पता बताता है वह भी उसके साथ बदल जाता है। इसीलिए यह कहना कि VPN राउटर पर है, अपने आप में लगभग कुछ नहीं बताता।
फैसला तीन तथ्यों पर टिका है
पहले मार्ग: नीति नियम और रूटिंग तालिका तय करते हैं कि अनुरोध सुरंग से बाहर जाएगा या सामान्य WAN से, और बहिष्कृत गंतव्य सुरंग सक्रिय होने पर भी दूसरा मार्ग लेता है। फिर स्रोत: कर्नेल चुने गए मार्ग के लिए एक स्रोत चुनता है, और यह चयन मार्ग के पसंदीदा स्रोत और मेल खाने वाले किसी भी नियम पर निर्भर करता है। अंत में अनुवाद: रास्ते में NAT चुने गए स्रोत को बदल देता है। परावर्तित पता तीनों का गुणनफल है, सुरंग का गुण नहीं।
तीनों में से एक बदलिए और उत्तर बदल जाता है, जबकि हर घटक अपने लॉग में अब भी स्वस्थ दिखता है। यही इस निदान के अटकने का सामान्य कारण है।
शुरू करने से पहले जिस प्रवाह का परीक्षण कर रहे हैं उसके लिए तीन तथ्य लिख लें। इंटरफ़ेस, मार्ग और अनुवाद नियम परिणाम का पूर्वानुमान लगाने के लिए पर्याप्त हैं, और यही पूर्वानुमान किसी आश्चर्य को जानकारीपूर्ण बनाता है। यदि तीनों में से एक भी नहीं भर सकते, तो वही अंतराल असली निष्कर्ष है।
एक binding request को मार्ग के साथ देखें
STUN की binding request सर्वर से कहती है कि वह देखा गया स्रोत परिवहन पता बताए। उत्तर उस मार्ग का वर्णन करता है जो अनुरोध ने लिया, क्लाइंट मशीन पर इंटरफ़ेस की सूची नहीं। दो मार्गों से दो अनुरोध ईमानदारी से दो अलग पते बताएँगे।
| Path taken | Source the reflector sees | What it means |
|---|---|---|
| Tunnel to a public exit that translates | The exit's public address | The reflector learns nothing about the LAN |
| Tunnel to a private reflector, translated to the tunnel address, no later translation | That tunnel address | An internal identifier is disclosed to that reflector |
| Excluded flow over the ordinary WAN | The WAN address | The tunnel was not used at all |
इस तालिका को शर्तों के समूह के रूप में पढ़ें, प्रदाताओं की सूची के रूप में नहीं। मध्य पंक्ति चाहती है कि निजी परावर्तक सुरंग की अपनी रूटिंग और सहकर्मी नीति के अंतर्गत पहुँच योग्य हो; यह एक कॉन्फ़िगरेशन तथ्य है जिसे आप सत्यापित कर सकते हैं, न कि ऐसी चीज़ जिसका संकेत खाता स्तर देता है। निचली पंक्ति आम तौर पर नीति के लिए मायने रखती है, क्योंकि उस ट्रैफ़िक को सुरंग के भीतर रहना था। इनके बीच सामान्य स्थिति है, जिसमें निकास अनुवाद करता है और परावर्तक केवल निकास देखता है।
होस्ट उम्मीदवार और सर्वर-परावर्ती उम्मीदवार अलग-अलग तंत्रों से आते हैं, इसलिए उम्मीदवारों की सूची यह नहीं बताती कि मीडिया ने वास्तव में कौन-सा मार्ग इस्तेमाल किया। जब जानना चाहें कि सत्र कहाँ गया, तो चुना गया युग्म पढ़ें, संग्रह लॉग नहीं।
राउटर का सुरंग पता क्या नहीं है
राउटर को दिया गया सुरंग पता राउटर पर एक इंटरफ़ेस का होता है। LAN होस्ट पर ब्राउज़र के अपने इंटरफ़ेस पते होते हैं और राउटर के सुरंग इंटरफ़ेस का सीधा दृश्य नहीं होता। दोनों को विनिमेय मानने से इस बारे में आत्मविश्वासी गलत उत्तर बनते हैं कि कोई वेब पेज क्या सीख सकता है।
फ़ॉरवर्डिंग वह चीज़ है जो दोनों को जोड़ती है। अनुरोध राउटर को रूटेड ट्रैफ़िक के रूप में पार करता है, और उसका स्रोत वही है जो रूटिंग और अनुवाद ने बनाया।
यदि सुरंग का मार्ग LAN स्रोत को बनाए रखता है, तो निजी परावर्तक वह LAN पता जान सकता है, जो वास्तविक प्रकटीकरण है और सुरंग के पते से भिन्न है। यदि मार्ग सुरंग के पते पर अनुवाद करता है, तो परावर्तक इसके बजाय सुरंग का पता जान लेता है। दोनों परिणाम एक ही होस्ट पर एक ही ब्राउज़र के साथ संगत हैं, इसलिए किसी अवलोकन को किसी विशिष्ट प्रवाह से जोड़ना ज़रूरी है। ऐप को दोष देने से पहले कर्नेल से पूछें कि वह कौन-सा स्रोत इस्तेमाल करेगा।
प्रकटीकरण बनाम बायपास: दो निष्कर्ष, दो मरम्मतें
परावर्तित सुरंग पता उस मार्ग पर आंतरिक पहचानकर्ता प्रकट करता है जिसे आपने अनुमति दी। WAN से सीधा अनुरोध उस मार्ग को बायपास करता है जिसकी आपको आवश्यकता थी। पहला सूचना का सवाल है, दूसरा प्रवर्तन का, और दोनों अलग-अलग जगह ठीक होते हैं। दोनों को एक शब्द में मिला देने से ऐसी मरम्मत बनती है जो किसी एक को भी संबोधित नहीं करती।
WebRTC इसे अधिक दृश्यमान बनाता है बिना इसे गलत बनाए, क्योंकि उम्मीदवार इकट्ठा करना उसे चुनने के समान नहीं है।
ip route get 203.0.113.7 from 192.0.2.25
ip rule showहर अनुमत परावर्तक पते के लिए मार्ग क्वेरी उस स्रोत के साथ चलाएँ जिसे आप उम्मीद करते हैं कि यह प्रवाह ले जाएगा, फिर बहिष्कृत श्रेणियों के लिए दोबारा चलाएँ ताकि देख सकें कि विकल्प क्या चुनता है। दोनों उत्तरों की तुलना उस नीति से करें जो आपने लिखी थी। जब वे ऐसे तरीके से भिन्न हों जो आपका इरादा न था, तो आपने मरम्मत का बिंदु ढूँढ लिया है, बिना ब्राउज़र की उम्मीदवार सूची की व्याख्या किए।