Plan 9'a Tailscale port etme çalışması
(tailscale.com)Tailscale'in Plan 9'a port edilmesi
-
Giriş
- Tailscale artık Plan 9 üzerinde çalışıyor. Bu, 1 Nisan şakası değil; gerçekten oldu.
- Tailscale'i Plan 9'a port etme sürecinde çeşitli teknik zorluklar ve bunlara yönelik çözümler ortaya çıktı.
-
Plan 9'u anlamak
- Plan 9, kendine özgü bir işletim sistemi ve Tailscale'i buna port etme sürecinde birçok yeni şey öğrenildi.
- Go derleyicisinin Plan 9 desteğinde zaman içinde sorunlar oluşmuştu ve bunları çözmek için ciddi emek harcandı.
-
Teknik zorluklar
- Plan 9'un SSE desteği sorununu çözmek için çekirdekte değişiklik yapılması gerekti.
- IPC sorunları nedeniyle bellek hataları oluştu ve bunu çözmek için localhost TCP kullanıldı.
- Geliştirme ortamını iyileştirmek için Russ Cox, Plan 9 kaynak kodu ile önceden derlenmiş ikilileri sağlayan bir GitHub deposu oluşturdu.
-
Ağ ve yönlendirme
- Tailscale'in "userspace networking" modu sayesinde Plan 9 üzerinde çalışması sağlandı, ancak bu ideal bir çözüm değil.
- Plan 9'un ağ yolları üzerinde oynanarak bir yönlendirme tablosu uygulandı.
-
Ek özellikler ve iyileştirmeler
- Tailscale SSH desteği eklendi; böylece SSH sunucusu kimlik doğrulama için Tailscale kimliğini kullanabiliyor.
- MagicDNS özelliği uygulanarak Plan 9'da Tailscale ağındaki eşlere kolayca erişilmesi sağlandı.
- Plan 9'un zamanla ilgili sorunları giderilerek gVisor'un netstack'inde oluşan çökme durumları önlendi.
-
Gelecek yönü
- Tailscale'in Plan 9'un diğer çatallarında da (9legacy, 9front) çalıştığını doğrulamak için testlere ihtiyaç var.
- 64 bit desteği ve ek özelliklerin hayata geçirilmesi gerekiyor.
-
Sonuç
- Tailscale'in Plan 9'a port edilmesi eğlenceli ve öğretici bir deneyim oldu; ayrıca Go'nun Plan 9 desteğini geliştirmeye katkı sağladı.
- Bu projenin Plan 9 topluluğu tarafından devralınıp daha da geliştirilebilmesi umuluyor.
1 yorum
Hacker News görüşleri
tailscaledvetailscalebaşlatılabilir. Proxy kullanılabilirliği sınırlı olduğundan çevrimiçi duruma gelmesi zaman alabiliralttuşuna basıp sağ tıklayın, Yeni seçeneğini seçin, ardındanalttuşunu bırakıp sağ tıklayıp sürükleyerek terminal penceresinin boyutunu ayarlayabilirsinizrcile yazıyorum; ekip arkadaşlarım nix kullandığı için bu,dirnevüzerinden otomatik olarak içeri alınabildiğinden sorun olmuyor