- Tailscale Peer Relays, mevcut DERP sunucularının yerini alabilen, kullanıcıların kendilerinin dağıtıp yönetebildiği yeni bir trafik rölesi özelliği
- Her düğüm, yalnızca tek bir UDP portu açarak röle rolü üstlenebilir ve özellik Tailscale istemcisine gömülü olduğu için kolayca etkinleştirilebilir
- Yüksek hız ve yüksek aktarım kapasitesi sunarak, bulut NAT'inin veya güvenlik duvarlarının arkasında bile doğrudan bağlantıya yakın performans sağlar
- Tüm trafik, WireGuard® tabanlı uçtan uca şifrelemeyi korur ve DERP ile özel DERP'e otomatik geri dönüşü (fallback) destekler
- Şu anda açık beta olarak sunuluyor ve tüm planlarda en fazla 2 ücretsiz Peer Relay kullanılabiliyor
Tailscale Peer Relays'e genel bakış
- Tailscale Peer Relays, Tailscale'in yönetilen DERP sunucularının yerini alabilen, kullanıcı tarafından yönetilen bir trafik rölesi mekanizmasıdır
- Herhangi bir Tailscale düğümü röle olarak yapılandırılabilir ve aynı tailnet içindeki düğümler arasındaki trafiği iletebilir
- Röleler yalnızca bağlı oldukları tailnet içindeki düğümlerin trafiğini iletebilir
- Müşteriler tarafından doğrudan yönetildiği için DERP'e göre daha az aktarım kısıtına sahiptir ve kapalı bulut altyapıları veya güvenlik duvarı ortamlarında yüksek performans sunar
- İlk iş ortağı testlerinde doğrudan bağlantıya yakın aktarım kapasitesi kaydedildi ve mevcut DERP'e kıyasla onlarca kat daha yüksek performans doğrulandı
Hard NAT ortamlarının aşılması
- Tailscale, NAT ortamlarında da mümkün olduğunca doğrudan bağlantıyı (%90'dan fazla) koruyabilmek için gelişmiş NAT traversal teknolojileri uygular
- Ancak bazı bulut ortamlarında doğrudan bağlantı imkansız ya da verimsiz olabilir
- Mevcut DERP, kararlı bağlantı sağlar; ancak QoS kısıtları ve performans sınırları nedeniyle bazı dağıtım ortamlarında zorluklar yaratır
- Peer Relays, performans odaklı bir bağlantı aracı olarak tasarlanmıştır; UDP tabanlı düşük gecikmeli iletişim ve istemciye gömülü yapısı sayesinde dağıtımı kolaydır
- Müşteriler röleleri kendileri konumlandırarak yüksek performanslı ve yüksek esneklikli ağ yapıları kurabilir
Çalışma şekli
- Peer Relay, her iki düğümün de erişebildiği tek bir UDP portunu kullanır
- CLI komutu
tailscale set --relay-server-port ile kolayca etkinleştirilebilir
- Doğrudan bağlantı mümkün değilse, Peer Relay → DERP (yönetilen veya özel) sırasıyla otomatik geri dönüş yapılır
- Tüm bağlantılar WireGuard® şifrelemesiyle korunur
- Güvenlik duvarı istisnalarını en aza indirirken yalnızca tailnet içi trafiğe izin verecek şekilde yapılandırılabilir
- Bölgeler arası ölçeklenebilirlik, ağ arızalarına dayanıklılık ve DERP'e otomatik geri dönüş özelliklerini birlikte destekler
Çeşitli kullanım senaryoları
- Bulut NAT ortamlarında (AWS Managed NAT Gateway vb.) doğrudan bağlanamayan trafiği yüksek hızda iletmek
- Sıkı güvenlik duvarı ortamlarında yalnızca tek bir UDP portu açarak onay sürecini kısaltmak
- DERP ağ yükünü azaltmak ve özel DERP bakım ihtiyacını ortadan kaldırmak
- Kapalı müşteri ağlarına erişimde öngörülebilir uç noktalar üzerinden yalnızca minimum sayıda port açmak
- Gerçek müşteriler, Peer Relay kullanarak yönetilmeyen ağlara erişim, iş ortaklarıyla bağlantı yollarının kontrolü ve VPC peering tabanlı ayrıntılı ağ yapılandırmaları gibi senaryoları hayata geçiriyor
Açık beta ve sunum politikası
- Tailscale Peer Relays, açık beta sürümü olarak hemen kullanılabilir
- Şu anda bazı görünürlük ve hata ayıklama iyileştirmeleri üzerinde çalışılıyor
- İlk iş ortakları kolay dağıtım ve kararlı performansı doğruladı
- Tüm planlarda (ücretsiz dahil) en fazla 2 Peer Relay ücretsiz sunuluyor, ek röleler ise ölçeklenebiliyor
- Daha fazla röle gerektiğinde Tailscale satış ekibiyle iletişime geçilerek kapasite artırılabilir
1 yorum
Hacker News görüşleri
Bu özelliğin gerçekten mantıklı olduğunu düşünüyorum
Doğrudan bağlantı mümkün olmadığında yalnızca ara düğüm kullanan bir yapı ve trafik uçtan uca şifreli
Kendi derp sunucunu çalıştırmaya benziyor ama port açmak gerekmiyor; ayrıca Tailscale’in röle kullanımını azaltarak bant genişliği maliyetini de düşürüyor
Yalnız, neden iki veya daha fazla röle için ücret alındığını merak ediyorum
Aksi halde zaten en başta tailscale’e ihtiyacınız olmayabilir
İstisna olarak, iki istemcinin röleye erişebildiği ama birbirine doğrudan bağlanamadığı durumlar olabilir
Eskiden tinc bu sorunu zaten çözmüştü
Tüm düğümler röle görevi görebiliyor ve merkezi sunucu olmadan gerçek bir mesh ağ gibi çalışıyor
Bunu yeniden uygulamaktansa wireguard tabanlı olarak bellek güvenli bir dile taşımak daha iyi olurdu diye düşünüyorum
SSH bağlantısından hemen sonra yolun koptuğu durumlar da çok oluyor
Trafik röle düğümünde çözülüp yeniden şifrelendiği için uçtan uca şifreleme için deneysel bir protokol kullanmak gerekiyor
cjdns protokolü tabanında yeniden yazmak isterdim ama kolay değil
Tailscale’in yeni Peer Relay özelliği, ZeroTier’ın eskiden yaptığı şeye benziyor
Bunu “Tailscale’e özgü benzersiz bir özellik” diye sunmak zor ve kullanıcı başı ücrete ek olarak ekstra ücretlendirme de fazla geliyor
Onun yerine kendi şifreleme yöntemi, tek iş parçacıklı performans düşüşü ve yavaş geliştirme hızı sorunluydu
Birçok alternatif denedim ama özellik ve performansı birlikte Tailscale kadar sunan hâlâ yok
Bu, “FTP varken neden Dropbox kullanıyorsun?” türü bir kıyas gibi geliyor
Harici IPv4/IPv6 adreslerinin doğrudan belirtilebilip belirtilemeyeceğini merak ediyorum
Çünkü giden ve gelen trafik farklı adresler kullanabiliyor ya da birden fazla internet bağlantısı adresi içinde güvenlik duvarının izin verdiği yalnızca bazıları olabiliyor
Geçen hafta headscale ve split horizon SSL kurdum ama sonunda yalnızca DERP’in mümkün olduğunu öğrendim
Yerel ağda UDP portunu doğrudan açmanın daha iyi olduğunu düşünüyorum
Wireguard istemcisinin güvenliği yeterince doğrulandıysa bu daha rahat olur
Doğrudan Wireguard portunu mu açmaya çalıştınız, yoksa Tailscale portundan mı söz ediyorsunuz diye sormak isterim
DERP yerine bu özellik kullanılırsa tarayıcıda çalışmaz
Çünkü yerel UDP tabanlı
İleride WebTransport ile uygulanıp uygulanamayacağını merak ediyorum
Ama NAT traversal sorununu çözmüyor
Iroh’un QAD ilerleyişini de dikkatle takip ediyorum
Her şey yerine oturursa çok daha sihir gibi bir ağ olabilir
Bir sonraki adımda tüm tailscale istemcileri otomatik olarak yönlendirme istekleri kabul etse ve mesh ağ kopmadan kendi kendini onarsa nasıl olur diye düşünüyorum
Ancak asıl mesele, başkalarının trafiğini aktarmaya izin verilip verilmeyeceğidir
Tailscale ile servisler arasında bağlantı kurulabiliyor ama diyelim ki Tailscale kesintisi yaşanırsa, kendi servislerimin de birbiriyle iletişimi kesilir mi diye merak ediyorum
tailscale’e erişilemediği için yeniden bağlanmak da mümkün olmadı
Bu yüzden artık headscale’i kendim kurmayı planlıyorum
Aynı yerel LAN’daki cihazların bile iletişim kuramaması biraz saçmaydı
Hafta sonu boyunca Kubernetes Operator için geçici bir çözüm yaptım, ama artık bu özellik sayesinde hepsini kaldırabileceğim
Gerçekten bravo
Bu özelliğin kullanım senaryosunu merak ediyordum
Bir SaaS ürününün müşteri sistemindeki verilere ihtiyaç duyduğu durumlarda, müşterinin veriyi röle üzerinden açarak entegrasyon sağlaması için kullanılıyor gibi görünüyor
Yine de kimlik doğrulama ve loglama gibi işler için yazılım gerekecek gibi duruyor
NAT aşma her zaman mümkün olmadığı için DERP sık kullanılıyor ama yavaş
Artık ağ içinde bağlantısı iyi olan bir peer’i röle olarak seçip daha hızlı kullanabiliyorsunuz
Yeni bir kullanım senaryosundan çok, mevcut DERP’in performans odaklı geliştirilmiş sürümü
Geleneksel hub-and-spoke yapı yerine, mümkün olduğunca tüm düğümlerin doğrudan UDP/IP ile bağlandığı bir P2P yapıyı hedefliyor
Ancak NAT ve güvenlik duvarları yüzünden doğrudan bağlantı çoğu zaman mümkün olmuyor ve DERP buna aracılık ediyor
DERP yavaştı ve kullanıcıların performansı iyileştirmek için yapabileceği bir şey yoktu; bu yeni Peer Relay ile artık kendi rölenizi çalıştırabiliyorsunuz
Konumu iyi seçerseniz gecikmeyi de azaltabilirsiniz
Elbette bu her kullanıcı için gerekli bir özellik değil