डबल NAT और आपका VPN: क्लाइंट चलता है, सर्वर नहीं
पते अनुवाद करने वाले दो राउटर बाहर जाने वाले VPN क्लाइंट को शायद ही रोकते हैं। उनके पीछे सर्वर होस्ट करना अधिक कठिन है, खासकर जब बाहरी परत कैरियर-ग्रेड NAT हो।
आपका राउटर दूसरे राउटर के पीछे है, WAN पता निजी है, और VPN क्लाइंट फिर भी जुड़ जाता है। यह संयोजन उन लोगों को चौंकाता है जो मानते हैं कि डबल NAT सुरंगें तोड़ देगा, पर अनुवाद सबसे अच्छी तरह बाहर जाने वाले कनेक्शनों को ही संभालता है। उन्हीं दो परतों के पीछे VPN सर्वर होस्ट करना वह स्थिति है जो आमतौर पर विफल होती है। कुछ भी बदलने से पहले कनेक्शन की दिशा बनाएं।
पहले कनेक्शन की दिशा बनाएं
अंदरूनी राउटर का स्टेटस पेज खोलें और उसका WAN पता लिखें, फिर उसकी तुलना उस पते से करें जो कोई सार्वजनिक सेवा आपको बताती है। अगर दोनों अलग हैं, तो आपके राउटर और इंटरनेट के बीच कम से कम एक अनुवादक है। अगर WAN पता 100.64.0.0/10 के भीतर आता है, तो बाहरी अनुवादक संभवतः आपके प्रदाता का है, और आप उसे नियंत्रित नहीं करते। ये दो तथ्य तय करते हैं कि आगे के चरणों में से कौन सा बिल्कुल काम कर सकता है।
curl -s https://ifconfig.me
ip -brief address
traceroute -n 1.1.1.1
डबल NAT का मतलब डबल VPN नहीं है। अनुवाद पते और पोर्ट फिर से लिखता है; यह दूसरी एन्क्रिप्टेड सुरंग नहीं जोड़ता, और कुछ भी एन्क्रिप्ट नहीं करता। दोनों विचारों को अलग रखना महत्वपूर्ण है, क्योंकि समाधान पूरी तरह अलग हैं, और उनमें से एक के लिए सेटिंग्स पेज की बजाय आपके प्रदाता से बातचीत चाहिए।
बाहर जाना: क्लाइंट पूछता है, अनुवादक मैप करते हैं
बाहर जाने वाली सुरंग आपकी मशीन से एक पैकेट से शुरू होती है, इसलिए हर अनुवादक एक मैपिंग बना सकता है और जवाब को वापस आने दे सकता है। प्रोटोकॉल, पोर्ट और निष्क्रियता टाइमर तय करते हैं कि वह मैपिंग उपयोगी होने लायक लंबे समय तक टिकती है या नहीं। ज़्यादातर उपभोक्ता राउटर इसे बिना किसी कॉन्फ़िगरेशन के संभाल लेते हैं।
जो विफलताएं वास्तव में दिखती हैं वे आमतौर पर टाइमआउट और प्रोटोकॉल समर्थन से जुड़ी होती हैं, राउटर की संख्या से नहीं। कुछ मिनट की चुप्पी के बाद गिरने वाली सुरंग एक समाप्त होती मैपिंग है, और keepalive सामान्य उत्तर है। IPsec में मानक NAT-traversal एक्सटेंशन हैं, इसलिए यह कहना कि यह अनुवाद पार नहीं कर सकता, बिल्कुल गलत है। अगर सुरंग बिल्कुल स्थापित नहीं होती, तो टोपोलॉजी को दोष देने से पहले एंडपॉइंट और क्रेडेंशियल देखें।
wg show
ping -c3 10.8.0.1
अगर बाहर जाने वाली सुरंग एक नेटवर्क से काम करती है और दूसरे से नहीं, तो रुकें। वह तुलना नेटवर्क के बारे में है, राउटर की संख्या के बारे में नहीं।
अंदर आना: फ़ॉरवर्डिंग केवल आपके स्वामित्व वाले उपकरणों को कवर करती है
सर्वर होस्ट करना उलटी दिशा है: एक नया कनेक्शन इंटरनेट से आता है और हर परत से गुज़रकर आपकी मशीन तक पहुँचना होता है। अंदरूनी राउटर पर पोर्ट-फ़ॉरवर्डिंग नियम तभी मदद करता है जब बाहरी अनुवादक भी वह ट्रैफ़िक आप तक पहुँचाए। स्थानीय नियम दोहराने से प्रदाता के उपकरण पर नियंत्रण नहीं मिलता।
nc -vz 203.0.113.10 51820
ss -lunp 'sport = :51820'
अंदरूनी राउटर के WAN पते की तुलना उस सार्वजनिक पते से करें जो आपने देखा, और लिखें कि हर मान कहाँ से आया। अगर WAN पता निजी है या साझा श्रेणी में है, तो बाहरी परत ऐसा अनुवाद कर रही है जिसे आप कॉन्फ़िगर नहीं कर सकते। ऐसे नियमों पर पूरी शाम बिताने से पहले प्रदाता से पूछें कि वह कौन-सी अंदर आने वाली पहुँच का समर्थन करता है जो प्रभावी नहीं हो सकते। राउटर हटाना या फ़ायरवॉल को व्यापक रूप से बंद करना निदान नहीं है, और एक खुले पोर्ट के लिए यह बुरा सौदा है।
अगर बाहरी परत प्रदाता की है और वह फ़ॉरवर्ड नहीं करती, तो रुकें। तब समर्थित उत्तर कोई दूसरी पहुँच विधि या रिले है, आपकी ओर से कोई दूसरा नियम नहीं।
एक बार में एक चर जाँचें
हर परीक्षण में एक चीज़ बदलें और परिणाम लिखें, क्योंकि डबल NAT वाले मार्ग में एक राउटर वाले मार्ग से अधिक चर होते हैं। प्रोफ़ाइल और डिवाइस स्थिर रखें, फिर किसी दूसरे एक्सेस नेटवर्क से तुलना करें। ध्यान दें कि बातचीत विफल होती है या नहीं, निष्क्रियता के बाद सत्र गिरता है या नहीं, या केवल निजी गंतव्य विफल होते हैं या नहीं। वे तीन अवलोकन तीन अलग परतों की ओर संकेत करते हैं।
journalctl -u wg-quick@wg0 -n 30 --no-pager
ip route get 10.20.30.40
ओवरलैप करने वाले निजी सबनेट एक अलग जाल हैं जिन्हें कोई भी अनुवाद ठीक नहीं करता। अगर आपका घरेलू नेटवर्क और दूरस्थ नेटवर्क एक ही श्रेणी इस्तेमाल करते हैं, तो बीच में कितने भी अनुवादक हों, रूट टकराव दिखता है। एक तरफ को फिर से क्रमांकित करना ही एकमात्र टिकाऊ उत्तर है।
दूरस्थ गेटवे भी उतने ही ध्यान का हकदार है, क्योंकि उसके फ़ॉरवर्डिंग नियम और वापसी मार्ग गुम हिस्सा हो सकते हैं। जो सुरंग प्रमाणीकरण पास करती है, उसके पास फिर भी कोई उपयोगी एप्लिकेशन मार्ग नहीं हो सकता, और वह विफलता क्लाइंट की ओर से एक जैसी दिखती है। यह सैर तब खत्म होती है जब आप कह सकें कि कौन-सी दिशा विफल होती है और कौन-सी परत उसकी मालिक है।