1 puntos por GN⁺ 2025-04-03 | 1 comentarios | Compartir por WhatsApp

Port de Tailscale a Plan 9

  • Introducción

    • Tailscale ahora funciona en Plan 9. No es una broma del 1 de abril, sino un hecho real.
    • Durante el proceso de portar Tailscale a Plan 9 hubo varios desafíos técnicos y soluciones.
  • Entendiendo Plan 9

    • Plan 9 es un sistema operativo único, y durante el proceso de portar Tailscale fue posible aprender muchas cosas nuevas.
    • El soporte de Plan 9 en el compilador de Go fue presentando problemas con el tiempo, y resolverlos requirió mucho esfuerzo.
  • Desafíos técnicos

    • Fue necesario modificar el kernel para resolver problemas con el soporte de SSE en Plan 9.
    • Debido a problemas de IPC se produjeron errores de memoria, y para resolverlos se usó TCP de localhost.
    • Para mejorar el entorno de desarrollo, Russ Cox creó un repositorio de GitHub que ofrece el código fuente de Plan 9 y binarios precompilados.
  • Redes y enrutamiento

    • Tailscale llegó a funcionar en Plan 9 con el modo "userspace networking", aunque esta no es una solución ideal.
    • Se implementó una tabla de enrutamiento manipulando las rutas de red de Plan 9.
  • Funciones adicionales y mejoras

    • Se añadió soporte para Tailscale SSH para que el servidor SSH autentique usando la identidad de Tailscale.
    • Se implementó la función MagicDNS para poder referirse fácilmente a los pares de la red de Tailscale desde Plan 9.
    • Se resolvieron los problemas de tiempo de Plan 9 para evitar fallos en el netstack de gVisor.
  • Dirección futura

    • Hace falta probar que Tailscale funcione también en otros forks de Plan 9 (9legacy, 9front).
    • Se necesita soporte de 64 bits y la implementación de funciones adicionales.
  • Conclusión

    • El port de Tailscale a Plan 9 fue una experiencia divertida y educativa, y contribuyó a mejorar el soporte de Plan 9 en Go.
    • Se espera que la comunidad de Plan 9 pueda retomar este proyecto y seguir desarrollándolo.

1 comentarios

 
GN⁺ 2025-04-03
Comentarios en Hacker News
  • Está listo para responder preguntas en cualquier momento
  • Varias personas estaban hablando sobre este tema en Google Meet en ese momento (con el tiempo, todas se fueron)
  • La publicación anterior del 1 de abril era sobre una broma de Tailscale
  • La dedicación de Russ Cox a esta broma es legendaria
  • Si te perdiste la publicación original, puedes probarlo en una imagen de v86
  • Puedes iniciar tailscaled y tailscale dentro de la VM. Puede tardar en aparecer en línea debido a la disponibilidad limitada del proxy
  • Para iniciar una terminal, puedes mantener presionada alt, hacer clic derecho y seleccionar Nuevo, soltar alt y luego ajustar el tamaño de la ventana de la terminal arrastrando con clic derecho
  • Estoy pensando seriamente que ojalá existiera una versión empresarial de Plan 9. Escribo la mayoría de mis scripts en rc, lo cual está bien porque mis colegas usan nix, así que pueden incorporarlo automáticamente con dirnev
  • Se está realizando un webinar en Google Meet
  • Me gustó la premisa de la broma, pero a medida que seguía la explicación, de pronto me deprimí. Hay demasiada complejidad y demasiadas cosas rotas. Si tanto trabajo adicional para crear un túnel de red hubiera sido la broma, habría sido divertido
  • No esperaba que parchearan el kernel de Plan 9 para hacerlo funcionar
  • Amo Plan 9. Mi proyecto para la jubilación es crear mi propio sistema operativo usando muchos de sus principios
  • Reservé el nombre "chaos10" para este proyecto. No tendrá un plan, como SerenityOS
  • Plan 9 obtuvo Tailscale antes que un navegador. De alguna manera, eso tiene sentido
  • Rob Pike está desconsolado por esta impactante traición