SSD Nodes Learn RAM 8GB — $66/tahun
Panduan Matt ConnorOleh Matt Connor · Diperbarui 2026-08-01

WireGuard vs Tailscale vs Headscale: Mana yang Tepat?

Bandingkan WireGuard, Tailscale, dan Headscale: pahami fungsi control plane, biaya koordinasi, privasi daftar node, serta pilihan tepat untuk VPS Anda.

WireGuard vs Tailscale: jawaban singkat

WireGuard vs Tailscale bukan pilihan antara dua protokol, karena Tailscale adalah WireGuard. Tailscale menggunakan enkripsi dan tunnel yang sama, lalu menambahkan control plane: server koordinasi yang menukarkan public key, membagikan alamat, membuat lubang melalui NAT (network address translation), dan menerapkan kebijakan akses. Anda memilih seberapa banyak koordinasi tersebut yang ingin Anda kelola sendiri.

Ada tiga jawaban yang tepat. Gunakan WireGuard biasa jika Anda memiliki satu server dan beberapa client yang semuanya terhubung ke server tersebut. Gunakan Tailscale jika Anda ingin setiap mesin dapat terhubung ke mesin lainnya tanpa harus memelihara file konfigurasi. Gunakan Headscale jika Anda menginginkan mesh tersebut, tetapi tidak ingin pihak ketiga menyimpan daftar node.

Manfaat nyata yang diberikan control plane

WireGuard biasa tidak memiliki mekanisme discovery. Setiap peer berupa blok teks yang Anda tulis secara manual: public key, baris AllowedIPs, dan Endpoint jika peer tersebut dapat dijangkau. Menambahkan satu mesin ke jaringan yang terdiri dari sepuluh mesin berarti mengedit sepuluh file konfigurasi, karena setiap sisi memerlukan key milik sisi lainnya. Karena itu, hampir semua deployment WireGuard yang di-host sendiri menggunakan model hub-and-spoke: satu server dengan IP publik, dan client yang hanya berkomunikasi dengannya.

Control plane menghilangkan kebutuhan untuk mengedit konfigurasi tersebut. Setiap node mendaftar sekali, menerima alamat dari rentang 100.64.0.0/10 CGNAT (carrier grade NAT), lalu menerima public key dari node yang boleh dijangkaunya. Tunnel tetap merupakan koneksi WireGuard langsung antara dua peer, dan traffic Anda tidak pernah melewati server koordinasi. Server hanya menyimpan metadata: node yang terdaftar, key miliknya, serta node yang boleh saling berkomunikasi.

Ada tiga manfaat utama.

NAT traversal. Dua laptop di balik dua router rumah tidak memiliki IP publik yang menghubungkan keduanya. Tailscale menggunakan STUN (session traversal utilities for NAT) untuk menemukan alamat dan port eksternal masing-masing sisi. Setelah itu, kedua sisi mengirim packet pada saat yang hampir sama, sehingga setiap router terlebih dahulu melihat flow keluar dan menerima balasannya. Jika cara ini gagal, traffic beralih ke relay DERP, yaitu relay terenkripsi yang dijalankan oleh Tailscale. Data Anda tetap terenkripsi secara end-to-end melalui relay tersebut karena relay tidak pernah memegang key. Jalankan tailscale status. Setiap baris peer akan menampilkan direct atau relay. Jalankan tailscale netcheck untuk melihat relay terdekat dan mengetahui apakah jaringan Anda mengizinkan UDP.

Rotasi key dengan masa berlaku. Key WireGuard tidak pernah kedaluwarsa. Key yang diterbitkan tiga tahun lalu akan tetap berfungsi selamanya, kecuali Anda menghapus blok peer secara manual. Sebaliknya, Tailscale menetapkan masa berlaku untuk node key. Per Juli 2026, masa berlaku default pada tailnet baru adalah 180 hari. Mesin yang tidak melakukan autentikasi ulang akan berhenti terhubung. Anda dapat menonaktifkan masa berlaku per perangkat untuk server atau subnet router yang tidak akan memiliki pengguna untuk login.

Policy, bukan routing. Pada WireGuard biasa, AllowedIPs berfungsi sebagai routing table sekaligus access control list. Karena itu, aturan seperti "alice boleh menjangkau database" harus dinyatakan sebagai rentang IP. Tailscale menyimpan policy file terpisah yang aturannya dapat menyebut user, group, dan tag. Aturan dapat menyatakan bahwa tag:laptop boleh menjangkau tag:db pada port 5432 dan tidak boleh menjangkau yang lain. Aturan tersebut tetap berlaku meskipun mesin memperoleh alamat baru.

Biaya yang Anda tanggung untuk control plane

Server koordinasi mengetahui jaringan Anda. Server ini menyimpan public key setiap node, nama setiap node, alamat yang dibagikan, dan kebijakan jaringan. Pada Tailscale yang di-host, server ini dikelola oleh perusahaan di luar kendali Anda. Mereka tidak dapat membaca paket Anda karena private key WireGuard tetap berada di mesin Anda. Namun, mereka dapat melihat bentuk jaringan Anda. Kemampuan Anda untuk terhubung juga bergantung pada ketersediaan layanan mereka dan status akun Anda yang tetap baik.

Ada biaya kedua yang mudah terlewatkan. Tailscale berjalan sebagai daemon di setiap mesin. Karena itu, Anda harus terus memasang patch pada software tersebut di setiap mesin. Plain WireGuard pada Ubuntu 24.04 adalah modul kernel yang disertakan bersama distribusi dan diperbarui bersama kernel.

Biaya ketiga adalah penagihan. Per Juli 2026, paket Personal gratis dengan perangkat tanpa batas untuk maksimal 6 pengguna, Standard berharga $8 per pengguna per bulan, dan Premium berharga $18 per pengguna per bulan. Rumah tangga tetap gratis. Tim yang terdiri dari sepuluh orang tidak.

Kapan WireGuard biasa merupakan pilihan yang tepat

Pilih WireGuard biasa jika topologinya benar-benar berbentuk hub dan spoke. Gunakan satu VPS dengan IP publik dan tiga atau empat perangkat yang terhubung ke VPS tersebut, tanpa persyaratan agar perangkat-perangkat itu dapat saling menjangkau. Konfigurasinya cukup ditampilkan pada satu layar. Tidak ada daemon yang perlu diperbarui, tidak ada akun yang dapat hilang, dan tidak ada layanan eksternal di antara Anda dan server.

WireGuard juga merupakan pilihan yang tepat jika Anda ingin memahami lapisan yang menjadi dasar semua solusi lainnya. Menghosting sendiri VPN WireGuard di VPS membahas pembuatan key, wg0.conf, penerusan IP, NAT, dan kegagalan handshake. Semua mekanisme tersebut tetap berjalan di balik tailnet. Jika Anda masih mempertimbangkan pilihan yang lebih lama, WireGuard dibandingkan OpenVPN membahas empat kasus ketika OpenVPN tetap memiliki keunggulan.

Instalasinya singkat:

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

WireGuard biasa mulai tidak praktis ketika setiap perangkat harus dapat menjangkau semua perangkat lainnya. Full mesh yang terdiri atas N node memerlukan N kali N dikurangi satu blok peer. Pada enam perangkat, terdapat tiga puluh blok yang harus disinkronkan secara manual. Entri AllowedIPs yang terduplikasi dapat secara diam-diam mengalihkan traffic dari peer yang lebih dahulu memiliki entri tersebut, tanpa menampilkan kesalahan apa pun.

Saat Tailscale merupakan pilihan yang tepat

Pilih Tailscale jika mesin sering berpindah jaringan. Contohnya, laptop yang terhubung ke jaringan hotel, ponsel yang menggunakan data seluler, atau server rumahan di belakang router yang tidak Anda kendalikan. Kasus tersebut sulit ditangani oleh WireGuard biasa karena kedua sisi tidak memiliki endpoint publik yang stabil untuk dicantumkan di Endpoint.

Instal client dengan satu perintah dari installer resmi:

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

tailscale up menampilkan URL. Buka URL tersebut, masuk, lalu mesin akan bergabung. Anda tidak perlu menyalin key atau membuka port masuk karena daemon membuat koneksi keluar ke server koordinasi dan mempertahankannya. Karena itu, node Tailscale juga dapat berfungsi pada jaringan yang firewall-nya sama sekali tidak Anda kendalikan.

Dua pengaturan berikut menangani sebagian besar kebutuhan setelah itu. Subnet router mengiklankan seluruh LAN ke dalam jaringan sehingga Anda tidak perlu menginstal client di setiap perangkat:

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

Rute tersebut tetap tidak aktif sampai Anda menyetujuinya di konsol admin. Hal ini memang disengaja: node tidak dapat memasukkan rute ke jaringan Anda tanpa izin. Client Linux juga memerlukan sudo tailscale set --accept-routes karena Linux tidak menerima rute yang diiklankan secara default. Jadi, rute yang tampak telah disetujui di sisi server tetap tidak berfungsi pada laptop Linux sampai Anda menetapkan pengaturan tersebut.

Exit node mengirimkan seluruh traffic client melalui satu mesin. Inilah perilaku full tunnel yang biasanya dimaksud orang ketika menyebut "VPN":

sudo tailscale set --advertise-exit-node

Saat Headscale merupakan pilihan yang tepat

Headscale adalah implementasi sumber terbuka untuk server koordinasi dan berjalan pada VPS milik Anda. Klien Tailscale resmi diarahkan ke server tersebut, bukan ke layanan yang di-host:

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

Semua hal pada jalur data tetap sama. Protokolnya tetap WireGuard dan koneksi tetap berlangsung langsung antar-peer jika jaringan mengizinkannya. Perubahannya adalah daftar node, kunci, dan kebijakan disimpan dalam file SQLite pada disk milik Anda. Pihak luar tidak dapat melihat bentuk jaringan Anda, menonaktifkan akun Anda, atau menagih biaya per pengguna.

Namun, Anda harus melakukan pekerjaan operasional yang nyata. Anda menjalankan layanan HTTPS publik, sehingga memerlukan nama DNS, sertifikat, dan reverse proxy yang meneruskan upgrade WebSocket dengan benar. Anda bertanggung jawab atas ketersediaannya. Jika server koordinasi tidak aktif, node baru tidak dapat mendaftar dan node yang sudah ada tidak dapat mengetahui perubahan. Headscale juga masih di bawah versi 1.0, dan rilis minornya telah memuat perubahan yang tidak kompatibel. Karena itu, baca changelog sebelum setiap upgrade. Menjalankan Headscale sebagai server kontrol Tailscale Anda sendiri membahas instalasi, config.yaml, kunci preauth, dan port yang harus dibuka.

Ada satu hal yang sering baru disadari setelah terlambat. Headscale tidak dilengkapi jaringan relay global milik Tailscale. Jika dua peer tidak dapat terhubung secara langsung, Anda harus mengaktifkan relay tertanam pada server sendiri atau mengarahkan konfigurasi ke relay lain. Relay tersebut berada pada satu server di satu region, bukan pada armada global. Peer yang berada di belahan dunia lain akan merasakan perbedaannya.

Cara menentukan dalam satu langkah

Tanyakan berapa banyak mesin yang harus saling terhubung. Jika jawabannya adalah semua mesin hanya perlu berkomunikasi dengan server, WireGuard biasa menggunakan lebih sedikit perangkat lunak untuk hasil yang sama.

Tanyakan apakah mesin-mesin tersebut memiliki alamat publik yang stabil. Jika sebagian besar mesin berada di belakang NAT yang tidak Anda kendalikan, Anda memerlukan control plane, karena hole punching merupakan bagian yang sulit dan tidak layak dibangun ulang.

Tanyakan siapa yang diizinkan mengetahui topologi jaringan Anda. Jika jawabannya tidak mencakup perusahaan eksternal, atau jumlah pengguna membuat penagihan per pengguna menjadi mahal, jalankan Headscale dan terima bahwa Anda harus mengoperasikan control server.

Anda dapat mengubah pilihan dengan mudah. Karena data plane menggunakan protokol yang sama pada ketiga opsi, perpindahan dari WireGuard biasa ke mesh terkoordinasi hanya memerlukan instalasi client, bukan perancangan ulang. Perpindahan dari Tailscale ke Headscale hanya memerlukan pendaftaran ulang setiap node ke login server yang berbeda.

Hal yang Tidak Disediakan oleh Ketiganya

Tidak satu pun dari ketiganya merupakan firewall. Tunnel menentukan paket yang diteruskan, bukan layanan yang mendengarkan. Server yang dapat dijangkau melalui tunnel tetap dapat dijangkau dari internet melalui port apa pun yang Anda biarkan terbuka. Karena itu, pastikan aturan firewall UFW di VPS tetap menjalankan fungsinya. File kebijakan Tailscale membatasi node lain yang dapat menjangkau server, tetapi tidak memengaruhi antarmuka publik.

Tidak satu pun dari ketiganya menyediakan autentikasi per layanan. Tidak satu pun juga menyediakan jejak audit tentang tindakan pengguna setelah terhubung. Perlakukan ketiganya sebagai lapisan transport, lalu terapkan pemeriksaan login di aplikasi.

FAQ

Apakah Tailscale hanya WireGuard dengan langkah tambahan?

Tailscale menggunakan protokol WireGuard untuk jalur data. Karena itu, enkripsi dan tunnel-nya sama. Tailscale menambahkan koordinasi: pertukaran key, penetapan alamat, traversal NAT dengan relay STUN dan DERP, kedaluwarsa key, serta file kebijakan yang mencantumkan pengguna, bukan rentang IP. Pada WireGuard biasa, semua bagian tersebut harus Anda kelola sendiri. Bagian-bagian ini menjadi sulit ketika mesin berpindah-pindah jaringan.

Apakah traffic saya melewati server Tailscale?

Biasanya tidak. Setelah server koordinasi memperkenalkan kedua peer, keduanya biasanya terhubung secara langsung, dan tailscale status menampilkan direct pada baris peer tersebut. Jika jalur langsung tidak dapat dibuat, traffic dialihkan ke relay DERP dan barisnya menampilkan relay. Dalam kondisi ini, relay tetap hanya meneruskan paket terenkripsi dan tidak menyimpan private key WireGuard Anda. Karena itu, relay tidak dapat membaca isinya. Jalankan tailscale netcheck untuk memeriksa apakah jaringan Anda memblokir UDP yang diperlukan koneksi langsung.

Dapatkah saya menggunakan Headscale dengan aplikasi Tailscale resmi?

Ya. Headscale menggunakan control protocol yang sama, sehingga client resmi dapat bergabung dengan sudo tailscale up --login-server https://headscale.example.com. Aplikasi desktop dan mobile juga dapat diarahkan ke login server khusus. Namun, letak pengaturannya berbeda pada setiap platform, dan aplikasi mobile adalah yang paling mungkin memerlukan versi tertentu. Uji satu ponsel sebelum memigrasikan seluruh jaringan.

Apakah saya tetap perlu membuka port untuk Tailscale atau Headscale?

Client Tailscale tidak memerlukan port masuk karena client tersebut membuat koneksi keluar ke server koordinasi dan mempertahankan koneksi itu tetap terbuka. Server Headscale yang di-host sendiri memerlukan port masuk: 443 untuk control protocol, 80 jika Anda menggunakan tantangan sertifikat HTTP-01, dan 3478/udp hanya jika Anda mengaktifkan relay bawaan. WireGuard biasa memerlukan port listen UDP-nya, biasanya 51820, agar terbuka pada server dan pada firewall jaringan terpisah yang disediakan provider Anda.

Mana yang paling cepat di antara ketiganya?

Throughput-nya sama karena ketiganya memindahkan paket dengan WireGuard. Perbedaannya terlihat pada waktu penyiapan koneksi dan kualitas jalur. WireGuard biasa dengan Endpoint yang benar selalu terhubung secara langsung. Tailscale dan Headscale biasanya terhubung secara langsung, lalu beralih ke relay jika jaringan memblokir hole punching. Jalur melalui relay menambah latensi. Ukur jalur Anda dengan tailscale ping <node>, yang melaporkan apakah rutenya langsung atau melalui relay, atau dengan iperf3 melalui tunnel.