SSD Nodes Learn 8GB RAM — $66/वर्ष
मार्गदर्शक Matt Connorद्वारे Matt Connor · अपडेटेड 2026-08-01

WireGuard, Tailscale की Headscale: VPS साठी योग्य काय?

Tailscale म्हणजे WireGuardवरील नियंत्रण स्तर. समन्वय सर्व्हरमुळे काय मिळते, त्याची किंमत काय आहे आणि VPS साठी WireGuard, Tailscale किंवा Headscaleपैकी काय निवडावे ते जाणून घ्या.

WireGuard विरुद्ध Tailscale: थोडक्यात उत्तर

WireGuard विरुद्ध Tailscale ही दोन प्रोटोकॉलमधील निवड नाही, कारण Tailscale हेच WireGuard आहे. Tailscale समान एन्क्रिप्शन आणि समान टनेल वापरते. त्यावर ते एक नियंत्रण स्तर जोडते: सार्वजनिक कींची देवाणघेवाण करणारा, पत्ते वितरित करणारा, NAT (network address translation) मधून मार्ग तयार करणारा आणि प्रवेश धोरण लागू करणारा समन्वय सर्व्हर. या समन्वयापैकी किती भाग तुम्हाला स्वतः चालवायचा आहे, याची तुम्ही निवड करत आहात.

याची तीन स्पष्ट उत्तरे आहेत. तुमच्याकडे एक सर्व्हर आणि त्याच्याशी थेट जोडणारे काही क्लायंट असतील, तर साधे WireGuard चालवा. प्रत्येक मशीनला कोणतीही कॉन्फिगरेशन फाइल सांभाळल्याशिवाय इतर प्रत्येक मशीनपर्यंत पोहोचवायचे असेल, तर Tailscale चालवा. तुम्हाला हे mesh हवे असेल, पण node list एखाद्या तृतीय पक्षाकडे ठेवायची नसेल, तर Headscale चालवा.

नियंत्रण स्तर प्रत्यक्षात काय उपलब्ध करून देतो

साध्या WireGuard मध्ये शोध सुविधा नसते. प्रत्येक peer म्हणजे तुम्ही हाताने लिहिलेला मजकुराचा एक संच असतो: सार्वजनिक key, एक AllowedIPs line आणि तो peer पोहोचण्यायोग्य असल्यास एक Endpoint. दहा मशीनच्या नेटवर्कमध्ये एक मशीन जोडण्यासाठी दहा configuration files संपादित कराव्या लागतात, कारण प्रत्येक बाजूला दुसऱ्या बाजूची key आवश्यक असते. म्हणूनच जवळजवळ प्रत्येक self-hosted WireGuard setup hub-and-spoke रचनेचा असतो: सार्वजनिक IP असलेला एक server आणि त्याच्याशीच संपर्क करणारे clients.

नियंत्रण स्तरामुळे ही संपादनाची आवश्यकता दूर होते. प्रत्येक node एकदाच नोंदणी करतो, 100.64.0.0/10 CGNAT (carrier grade NAT) range मधून एक address मिळवतो आणि ज्या nodes पर्यंत पोहोचण्याची त्याला परवानगी आहे त्यांच्या public keys त्याला दिल्या जातात. Tunnel अद्याप दोन peers मधील थेट WireGuard connection असतो आणि तुमचा traffic coordination server मधून जात नाही. Server कडे metadata असते: कोणते nodes अस्तित्वात आहेत, कोणती key कोणाची आहे आणि कोणता node कोणाशी संपर्क करू शकतो.

यातून तीन ठोस सुविधा मिळतात.

NAT traversal. दोन home routers मागे असलेल्या दोन laptops मध्ये कोणताही सार्वजनिक IP नसतो. Tailscale STUN (session traversal utilities for NAT) वापरून दोन्ही बाजूंचा बाहेरील address आणि port शोधते. त्यानंतर दोन्ही बाजू एकाच वेळी packets पाठवतात. त्यामुळे प्रत्येक router ला आधी outgoing flow दिसतो आणि तो reply स्वीकारतो. हे अयशस्वी झाल्यास traffic DERP relay कडे वळतो. हा Tailscale द्वारे चालवला जाणारा encrypted relay असतो. Relay मधून जात असतानाही तुमचा data end-to-end encrypted राहतो, कारण relay कडे keys कधीही नसतात. tailscale status चालवा. प्रत्येक peer line मध्ये direct किंवा relay दिसेल. कोणता relay सर्वात जवळचा आहे आणि तुमचे network UDP ला परवानगी देते की नाही हे पाहण्यासाठी tailscale netcheck चालवा.

Expiry सह key rotation. WireGuard keys कधीही expire होत नाहीत. तीन वर्षांपूर्वी जारी केलेली key तुम्ही peer block हाताने delete करेपर्यंत कायम कार्यरत राहते. त्याऐवजी Tailscale node keys expire करते. July 2026 पर्यंत, नवीन tailnet साठी default expiry period 180 days आहे. ज्या machine ने पुन्हा authentication केलेले नाही, ती connect होणे थांबवते. Server किंवा subnet router साठी तुम्ही प्रत्येक device वर expiry बंद करू शकता, विशेषतः ज्या device वर login करण्यासाठी कोणी उपलब्ध नसते.

Routing ऐवजी policy. साध्या WireGuard मध्ये AllowedIPs हे routing table आणि access control list दोन्ही असते. त्यामुळे "alice may reach the database" हे IP range म्हणून व्यक्त करावे लागते. Tailscale स्वतंत्र policy file ठेवते. त्यातील rules मध्ये users, groups आणि tags यांची नावे वापरता येतात. एखादा rule सांगू शकतो की tag:laptop ला port 5432 वरील tag:db पर्यंत आणि इतर कुठेही पोहोचण्याची परवानगी नाही. Machine ला नवीन address मिळाल्यानंतरही तो rule लागू राहतो.

नियंत्रण प्लेनची किंमत

समन्वय सर्व्हरला तुमच्या नेटवर्कची माहिती असते. त्याच्याकडे प्रत्येक नोडची सार्वजनिक की, प्रत्येक नोडचे नाव, वितरित केलेले पत्ते आणि धोरण असते. Hosted Tailscale वापरल्यास हा सर्व्हर तुमच्या नियंत्रणाबाहेरील कंपनीकडे असतो. WireGuard च्या खाजगी की तुमच्या मशीनवरच राहतात, त्यामुळे त्यांना तुमची पॅकेट्समधील माहिती वाचता येत नाही. परंतु तुमच्या नेटवर्कची रचना त्यांना दिसू शकते. तसेच, त्यांची सेवा सुरू असणे आणि तुमचे खाते योग्य स्थितीत असणे यावर तुमची कनेक्ट होण्याची क्षमता अवलंबून असते.

दुसरी एक किंमत सहज लक्षात येत नाही. Tailscale प्रत्येक मशीनवर daemon म्हणून चालतो. त्यामुळे प्रत्येक मशीनवर त्याचे सुरक्षा अद्यतनांसह patching करावे लागते. Ubuntu 24.04 वरील साधा WireGuard हा distribution सोबत उपलब्ध होणारा kernel module आहे आणि kernel सोबत अद्ययावत होतो.

तिसरी किंमत billing ची आहे. July 2026 पर्यंत Personal plan 6 users पर्यंत अमर्यादित devices सह विनामूल्य आहे. Standard ची किंमत प्रति user प्रति month $8 आहे. Premium ची किंमत प्रति user प्रति month $18 आहे. एका कुटुंबासाठी सेवा विनामूल्य राहते. दहा जणांच्या team साठी ती विनामूल्य राहत नाही.

साधे WireGuard योग्य पर्याय असताना

टोपोलॉजी प्रत्यक्षात hub आणि spoke प्रकारची असेल, तेव्हा साधे WireGuard निवडा. सार्वजनिक IP असलेला एक VPS, त्याच्याशी जोडणारी तीन किंवा चार उपकरणे आणि त्या उपकरणांना एकमेकांपर्यंत पोहोचण्याची आवश्यकता नसणे, अशी रचना यासाठी योग्य आहे. कॉन्फिगरेशन एका स्क्रीनवर मावते. अपडेट करण्यासाठी daemon नसतो. गमावण्यासारखे account नसते. तुमच्या server आणि तुमच्यामध्ये कोणतीही बाह्य सेवा नसते.

इतर सर्व गोष्टी ज्या स्तरावर आधारित आहेत, तो स्तर समजून घ्यायचा असेल, तरी हा योग्य पर्याय आहे. VPS वर WireGuard VPN स्वतः होस्ट करणे या मार्गदर्शकात key generation, wg0.conf, IP forwarding, NAT आणि handshake failures यांची माहिती दिली आहे. tailnet खाली ही सर्व यंत्रणा अद्याप कार्यरत असते. तुम्ही अजून जुन्या पर्यायाचा विचार करत असाल, तर WireGuard विरुद्ध OpenVPN या लेखात OpenVPN ला अजूनही आघाडी असलेली चार प्रकरणे स्पष्ट केली आहेत.

स्थापना लहान आहे:

sudo apt update && sudo apt install -y wireguard
sudo modprobe wireguard && echo ok

प्रत्येक उपकरणाला इतर प्रत्येक उपकरणापर्यंत पोहोचणे आवश्यक होते, त्या क्षणी साधे WireGuard वापरणे अवघड होते. N nodes च्या full mesh साठी N गुणिले N उणे एक peer blocks आवश्यक असतात. सहा उपकरणांमध्ये हाताने समक्रमित ठेवावे लागणारे तीस blocks होतात. डुप्लिकेट AllowedIPs entry मुळे ती entry आधी असलेल्या peer कडून traffic शांतपणे वळवला जातो आणि कुठेही कोणतीही error message दिसत नाही.

Tailscale योग्य पर्याय कधी आहे

मशिने स्थलांतरित होत असतील तेव्हा Tailscale निवडा. हॉटेल नेटवर्कवरील लॅपटॉप, mobile data वापरणारा फोन किंवा तुमच्या नियंत्रणाबाहेरील router च्या मागे असलेला home server ही त्याची योग्य उदाहरणे आहेत. या परिस्थितींमध्ये साधे WireGuard नीट कार्य करत नाही, कारण Endpoint मध्ये नोंदवण्यासाठी कोणत्याही बाजूकडे स्थिर public endpoint नसतो.

अधिकृत installer मधून client install करण्यासाठी एकच command वापरा:

curl -fsSL https://tailscale.com/install.sh | sh
sudo tailscale up
tailscale status

tailscale up एक URL दाखवते. तो उघडा, log in करा आणि machine नेटवर्कमध्ये सामील होईल. कॉपी करण्यासाठी key किंवा उघडण्यासाठी inbound port आवश्यक नाही. daemon coordination server शी outbound connection करतो आणि तो connection सुरू ठेवतो. त्यामुळे कोणत्याही firewall वर तुमचे नियंत्रण नसलेल्या नेटवर्कवरही Tailscale node कार्य करते.

त्यानंतरची बहुतांश उपयुक्त कार्ये दोन settings करतात. Subnet router संपूर्ण LAN ची network मध्ये जाहिरात करतो. त्यामुळे प्रत्येक device वर client install करण्याची गरज राहत नाही:

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.conf
sudo tailscale set --advertise-routes=192.0.2.0/24

Admin console मध्ये route मंजूर करेपर्यंत तो निष्क्रिय राहतो. हे जाणीवपूर्वक केलेले आहे. एखादा node स्वतःहून तुमच्या network मध्ये route समाविष्ट करू शकत नाही. Linux clients साठी sudo tailscale set --accept-routes देखील आवश्यक आहे. Linux जाहिरात केलेले routes default स्वरूपात स्वीकारत नाही. त्यामुळे server बाजूने मंजूर दिसणारा route, हे setting Linux laptop वर लागू करेपर्यंत कोणतेही कार्य करत नाही.

Exit node client चा सर्व network traffic एका machine मधून पाठवते. लोक "VPN" म्हणतात ते पूर्ण tunnel वर्तन सामान्यतः हेच असते:

sudo tailscale set --advertise-exit-node

Headscale हा योग्य पर्याय कधी आहे

Headscale हे coordination server चे open source implementation आहे आणि ते तुमच्या मालकीच्या VPS वर चालते. अधिकृत Tailscale clients hosted service ऐवजी त्याकडे निर्देश करतात:

sudo tailscale up --login-server https://headscale.example.com

Data path शी संबंधित सर्व काही तसेच राहते. ते अजूनही WireGuard असते आणि network ने परवानगी दिल्यास peers दरम्यान थेट कनेक्शन राहते. बदल एवढाच होतो की node list, keys आणि policy तुमच्या मालकीच्या disk वरील SQLite file मध्ये साठवले जातात. बाहेरील कोणीही तुमच्या network ची रचना पाहू शकत नाही, तुमचे account disable करू शकत नाही किंवा प्रत्येक user साठी शुल्क आकारू शकत नाही.

मात्र यासाठी प्रत्यक्ष प्रशासनिक काम करावे लागते. आता तुम्ही public HTTPS service चालवत असता. यासाठी DNS name, certificate आणि WebSocket upgrades योग्य प्रकारे forward करणारा reverse proxy आवश्यक असतो. त्याची uptime राखण्याची जबाबदारी तुमची असते. Coordination server बंद असल्यास नवीन nodes register होऊ शकत नाहीत आणि विद्यमान nodes ना बदलांची माहिती मिळू शकत नाही. Headscale अजूनही version 1.0 पेक्षा कमी आहे आणि त्याच्या minor releases मध्ये breaking changes झाले आहेत. त्यामुळे प्रत्येक upgrade पूर्वी changelog वाचा. Headscale स्वतःचा Tailscale control server म्हणून चालवणे यामध्ये installation, config.yaml, preauth keys आणि उघडायचे ports यांचे वर्णन आहे.

एक महत्त्वाची मर्यादा उशिरा लक्षात येते. Headscale सोबत Tailscale चे global relay network येत नाही. दोन peers थेट connect होऊ शकत नसतील, तर तुम्हाला तुमच्या स्वतःच्या server वर embedded relay enable करावा लागतो किंवा config दुसऱ्या relay कडे निर्देशित करावी लागते. हा relay जगभर पसरलेल्या fleet ऐवजी एका region मधील एकच box असतो. पृथ्वीच्या विरुद्ध बाजूला असलेल्या peers ना हा फरक जाणवतो.

एका टप्प्यात निर्णय कसा घ्यावा

एकमेकांशी संपर्क साधण्यासाठी किती मशीनना सक्षम करायचे आहे, हे विचारा. उत्तर असे असेल की त्या सर्व मशीनना फक्त server शी संवाद साधायचा आहे, तर त्याच परिणामासाठी plain WireGuard मध्ये कमी software लागते.

मशीनना स्थिर public addresses आहेत का, हे विचारा. त्यांपैकी बहुतेक मशीनवर तुमचे नियंत्रण नसलेल्या NAT मागे असतील, तर तुम्हाला control plane आवश्यक आहे. कारण hole punching हा कठीण भाग आहे आणि तो पुन्हा तयार करणे योग्य नाही.

तुमच्या network ची रचना कोणाला माहीत असण्याची परवानगी आहे, हे विचारा. उत्तरात बाहेरील कंपन्यांचा समावेश नसेल किंवा user count मुळे per seat billing खर्चिक ठरत असेल, तर Headscale चालवा आणि आता control server चे संचालन तुम्हालाच करावे लागेल, हे स्वीकारा.

तुमचा निर्णय कमी खर्चात बदलता येतो. तिन्ही पर्यायांमध्ये data plane साठी समान protocol असल्यामुळे, plain WireGuard वरून coordinated mesh कडे जाण्यासाठी redesign करण्याऐवजी client install करणे पुरेसे असते. Tailscale वरून Headscale कडे जाण्यासाठी प्रत्येक node ची वेगळ्या login server विरुद्ध पुन्हा registration करावी लागते.

तिन्हीपैकी कोणतेही तुम्हाला देत नाही

तिन्हीपैकी कोणतेही firewall नाही. Tunnel कोणते packets वाहून नेले जातील हे ठरवतो; कोणत्या services ऐकण्याच्या स्थितीत आहेत हे नाही. Tunnel द्वारे पोहोचता येणारा server तुम्ही उघडा ठेवलेल्या कोणत्याही port वरून internet वरून अजूनही पोहोचता येतो. त्यामुळे VPS वरील UFW firewall rules सुरू ठेवा आणि त्यांचे काम होऊ द्या. Tailscale ची policy file इतर nodes कोणत्या resources पर्यंत पोहोचू शकतात हे मर्यादित करते. ती public interface वर कोणताही परिणाम करत नाही.

तिन्हीपैकी कोणतेही per-service authentication देत नाही. Connected झाल्यानंतर user ने काय केले याचा audit trail देखील कोणतेही देत नाही. तिन्हींना transport म्हणून वापरा आणि login checks application मध्ये ठेवा.

FAQ

Tailscale म्हणजे अतिरिक्त पायऱ्यांसह WireGuardच आहे का?

Tailscale डेटा मार्गासाठी WireGuard प्रोटोकॉल वापरते. त्यामुळे कूटबद्धीकरण आणि टनेल समान असतात. Tailscale यात समन्वयाची कार्ये जोडते: की-विनिमय, पत्ता वाटप, STUN आणि DERP relay द्वारे NAT traversal, कीची मुदत संपणे आणि IP range ऐवजी वापरकर्त्यांची नावे असलेली policy file. साधा WireGuard ही कामे तुमच्यावर सोपवतो. संगणके वेगवेगळ्या नेटवर्कमध्ये हलू लागल्यावर हीच कामे अवघड होतात.

माझी network traffic Tailscale च्या server द्वारे जाते का?

सामान्यतः नाही. Coordination server ने peers ची ओळख करून दिल्यानंतर ते एकमेकांशी थेट जोडले जातात. त्या peer lines मध्ये tailscale status हे direct दाखवते. थेट मार्ग स्थापित करता आला नाही तर traffic DERP relay कडे वळते आणि line मध्ये relay दिसते. तरीही relay कडे कूटबद्ध packets जातात. त्याच्याकडे तुमच्या WireGuard private keys नसतात, त्यामुळे तो contents वाचू शकत नाही. तुमचे network direct connections साठी आवश्यक असलेले UDP block करत आहे का, हे पाहण्यासाठी tailscale netcheck चालवा.

अधिकृत Tailscale apps सोबत Headscale वापरता येते का?

होय. Headscale समान control protocol वापरते. त्यामुळे official clients sudo tailscale up --login-server https://headscale.example.com वापरून जोडले जातात. Desktop आणि mobile apps custom login server कडे निर्देशित करता येतात. मात्र प्रत्येक platform वर ही setting वेगळ्या ठिकाणी असते. Specific version ची गरज mobile apps ला सर्वाधिक भासू शकते. संपूर्ण network migrate करण्यापूर्वी एका phone वर चाचणी करा.

Tailscale किंवा Headscale साठी ports उघडणे अजूनही आवश्यक आहे का?

Tailscale client ला inbound port आवश्यक नसतो. तो coordination server कडे बाहेरून connection सुरू करतो आणि ते connection उघडे ठेवतो. Self-hosted Headscale server साठी inbound ports आवश्यक असतात: control protocol साठी 443, HTTP-01 certificate challenge वापरत असल्यास 80 आणि embedded relay enable केल्यावरच 3478/udp. Plain WireGuard साठी त्याचा UDP listen port, सामान्यतः 51820, server वर तसेच provider चालवत असलेल्या स्वतंत्र network firewall वर उघडा असणे आवश्यक आहे.

या तिन्हीपैकी सर्वात वेगवान कोणते आहे?

Throughput समान असतो, कारण तिन्ही WireGuard द्वारे packets पाठवतात. फरक connection setup आणि path quality मध्ये दिसतो. योग्य Endpoint असलेला Plain WireGuard प्रत्येक वेळी थेट जोडला जातो. Tailscale आणि Headscale बहुतेक वेळा थेट जोडले जातात. Network hole punching block करत असल्यास ते relay कडे वळतात. Relayed path मुळे latency वाढते. मार्ग direct आहे की relayed, हे पाहण्यासाठी tailscale ping <node> वापरा. Tunnel मधील throughput मोजण्यासाठी iperf3 वापरा.