Ang proyekto ng Headscale ay bumubuo ng isang bukas na server para sa network ng VPN na ipinamahagi ng Tailscale

Ang proyektong Headscale ay bumubuo ng isang bukas na pagpapatupad ng bahagi ng server ng Tailscale VPN network, na nagbibigay-daan sa iyong lumikha ng mga VPN network na katulad ng Tailscale sa sarili mong mga pasilidad, nang hindi nakatali sa mga serbisyo ng third-party. Ang code ng headscale ay nakasulat sa Go at ipinamahagi sa ilalim ng lisensya ng BSD. Ang proyekto ay binuo ni Juan Font ng European Space Agency.

Binibigyang-daan ka ng Tailscale na pagsamahin ang isang di-makatwirang bilang ng mga heograpikal na dispersed host sa isang network, na binuo tulad ng isang mesh network, kung saan ang bawat node ay direktang nakikipag-ugnayan sa iba pang mga node (P2P) o sa pamamagitan ng mga kalapit na node, nang hindi nagpapadala ng trapiko sa pamamagitan ng mga sentralisadong panlabas na server ng VPN provider. Sinusuportahan ang ACL-based na access at kontrol sa ruta. Upang magtatag ng mga channel ng komunikasyon kapag gumagamit ng mga tagapagsalin ng address (NAT), ibinibigay ang suporta para sa mga mekanismo ng STUN, ICE at DERP (katulad ng TURN, ngunit batay sa HTTPS). Kung na-block ang channel ng komunikasyon sa pagitan ng ilang partikular na node, maaaring muling buuin ng network ang pagruruta upang idirekta ang trapiko sa iba pang mga node.

Ang proyekto ng Headscale ay bumubuo ng isang bukas na server para sa network ng VPN na ipinamahagi ng Tailscale

Naiiba ang Tailscale sa proyekto ng Nebula, na nilayon din para sa paglikha ng mga distributed VPN network na may mesh routing, sa pamamagitan ng paggamit ng Wireguard protocol upang ayusin ang paglipat ng data sa pagitan ng mga node, habang ginagamit ng Nebula ang mga development ng Tinc project, na gumagamit ng AES-256 algorithm para i-encrypt ang mga packet. -GSM (Gumagamit ang Wireguard ng ChaCha20 cipher, na sa mga pagsubok ay nagpapakita ng mas mataas na throughput at kakayahang tumugon).

Ang isa pang katulad na proyekto ay binuo nang hiwalay - Innernet, kung saan ang Wireguard protocol ay ginagamit din para sa pagpapalitan ng data sa pagitan ng mga node. Hindi tulad ng Tailscale at Nebula, ang Innernet ay gumagamit ng ibang access separation system, hindi nakabatay sa mga ACL na may mga tag na nakatali sa mga indibidwal na node, ngunit sa paghihiwalay ng mga subnet at ang paglalaan ng iba't ibang hanay ng mga IP address, tulad ng sa mga regular na Internet network. Bilang karagdagan, sa halip na wikang Go, ginagamit ng Innernet ang wikang Rust. Tatlong araw na ang nakakaraan, ang Innernet 1.5 update ay nai-publish na may pinahusay na NAT traversal support. Mayroon ding proyekto ng Netmaker na nagpapahintulot sa iyo na pagsamahin ang mga network na may iba't ibang topologies gamit ang Wireguard, ngunit ang code nito ay ibinibigay sa ilalim ng SSPL (Server Side Public License), na hindi bukas dahil sa pagkakaroon ng mga kinakailangan sa diskriminasyon.

Ang Tailscale ay ipinamamahagi gamit ang isang freemium na modelo, ibig sabihin ay libreng paggamit para sa mga indibidwal at may bayad na access para sa mga negosyo at team. Ang mga bahagi ng kliyente ng Tailscale, maliban sa mga graphical na application para sa Windows at macOS, ay binuo bilang mga bukas na proyekto sa ilalim ng lisensya ng BSD. Ang software ng server na tumatakbo sa panig ng Tailscale ay pagmamay-ari, na nagbibigay ng pagpapatunay kapag kumokonekta ng mga bagong kliyente, nagko-coordinate ng pangunahing pamamahala, at nag-aayos ng komunikasyon sa pagitan ng mga node. Tinutugunan ng proyekto ng Headscale ang pagkukulang na ito at nag-aalok ng independiyente, bukas na pagpapatupad ng mga bahagi ng backend ng Tailscale.

Ang proyekto ng Headscale ay bumubuo ng isang bukas na server para sa network ng VPN na ipinamahagi ng Tailscale

Pinangangasiwaan ng Headscale ang mga function ng pagpapalitan ng mga pampublikong key ng node, at ginagawa rin ang mga operasyon ng pagtatalaga ng mga IP address at pamamahagi ng mga routing table sa pagitan ng mga node. Sa kasalukuyang anyo nito, ipinapatupad ng Headscale ang lahat ng pangunahing kakayahan ng server ng pamamahala, maliban sa suporta para sa MagicDNS at Smart DNS. Sa partikular, ang mga pag-andar ng pagrerehistro ng mga node (kabilang ang sa pamamagitan ng web), pag-aangkop sa network sa pagdaragdag o pag-alis ng mga node, paghihiwalay ng mga subnet gamit ang mga namespace (maaaring malikha ang isang VPN network para sa ilang mga gumagamit), pag-aayos ng nakabahaging pag-access ng mga node sa mga subnet sa iba't ibang mga namespace. , kontrol sa pagruruta (kabilang ang pagtatalaga ng mga exit node upang ma-access ang labas ng mundo), pag-access sa paghihiwalay sa pamamagitan ng mga ACL, at pagpapatakbo ng serbisyo ng DNS.

Pinagmulan: opennet.ru

Magdagdag ng komento