VPS ला Tailscale Exit Node कसे बनवावे
तुमच्या VPS ला Tailscale exit node म्हणून सेट करण्यासाठी आवश्यक कमांड्स आणि स्टेप्स जाणून घ्या. IP forwarding सक्षम करणे आणि admin console मध्ये राउट मंजूर करण्याची पद्धत येथे दिली आहे.
Tailscale exit node काय करते
Tailscale exit node हे तुमच्या tailnet मधील एक मशीन आहे जे तुमच्या इतर उपकरणांसाठी सर्व इंटरनेट ट्रॅफिक वाहून नेते. VPS (virtual private server) यासाठी उत्तम पर्याय आहे कारण त्याचा सार्वजनिक IP पत्ता स्थिर असतो आणि तो नेहमी ऑनलाइन राहतो. हे सेट करण्यासाठी पाच पायऱ्या आहेत: सर्व्हरवर Tailscale इंस्टॉल करा, exit node advertise करा, IP forwarding सक्षम करा, admin console मध्ये route मंजूर करा आणि शेवटी तुमच्या लॅपटॉपवर ते नोड निवडा. चौथी पायरी ही वेब पेजवरील एक टॉगल आहे, कमांड नाही, आणि तिथेच बहुतेक लोक अडकतात.
एकदा हे सुरू झाले की, तुमचा लॅपटॉप प्रत्येक पॅकेट एनक्रिप्ट करतो आणि ते VPS कडे पाठवतो. VPS त्यावर source NAT (network address translation) लागू करतो आणि ते पॅकेट स्वतःच्या सार्वजनिक IP पत्त्यावरून पुढे पाठवतो. वेबसाइट्सना फक्त VPS दिसतो. कॅफेमधील Wi-Fi ला फक्त VPS कडे जाणारा एक एनक्रिप्टेड UDP प्रवाह दिसतो, त्याशिवाय काहीही नाही.
Tailscale हे डेटा पाथसाठी WireGuard आहे, ज्यामध्ये एक coordination server असतो जो की (keys) वितरित करतो आणि NAT द्वारे दोन मशीनना एकमेकांना शोधण्यास मदत करतो. त्या coordination server मुळेच खाली कुठेही की कॉपी करण्याची गरज पडत नाही. यातील फायदे आणि तोटे सविस्तर समजून घेण्यासाठी, Tailscale आणि plain WireGuard यांची तुलना कशी करावी हे वाचा. जर तुम्हाला टनेलचा प्रत्येक भाग स्वतःच्या नियंत्रणात ठेवायचा असेल, तर त्याऐवजी तुमच्या VPS वर plain WireGuard VPN स्वतः होस्ट करा.
खालील पायऱ्या असे गृहीत धरतात की Tailscale आधीच तुमच्या लॅपटॉपवर सुरू आहे आणि दोन्ही मशीन एकाच tailnet मध्ये साइन-इन आहेत. tailnet हे तुमचे खाजगी Tailscale नेटवर्क आहे आणि त्यातील प्रत्येक उपकरणाला 100.64.0.0/10 च्या आत एक स्थिर पत्ता मिळतो.
तुमच्या VPS वर Tailscale इंस्टॉल करा
curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale upइंस्टॉल स्क्रिप्ट तुमच्या डिस्ट्रिब्युशनसाठी योग्य पॅकेज रिपॉझिटरी निवडते आणि tailscaled डेमन इंस्टॉल करते. त्यानंतर tailscale up एक ऑथेंटिकेशन URL प्रिंट करते. ती URL ब्राउझरमध्ये उघडा आणि तुमच्या लॅपटॉपवर वापरत असलेल्या त्याच अकाउंटने साइन इन करा, कारण वेगळ्या tailnet मध्ये साइन इन असलेला VPS तुमच्या लॅपटॉपला सर्व्ह करू शकत नाही.
tailscale status
tailscale ip -4tailscale status मध्ये आता दोन्ही मशीन्सची यादी दिसली पाहिजे. tailscale ip -4 कमांड VPS चा tailnet पत्ता प्रिंट करते, जो तुम्ही नंतर क्लायंटला देता.
टनेल तयार करण्यासाठी Tailscale ला TUN डिव्हाइसची आवश्यकता असते. KVM VPS वर हे डिव्हाइस उपलब्ध असते. कंटेनर व्हर्च्युअलायझेशन वापरणाऱ्या प्लॅन्सवर, जे होस्ट कर्नल शेअर करतात, तिथे /dev/net/tun अनेकदा उपलब्ध नसते आणि त्यामुळे tailscaled ला tailscale0 इंटरफेस तयार करता येत नाही. पुढे जाण्यापूर्वी ls -l /dev/net/tun रन करा.
IP forwarding सक्षम करा, अन्यथा VPS प्रत्येक पॅकेट ड्रॉप करेल
Linux मशीन स्वतःसाठी नसलेले कोणतेही पॅकेट ड्रॉप करते, कारण net.ipv4.ip_forward डीफॉल्टनुसार 0 असते. एक्झिट नोड तुमचा ट्रॅफिक स्वीकारेल, तो डिक्रिप्ट करेल आणि नंतर फेकून देईल. ही सेटिंग फाईलमध्ये लिहा जेणेकरून रीबूटनंतरही ती कायम राहील.
echo 'net.ipv4.ip_forward = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
echo 'net.ipv6.conf.all.forwarding = 1' | sudo tee -a /etc/sysctl.d/99-tailscale.conf
sudo sysctl -p /etc/sysctl.d/99-tailscale.conftee -a डेटा अपेंड (append) करते, त्यामुळे या ओळी दुसऱ्यांदा चालवल्यास दोन्ही सेटिंग्ज दोनदा लिहिल्या जातील. निकाल तरीही कार्य करेल, परंतु cat /etc/sysctl.d/99-tailscale.conf विचित्र दिसेल. फाईलवर विश्वास ठेवण्याऐवजी थेट व्हॅल्यू तपासा:
sysctl net.ipv4.ip_forwardते net.ipv4.ip_forward = 1 प्रिंट करणे आवश्यक आहे. जर तुम्ही हे वगळले आणि tailscale up --advertise-exit-node वापरले, तर क्लायंट तुम्हाला सांगेल:
Warning: IP forwarding is disabled, subnet routing/exit nodes will not work.tailscale set --advertise-exit-node ती तपासणी करत नाही, त्यामुळे set कडून कोणताही प्रतिसाद न मिळणे म्हणजे फॉरवर्डिंग चालू आहे असा पुरावा नाही. sysctl व्हॅल्यू स्वतः वाचा.
तुम्हाला स्वतःहून masquerade नियम लिहिण्याची गरज नाही. tailscaled स्वतःच्या फायरवॉल चेन्स इन्स्टॉल करते, ज्यांची नावे ts-input, ts-forward आणि ts-postrouting अशी आहेत, आणि एक्झिट नोड ट्रॅफिकसाठी NAT नियम ts-postrouting मध्ये असतो. त्यांना sudo iptables-save | grep ts- ने पहा, किंवा nftables असलेल्या बॉक्सवर sudo nft list ruleset वापरा.
VPS ला एक्झिट नोड म्हणून घोषित करा
sudo tailscale set --advertise-exit-nodetailscale set एक पसंती (preference) बदलते आणि इतर सेटिंग्ज तशाच ठेवते. tailscale up --advertise-exit-node नोडला देखील घोषित करते, आणि याचा एक दुष्परिणाम होतो: up त्याच्या कमांड लाईनवरील फ्लॅग्सना नॉन-डिफॉल्ट सेटिंग्जचा पूर्ण संच मानते, त्यामुळे नंतर चालवलेली साधी sudo tailscale up कमांड चालण्यास नकार देते आणि खालील संदेश दाखवते:
changing settings via 'tailscale up' requires mentioning all
non-default flags. To proceed, either re-run your command with --reset or
use the command below to explicitly mention the current value of
all non-default settings:सततच्या बदलांसाठी set वापरा, ज्यामुळे तुम्हाला असा संदेश कधीही येणार नाही.
घोषणा करणे म्हणजे एक प्रस्ताव आहे. आता VPS कोऑर्डिनेशन सर्व्हरला सांगत आहे की तो एक्झिट नोड बनण्यास तयार आहे. अद्याप कोणताही क्लायंट याचा वापर करू शकत नाही.
Tailscale ॲडमिन कन्सोलमध्ये एक्झिट नोड मंजूर करा
या पायरीसाठी कोणतीही कमांड वापरण्याची गरज नाही. ॲडमिन कन्सोलमधील Machines पेज उघडा, तुमचा VPS शोधा, त्याच्या ओळीच्या शेवटी असलेल्या तीन ठिपक्यांच्या मेनूवर क्लिक करा, Edit route settings निवडा आणि Use as exit node हा पर्याय सुरू करा.
जोपर्यंत हा पर्याय सुरू केला जात नाही, तोपर्यंत कंट्रोल प्लेन ही ऑफर कोणालाही देत नाही. तुमच्या लॅपटॉपवरील tailscale exit-node list मध्ये काहीही दिसत नाही आणि तुमचा ट्रॅफिक नेहमीच्या मार्गानेच जातो. दोन्ही मशीनवर कोणताही एरर मेसेज येत नाही. एक्झिट नोड फक्त दिसत नाही.
तुम्ही tailnet पॉलिसी फाईलमध्ये एन्ट्री करून एक्झिट नोड्स आपोआप मंजूर करू शकता:
"autoApprovers": {
"exitNode": ["tag:exit"],
}--advertise-tags=tag:exit वापरून सुरू केलेले डिव्हाइस आपोआप मंजूर होते, जर त्याच पॉलिसी फाईलमध्ये tagOwners अंतर्गत tag:exit परिभाषित केलेले असेल. टॅगिंगमुळे मालकी हक्क बदलतात: टॅग केलेले डिव्हाइस तुमच्या युजर अकाउंटऐवजी tailnet च्या मालकीचे होते आणि त्याला लागू होणारे ॲक्सेस नियम त्यानुसार बदलतात. एकाच VPS साठी, टॉगल वापरणे अधिक सोपे आहे.
तुमच्या लॅपटॉपवर एक्झिट नोड निवडा
Linux क्लायंटवर:
tailscale exit-node list
sudo tailscale set --exit-node=vps.your-tailnet.ts.netexit-node list तुमच्या टेलनेटमधील मंजूर एक्झिट नोड्स आणि त्यांचे पत्ते दर्शवते. जर यादी रिकामी असेल, तर याचा अर्थ असा की मंजुरीची प्रक्रिया पूर्ण झालेली नाही. macOS, Windows, iOS आणि Android वर हाच पर्याय Tailscale ॲपमधील Exit Node या मेनू आयटममध्ये उपलब्ध असतो.
क्लायंटवरून पडताळणी करा, सर्व्हरवरून कधीही करू नका:
curl -4 https://ifconfig.meएक्झिट नोड निवडण्यापूर्वी एकदा आणि निवडल्यानंतर एकदा ही कमांड चालवा. तुमचा पत्ता स्थानिक पत्त्यावरून बदलून VPS च्या सार्वजनिक IP वर झाला पाहिजे. एक्झिट नोड वापरणे थांबवण्यासाठी:
sudo tailscale set --exit-node=पहिल्या दिवशी आणखी एक फ्लॅग महत्त्वाचा ठरतो. एक्झिट नोड निवडलेला असताना, क्लायंट सर्व ट्रॅफिक टनेलमध्ये पाठवतो, ज्यामध्ये 192.168.1.50 कडे जाणारे पॅकेट्स देखील समाविष्ट असतात. त्यामुळे तुमचा प्रिंटर आणि नेटवर्क स्टोरेज प्रतिसाद देणे बंद करतात. स्थानिक नेटवर्कला स्थानिक मार्गावरच ठेवण्यासाठी:
sudo tailscale set --exit-node=<name> --exit-node-allow-lan-access=trueएक्झिट नोड सुरू असताना तुमचा DNS का बदलतो
डीफॉल्टनुसार, एक्झिट नोड वापरणारे डिव्हाइस प्रत्येक डोमेनसाठी त्या एक्झिट नोडलाच आपला DNS (डोमेन नेम सिस्टम) रिझॉल्व्हर म्हणून वापरते. हे तुमच्या tailnet साठी कॉन्फिगर केलेल्या ग्लोबल आणि स्प्लिट DNS नेमसर्व्हरना ओव्हरराइड करते. हे वर्तन जाणीवपूर्वक ठेवलेले आहे. जर क्वेरीज स्थानिक नेटवर्कच्या रिझॉल्व्हरकडे जात राहिल्या, तर ट्रॅफिक खाजगी असूनही कॅफेचा राउटर तुम्ही भेट देत असलेल्या प्रत्येक साइटचे नाव पाहू शकेल. नावे आणि पॅकेट्स एकाच ठिकाणाहून बाहेर पडली पाहिजेत.
अंतर्गत रिझॉल्व्हर चालवणाऱ्या वापरकर्त्यांसाठी याचा एक परिणाम असा होतो की, ज्या tailnet नेमसर्व्हरवर तुम्ही अवलंबून आहात, तो एक्झिट नोड सुरू असताना वापरला जाणे थांबते. तो पुन्हा सुरू करण्यासाठी ॲडमिन कन्सोलच्या DNS पेजवर त्या नेमसर्व्हरसाठी Use with exit node हा पर्याय चालू करा.
MagicDNS नावे काम करत राहतात, कारण Tailscale क्लायंट एक्झिट नोडपर्यंत काहीही पोहोचण्यापूर्वी 100.100.100.100 वर स्थानिक पातळीवर त्यांना उत्तर देतो. हे dig @100.100.100.100 your-vps.your-tailnet.ts.net वापरून तपासा, किंवा systemd-resolved क्लायंटवर resolvectl status वापरून तपासा, जिथे Tailscale इंटरफेस 100.100.100.100 ला त्याचा DNS सर्व्हर म्हणून सूचीबद्ध करतो.
जर तुम्ही --accept-dns=false वापरून Tailscale चे DNS हँडलिंग अक्षम केले, तर क्लायंट स्थानिक नेटवर्कवरून मिळालेला रिझॉल्व्हर कायम ठेवतो. ट्रॅफिक टनेल केले जाते परंतु क्वेरीज केल्या जात नाहीत, जे स्वतः तयार केलेल्या WireGuard टनेलमध्ये आढळणाऱ्या DNS लीकसारखेच आहे. जोपर्यंत बदलण्याचे काही विशिष्ट कारण नसेल, तोपर्यंत --accept-dns ला धक्का लावू नका.
एक्झिट नोडद्वारे IPv6
एक्झिट नोड 0.0.0.0/0 आणि ::/0 हे दोन्ही डीफॉल्ट रूट्स ॲडव्हर्टाइज करतो. जर VPS कडे इंटरनेटसाठी कार्यरत IPv6 मार्ग नसेल, तर IPv6 पॅकेट्स टनेलद्वारे येतात आणि तिथेच थांबतात. त्यावर विश्वास ठेवण्यापूर्वी VPS वर चाचणी करा:
ip -6 addr show
curl -6 https://ifconfig.meविनंती अयशस्वी होण्याचा अर्थ असा की VPS कडे IPv6 अपस्ट्रीम नाही. ड्युअल स्टॅक वेबसाइट्स सहसा तरीही लोड होतात, कारण क्लायंट IPv6 चा प्रयत्न सोडून IPv4 वर पुन्हा प्रयत्न करतो, जरी या पुनर्प्रयत्नामुळे प्रत्येक साइटच्या पहिल्या कनेक्शनवर विलंब होतो. केवळ IPv6 असलेल्या डेस्टिनेशन्सपर्यंत पोहोचता येत नाही.
दुसरा भाग म्हणजे फॉरवर्डिंग. net.ipv4.ip_forward = 1 आणि net.ipv6.conf.all.forwarding ची व्हॅल्यू 0 ठेवल्यास तुम्हाला IPv4 चा कार्यरत मार्ग मिळतो, परंतु IPv6 साठी एक 'ब्लॅक होल' तयार होतो. वापरकर्त्याला हे "काही साइट्स हळू चालतात" असे जाणवते, जे शोधण्यायोग्य त्रुटी (error) म्हणून समोर येत नाही. दोन्ही ओळी sysctl फाइलमध्ये असणे आवश्यक आहे.
VPS ने सबनेट रूट्सची (subnet routes) जाहिरात देखील करावी का?
एक्झिट नोड (exit node) सर्व इंटरनेट ट्रॅफिक वाहून नेतो. सबनेट रूट एका खाजगी रेंजला (private range) वाहून नेतो, जी जाहिरात करणाऱ्या मशीनच्या मागे असते. ही दोन्ही स्वतंत्र वैशिष्ट्ये आहेत आणि त्यांना स्वतंत्र मंजुरीची आवश्यकता असते. एकच मशीन दोन्ही कामे करू शकते.
sudo tailscale set --advertise-routes=10.0.0.0/24जेव्हा VPS इतर सर्व्हरसोबत खाजगी नेटवर्क शेअर करत असेल आणि तुम्हाला त्या सर्व्हरपर्यंत त्यांच्या खाजगी पत्त्यांद्वारे पोहोचायचे असेल, तेव्हा सबनेटची जाहिरात करा. Edit route settings पॅनेलमध्ये, स्वतंत्र टॉगल वापरून याला मंजुरी द्या.
रेंज काळजीपूर्वक निवडा. जाहिरात केलेला रूट तुमच्या लॅपटॉपच्या डीफॉल्ट रूटपेक्षा अधिक विशिष्ट असतो. त्यामुळे, VPS कडून 192.168.1.0/24 ची जाहिरात केल्यास, ती त्याच रेंजचा वापर करणाऱ्या होम नेटवर्कच्या पत्त्यांवर ताबा मिळवते आणि तुमच्या डेस्कवरील उपकरणे प्रतिसाद देणे बंद करतात. तुमच्या होम राउटरने निवडलेली रेंज न वापरता, तुम्ही स्वतः निवडलेली रेंज वापरा.
UDP GRO forwarding वापरून exit node चा वेग वाढवणे
Tailscale 1.54 आणि त्यानंतरच्या आवृत्त्या, Linux 6.2 किंवा त्यापुढील कर्नलवर, फॉरवर्ड केलेल्या ट्रॅफिकचा थ्रूपुट वाढवण्यासाठी receive offload चा वापर करू शकतात. GRO (generic receive offload) कर्नलने प्रत्येक पॅकेट स्वतंत्रपणे प्रोसेस करण्यापूर्वी येणाऱ्या पॅकेट्सना एकत्रित करते. ऑगस्ट 2026 पर्यंत, exit node वर ही प्रक्रिया मॅन्युअली करावी लागते.
sudo apt install -y ethtool
NETDEV=$(ip -o route get 8.8.8.8 | cut -f 5 -d " ")
sudo ethtool -K $NETDEV rx-udp-gro-forwarding on rx-gro-list offip -o route get 8.8.8.8 हे इंटरनेटशी थेट जोडलेले इंटरफेस दर्शवते, त्यामुळे तुम्हाला eth0, ens3 आणि enp1s0 यांच्यात गोंधळण्याची गरज पडत नाही. ethtool -k $NETDEV | grep udp-gro-forwarding वापरून खात्री करा, ज्याचे आउटपुट आता on असे दिसले पाहिजे.
रीबूट केल्यानंतर ही सेटिंग निघून जाते. networkd-dispatcher चालवणाऱ्या सिस्टिमवर, हे स्वयंचलित करण्यासाठी खालीलप्रमाणे करा:
printf '#!/bin/sh\n\nethtool -K %s rx-udp-gro-forwarding on rx-gro-list off \n' "$(ip -o route get 8.8.8.8 | cut -f 5 -d " ")" | sudo tee /etc/networkd-dispatcher/routable.d/50-tailscale
sudo chmod 755 /etc/networkd-dispatcher/routable.d/50-tailscaleसर्वात आधी /etc/networkd-dispatcher/routable.d/ अस्तित्वात आहे का ते तपासा. जर ते नसेल, तर त्या मशीनवर networkd-dispatcher चालत नाही. अशा वेळी, बूट होताना ethtool ही ओळ चालवणारी एक छोटी systemd unit तयार केल्यास तेच काम पूर्ण होईल.
तुमच्या प्रोव्हायडरचे 'acceptable use policy' एक्झिट ट्रॅफिकसाठी काय अर्थ दर्शवते
क्लायंट एक्झिट नोडद्वारे पाठवत असलेले प्रत्येक पॅकेट VPS च्या पब्लिक IP ॲड्रेससह बाहेर पडते, त्यामुळे ते तुमच्या खात्याशी जोडले जाते. कॉपीराइट नोटिसेस आणि पोर्ट स्कॅनच्या तक्रारींसारखे 'abuse reports' तुमच्या इनबॉक्समध्ये येतात. एखाद्या घरातील किंवा टीमचे ट्रॅफिक सर्व्हरवरून राउट करण्यापूर्वी तुमच्या प्रोव्हायडरचे AUP (acceptable use policy) वाचा आणि ज्यांच्यावर तुम्ही विश्वास ठेवू शकत नाही अशा लोकांसाठी एक्झिट नोड उघडू नका.
बँडविड्थची गणना दोनदा केली जाते. ट्रॅफिक टनेलद्वारे VPS वर येते आणि त्यानंतर इंटरनेटसाठी पुन्हा बाहेर पडते; दोन्ही दिशांचे ट्रॅफिक सहसा तुमच्या प्लॅनच्या ट्रान्सफर अलाउन्समध्ये मोजले जाते. एक्झिट नोडद्वारे पाहिलेला व्हिडिओ स्ट्रीम अपेक्षेपेक्षा जास्त डेटा वापरतो.
डेटासेंटर ॲड्रेस रेंजची एक विशिष्ट प्रतिष्ठा असते. काही वेबसाइट्स अशा ॲड्रेसवर अधिक CAPTCHAs दाखवतात, तर काही स्ट्रीमिंग सेवा त्यांना थेट नाकारतात. तुमच्या कॉन्फिगरेशनमधील कोणत्याही बदलाचा यावर परिणाम होत नाही, कारण ही तुमच्या प्रोव्हायडरच्या मालकीच्या ॲड्रेस ब्लॉकची एक मालमत्ता आहे.
तुमचा ट्रॅफिक अजूनही स्थानिक कनेक्शनद्वारे का जात आहे
एक्झिट नोडची जाहिरात केली आहे पण तो मंजूर केलेला नाही. क्लायंटवर tailscale exit-node list काहीही आउटपुट देत नाही आणि कोणत्याही मशीनवर एरर लॉग होत नाही. Machines पेजवर जा आणि Use as exit node हा पर्याय सुरू करा.
क्लायंटने तो निवडलेला नाही. मंजुरी दिल्याने नोड tailnet साठी उपलब्ध होतो. प्रत्येक डिव्हाइसवर निवड करणे ही एक स्वतंत्र कृती आहे. sudo tailscale set --exit-node=<name> पुन्हा चालवा आणि त्यानंतर पुन्हा curl -4 https://ifconfig.me तपासा.
फॉरवर्डिंग बंद आहे. याचे लक्षण स्पष्ट आहे: tailscale ping <vps> यशस्वी होते, टनेल स्पष्टपणे सुरू आहे, परंतु प्रत्येक बाहेरील पत्त्यासाठी टाइमआउट होतो. sysctl net.ipv4.ip_forward चे वाचन 0 येते. sysctl फाइल दुरुस्त करा आणि त्यानंतर sudo sysctl -p /etc/sysctl.d/99-tailscale.conf चालवा.
फायरवॉल फॉरवर्ड केलेले पॅकेट्स ड्रॉप करत आहे. tailscaled स्वतःची ts-forward चेन इन्सर्ट करते आणि एका स्वच्छ VPS वर ते पुरेसे असते. ज्या बॉक्सवर आधीच ufw किंवा Docker चालू आहे, तिथे FORWARD पॉलिसी DROP असू शकते आणि नियम Tailscale च्या नियमांच्या आधी असू शकतात. कोणता नियम अडथळा ठरत आहे याचा अंदाज लावू नका: क्लायंट पेज लोड करण्याचा प्रयत्न करत असताना sudo iptables -L FORWARD -n -v चालवा आणि कोणते काउंटर वाढत आहेत ते पहा. ufw असलेल्या बॉक्सवर सामान्य उपाय म्हणजे /etc/default/ufw मध्ये DEFAULT_FORWARD_POLICY="ACCEPT" जोडणे आणि त्यानंतर sudo ufw reload चालवणे. तुमच्या प्रोव्हायडरच्या कंट्रोल पॅनेलमध्ये असलेल्या नेटवर्क फायरवॉलची देखील तपासणी करा, कारण हे सर्व्हरवर चालणाऱ्या कोणत्याही गोष्टीपेक्षा वेगळे नियंत्रण असते.
हे काम करत आहे, पण ते संथ आहे. दोन्ही मशीनवर tailscale netcheck चालवा. जर त्यात UDP ब्लॉक असल्याचे दिसत असेल, तर दोन्ही डिव्हाइसेस थेट मार्ग तयार करू शकत नाहीत आणि त्यांना DERP रिलेवर अवलंबून राहावे लागते, ज्यामुळे प्रत्येक कनेक्शनमध्ये लेटन्सी वाढते. प्रोव्हायडरच्या नेटवर्क फायरवॉलमध्ये पोर्ट 41641 वर येणाऱ्या UDP ट्रॅफिकला परवानगी दिल्यास सहसा थेट मार्ग पुन्हा सुरू होतो.
Tailscale च्या coordination server वरून कधी बाहेर पडावे
वरील सर्व गोष्टी की एक्सचेंज (key exchange) आणि तुम्ही दिलेल्या मंजुरीसाठी Tailscale च्या होस्ट केलेल्या coordination server वर अवलंबून आहेत. तुमचा ट्रॅफिक थेट लॅपटॉपवरून VPS कडे जातो आणि coordination server तो कधीही वाहून नेत नाही, तरीही tailnet मध्ये कोणाला सामील व्हायचे आणि प्रत्येक डिव्हाइस काय ॲक्सेस करू शकेल, याचा निर्णय तोच घेतो. जर तुम्हाला हे अवलंबित्व काढून टाकायचे असेल, तर Headscale ला तुमचा स्वतःचा Tailscale control server म्हणून चालवा आणि दोन्ही क्लायंट्सना त्याकडे निर्देशित करा. त्यानंतर exit node च्या पायऱ्या समानच राहतात, फक्त रूट मंजुरी (route approval) होस्ट केलेल्या कन्सोलऐवजी Headscale च्या कमांड लाईनद्वारे केली जाते. Headscale कंट्रोल प्लेन बदलतो पण तुम्हाला Tailscale क्लायंट्सवरच ठेवतो. त्यामुळे जर तुम्हाला संपूर्ण स्टॅक स्वतःच चालवायचा असेल, तर NetBird स्वतःचा coordination server आणि क्लायंट्स पुरवते जे तुम्ही एका VPS वर होस्ट करू शकता.
FAQ
एक्झिट नोड निवडल्यानंतरही माझे ट्रॅफिक माझ्या स्थानिक कनेक्शनचा वापर का करत आहे?
याची दोन सामान्य कारणे आहेत. एक्झिट नोडची जाहिरात केली गेली पण तो मंजूर केला गेला नाही: ॲडमिन कन्सोलमधील Machines पेज उघडा, VPS शोधा, Edit route settings निवडा आणि Use as exit node सुरू करा. ही मंजुरी कन्सोलमधील एक टॉगल आहे आणि सर्व्हरवरील कोणतीही कमांड हे काम करत नाही. दुसरे कारण वेगळे आहे: IP forwarding बंद आहे, त्यामुळे टनेल सुरू होते, VPS कडे tailscale ping काम करते, परंतु प्रत्येक बाहेरील पत्त्यासाठी टाइमआउट होतो. sysctl net.ipv4.ip_forward वापरून तपासा, ज्याचे मूल्य 1 असणे आवश्यक आहे.
मला प्रत्येक वेळी एक्झिट नोड मॅन्युअली मंजूर करावा लागतो का?
हा टॉगल प्रत्येक मशीनसाठी एकदाच करायची कृती आहे. जर तुम्ही वारंवार VPS पुन्हा तयार करत असाल, तर तुमच्या tailnet पॉलिसी फाइलमध्ये autoApprovers ब्लॉक जोडा ज्यामध्ये "exitNode": ["tag:exit"] असेल, tagOwners अंतर्गत tag:exit परिभाषित करा आणि --advertise-tags=tag:exit सह नोड सुरू करा. टॅग केलेले डिव्हाइस तुमच्या युजर अकाउंटऐवजी tailnet च्या मालकीचे असते, त्यामुळे त्याला लागू होणारे ॲक्सेस नियमही बदलतात.
एक्झिट नोड सुरू असताना माझा लॅपटॉप कोणता DNS सर्व्हर वापरतो?
एक्झिट नोड स्वतःच. एक्झिट नोड वापरणारे डिव्हाइस सर्व DNS क्वेरी तिथे पाठवते आणि हे tailnet साठी सेट केलेल्या ग्लोबल आणि स्प्लिट DNS नेम सर्व्हरना ओव्हरराइड करते. यामुळे तुम्ही शोधत असलेली नावे स्थानिक नेटवर्कला दिसत नाहीत. एक tailnet नेम सर्व्हर लागू ठेवण्यासाठी, ॲडमिन कन्सोलच्या DNS पेजवर त्यासाठी Use with exit node सक्षम करा. MagicDNS नावे अजूनही रिझॉल्व्ह होतात, कारण Tailscale क्लायंट त्यांना स्थानिक पातळीवर 100.100.100.100 वर उत्तर देतो.
एक VPS एकाच वेळी एक्झिट नोड आणि सबनेट राउटर असू शकतो का?
हो. sudo tailscale set --advertise-exit-node आणि sudo tailscale set --advertise-routes=10.0.0.0/24 स्वतंत्र आहेत आणि प्रत्येकाला Edit route settings अंतर्गत स्वतःचा मंजुरी टॉगल मिळतो. दोन्हीसाठी VPS वर IP forwarding सक्षम असणे आवश्यक आहे. तुमच्या लॅपटॉपच्या होम नेटवर्कशी जुळणारी रेंज ॲडव्हर्टाइज करणे टाळा, कारण ॲडव्हर्टाइज केलेला मार्ग हा डीफॉल्ट मार्गापेक्षा अधिक विशिष्ट असतो आणि तुमची स्थानिक डिव्हाइसेस पोहोचण्यायोग्य राहत नाहीत.
एक्झिट नोड माझे ट्रॅफिक माझ्या VPS प्रोव्हायडरपासून लपवतो का?
नाही. टनेल VPS वर संपते, त्यामुळे ट्रॅफिक सर्व्हरवरून अशा स्वरूपात बाहेर पडते ज्याची डेस्टिनेशनला अपेक्षा असते आणि जिथे साइट स्वतः एनक्रिप्टेड नाही तिथे तुमचा प्रोव्हायडर ते ट्रॅफिक स्पष्ट स्वरूपात वाहून नेतो. एक्झिट नोड तुमच्या ट्रॅफिकचा इंटरनेटमध्ये प्रवेश करण्याचा बिंदू बदलतो, तुम्ही ज्या नेटवर्कवर आहात तिथून तो तुम्ही भाड्याने घेतलेल्या सर्व्हरवर नेतो. हे तुमच्या ब्राउझिंगला कॅफे वाय-फाय आणि तुमच्या होम ISP पासून लपवते, परंतु तेच ब्राउझिंग तुमच्या अकाउंटच्या नावासह तुमच्या VPS प्रोव्हायडरला दिसते.