एक Tailscale होस्ट तक नहीं पहुँचा जा सकता: सबनेट राउटर या एक्ज़िट नोड?
पहले गायब गंतव्य को छाँटो: निजी NAS को घोषित सबनेट चाहिए, जबकि सार्वजनिक ब्राउज़िंग को एक्ज़िट नोड चाहिए।
एक Tailscale होस्ट जवाब देता है जबकि दूसरा अंधेरे में रहता है, या सब कुछ तब तक काम करता है जब तक सार्वजनिक वेबसाइटें गलत देश बताने नहीं लगतीं। दोनों शिकायतें “Tailscale टूटा हुआ है” के रूप में आती हैं, और दोनों आमतौर पर गलत गंतव्य के लिए चालू की गई गलत रचना होती हैं। एक सबनेट राउटर निजी नेटवर्क को tailnet के सामने खोलता है, जबकि एक्ज़िट नोड यह बदलता है कि इंटरनेट ट्रैफ़िक कहाँ से बाहर जाता है। पहले विफल गंतव्य को छाँटो, फिर वह भूमिका चुनो जो उसे ढकती है।
जिस गंतव्य में विफलता हुई वहीं से शुरू करो
जो पता या नाम काम नहीं आया और वह किस तरह की चीज़ है, लिख लो। किसी दूसरी साइट के पीछे निजी LAN पर रखा डिवाइस, अपने ही सेगमेंट पर चलती सेवा और एक सार्वजनिक वेबसाइट—ये तीन राउटिंग समस्याएँ हैं जो संयोग से एक ही क्लाइंट साझा करती हैं। अंतर सजावट का नहीं है, क्योंकि दोनों रचनाएँ अलग-अलग गंतव्य समुच्चय ढकती हैं। एक को चालू करने से दूसरे के लिए कुछ नहीं होता, और पूरी उलझन का स्रोत यही है।
पता परिवार पर भी ध्यान दो। केवल IPv4 के रूप में घोषित सबनेट IPv6 गंतव्यों को स्थानीय रास्ते पर छोड़ देता है, जो तब तक आंशिक विफलता जैसा लगता है जब तक कोई दोनों राउटिंग तालिकाओं की तुलना न करे। लिख लो कि रास्ता कैसा होने की उम्मीद थी, ताकि बाद में परीक्षण के पास खंडन करने के लिए कुछ हो।
ऐसे डिवाइस तक पहुँचो जो कभी Tailscale नहीं चलाता
राउटर tailnet को खास रेंज की घोषणा करता है, फिर tailnet और निजी सेगमेंट के बीच पैकेट रिले करता है, इसलिए उस सेगमेंट के डिवाइसों को अपना क्लाइंट नहीं चाहिए। घर के लैपटॉप से दफ़्तर के NAS तक पहुँचना ठीक यही मामला है। उस तरफ़ tailnet का इकलौता सदस्य राउटर है।
tailscale up --advertise-routes=10.40.0.0/24 --advertise-exit-node=false
ip route get 10.40.0.55
tailscale status
घोषणा तीन शर्तों में से सिर्फ़ पहली है। रास्ते को tailnet के लिए स्वीकृत होना चाहिए, क्लाइंट को घोषित रास्ते स्वीकार करने चाहिए, और किसी एक्सेस नियम को कनेक्शन की अनुमति देनी चाहिए। इसी शृंखला की वजह से लक्षण अक्सर यह होता है कि राउटर चालू है और NAS नहीं। पहुँच में आने वाला राउटर साबित करता है कि सुरंग काम करती है; यह स्वीकृति, क्लाइंट की सहमति या नीति के बारे में कुछ नहीं साबित करता।
उन तीन विफलताओं में से हर एक व्यवस्थापन कंसोल में अलग दिखती है। तीनों को एक साथ बदलने के बजाय क्रम से जाँचो, क्योंकि दूसरा बदलाव छिपा देता है कि कौन-सा मायने रखता था।
सार्वजनिक ट्रैफ़िक को किसी दूसरी मशीन से बाहर भेजो
एक्ज़िट नोड तुम्हारे आम इंटरनेट ट्रैफ़िक को अपने भीतर से राउट करता है, जो दूसरे VPN उत्पादों की पूरी-सुरंग व्यवस्था के सबसे करीब है। इसे भी तीन अलग सहमतियाँ चाहिए: डिवाइस भूमिका की घोषणा करता है, व्यवस्थापक उसे अनुमति देता है, और क्लाइंट उसे चुनता है। tailnet से जुड़ने पर डिफ़ॉल्ट रूप से किसी दूसरे सदस्य से होकर कुछ नहीं जाता।
tailscale up --advertise-exit-node
tailscale up --exit-node=100.101.102.103 --exit-node-allow-lan-access=false
tailscale status --json | grep -i exitnode
एक्ज़िट नोड चुनने से उस नोड के अपने LAN तक पहुँच अपने आप नहीं मिलती। LAN-एक्सेस विकल्प ठीक इसलिए है कि ये अलग अनुमतियाँ हैं, और उसे बंद रखना ज़्यादा सुरक्षित डिफ़ॉल्ट है। दूसरे Tailscale संसाधनों के रास्ते एक्ज़िट नोड सक्रिय होने पर भी अपना अलग प्रबंधन रखते हैं। इसीलिए सबनेट पर होस्ट की गई सेवा सार्वजनिक इंटरनेट रास्ता बदल जाने पर भी काम करती रह सकती है।
एक्ज़िट नोड यह भी बदलता है कि इंटरनेट तुम्हें कैसे देखता है, सिर्फ़ यह नहीं कि वह कितना तेज़ लगता है। मान लो कि भू-स्थान, स्ट्रीमिंग सूचियाँ और दर सीमाएँ एक्ज़िट के पते का पालन करेंगी, तुम्हारे पते का नहीं।
जब सिर्फ़ एक होस्ट विफल हो तो तीन-तरफ़ा बँटवारा पढ़ो
तुम्हारे सेगमेंट पर लगा प्रिंटर, दूर के सबनेट राउटर के पीछे रखा NAS और एक सार्वजनिक साइट—तीन अलग रास्तों वाले तीन गंतव्य। अगर इनमें से ठीक एक विफल हो, तो दोष पूरे क्लाइंट का नहीं, उस गंतव्य के रास्ते का है। एक्ज़िट नोड के इस्तेमाल के दौरान स्थानीय प्रिंटर के लिए सामान्य जवाब LAN-एक्सेस सेटिंग है। दूर के NAS के लिए घोषित रेंज, उसकी स्वीकृति स्थिति और एक्सेस नियम इसी क्रम में जाँचो। सार्वजनिक साइट के लिए जाँचो कि कौन-सा एक्ज़िट नोड चुना गया है और क्लाइंट ने उसे सचमुच स्वीकार किया है या नहीं।
अगर पता काम करता है और नाम नहीं, तो रास्ते देखना बंद करो। निजी DNS अलग से सेट होता है, और गलत पते पर हल होने वाला नाम उसी तरह विफल होता है जैसा अवरुद्ध रास्ता दिखता है। पहले पता जाँचो, फिर नाम, और दोनों नतीजे बताएँगे कि कौन-सी परत खोलनी है।
उस रास्ते की पुष्टि करो जो तुमने बनाया होगा
सत्यापन रास्ता खोज और पता जाँच है, ping नहीं। खोज बताती है कि कोई गंतव्य कौन-सा इंटरफ़ेस इस्तेमाल करेगा, और पता जाँच बताती है कि गंतव्य असल में किस रेंज में रहता है। सफल ping कहता है कि होस्ट कहीं ज़िंदा है, जो सवाल नहीं है। कोई भी कॉन्फ़िगरेशन बदलने से पहले दोनों चलाओ।
ip route get 10.40.0.55
ip -6 route show default
tailscale ping 10.40.0.55
इसे tailnet के अपने नज़रिए से जोड़ो, जो दिखाता है कि साथी सीधे जुड़ा है या रिले से। रिले वाला रास्ता भी काम करता है, और यह उन लेटेंसी शिकायतों को समझाता है जिनका तुम जिस रास्ते को डीबग कर रहे थे उससे कोई संबंध नहीं है। सबनेट राउटर का दस्तावेज़ अगर यह अनजाना हो तो स्वीकृति के चरण को ढकता है। फिर लिख लो कि तुम्हारे अपने नेटवर्क में कौन-सी रचना किस गंतव्य को ढकती है, क्योंकि अगला व्यक्ति जो साइट जोड़ेगा वही सवाल पूछेगा।