El prototipo de la app SingLinkVPN ya es de código abierto

By SingLinkVPN Editorial Team2026-11-12Actualizaciones del producto6 min de lectura
El prototipo de la app SingLinkVPN ya es de código abierto
Contents

Hoy SingLinkLabs, el equipo detrás de SingLinkVPN, ha publicado en GitHub el código fuente del prototipo de primera generación de la app SingLinkVPN bajo la licencia Apache-2.0. Es una app VPN pensada para el gran público, para Windows, macOS, Android e iOS, creada a partir de una sola base de código sobre el protocolo SingLink, que también acaba de publicarse como código abierto.

Se publica junto con el propio protocolo: consulta el protocolo SingLink ya es de código abierto. Juntos muestran cómo encajan un protocolo VPN abierto y un cliente completo, desde el botón de conexión hasta los paquetes cifrados.

Repositorio: SingLinkLabs / singlink-vpn-app · Estado: prototipo de primera generación · Licencia: Apache-2.0 · Tecnologías: Flutter (Dart) para la interfaz, Go para el núcleo

Esta no es la app que descargas de nuestra web

Las apps oficiales de SingLinkVPN que descargas de nuestra web y de las tiendas de aplicaciones son productos distintos. Funcionan con nuestros protocolos de producción, entre ellos SingLink 2.0, y su código fuente principal no forma parte de esta publicación. Para los usuarios actuales no cambia nada.

El prototipo es un cliente de referencia para el protocolo abierto SingLink. Solo se conecta a servidores que hablan ese protocolo y no tiene inicio de sesión con cuenta: tú mismo añades los servidores pegando un enlace de servidor o importándolo desde el portapapeles. No está publicado en ninguna tienda de aplicaciones.

Qué hace la app

  • Conectar y desconectar con un toque mediante un gran botón redondo que muestra tres estados: sin conectar, conectando y conectado.
  • Estado de protección («Not protected» o «Protected») y un temporizador de conexión.
  • Tu IP: tras conectarte, la app muestra la dirección IP de salida que ven los sitios web.
  • Elegir ubicación: los servidores aparecen con la bandera de su país, con «Quick connect (auto)» arriba del todo. Si cambias de ubicación estando conectado, la app se reconecta automáticamente.
  • Latencia honesta: solo se muestran valores medidos. Los servidores que no se han medido muestran «—» en lugar de un número inventado.
  • Velocidad en directo: velocidad de descarga y de subida, además de los datos usados en la sesión actual.
  • Mensajes de error claros que indican qué hacer a continuación, con los detalles técnicos a un toque.
  • Modo claro y oscuro, según el ajuste del sistema.

Dos modos de conexión

En los teléfonos, una VPN para todo el dispositivo. Android usa el VpnService del sistema e iOS una Network Extension. El tráfico de todas las apps pasa por el túnel, y las consultas DNS también se hacen dentro de él.

En los ordenadores, el modo proxy del sistema. Al conectarte, la app configura el proxy del sistema y restaura tus ajustes anteriores cuando te desconectas o la cierras. Si la app se cierra a la fuerza mientras está conectada, los restaura la próxima vez que se inicia. Los navegadores y la mayoría de las apps siguen el proxy del sistema; algunos programas que ignoran los ajustes de proxy no lo hacen. Una VPN a nivel de paquetes para escritorio (una Network Extension en macOS, Wintun en Windows) es el próximo paso previsto.

Cómo está construida

  • Una sola base de código Flutter genera las cuatro apps, con la misma interfaz en todas las plataformas. La interfaz está en inglés.
  • Un núcleo en Go contiene el protocolo SingLink y se compila como biblioteca nativa para cada plataforma, a la que la app llama directamente.
  • En los teléfonos, el núcleo añade la pila de red en espacio de usuario gVisor de Google (Apache-2.0), que convierte todo el tráfico del dispositivo en conexiones SingLink.
  • Escrita desde cero. Aparte de la plantilla vacía que Flutter genera para un proyecto nuevo, todo el código es nuevo. No se ha tomado código, iconos ni imágenes de otras apps VPN.

En qué punto está cada plataforma

  • macOS 13 o posterior (Apple silicon): modo proxy del sistema. Compilada y probada con una conexión real.
  • Android 7 o posterior: VPN para todo el dispositivo. El APK está compilado y se probó con una conexión real en el emulador de Android.
  • iOS 15 o posterior: VPN para todo el dispositivo. Se compila y se ejecuta en el simulador de iOS; el simulador no puede crear un túnel VPN, y para ejecutarla en un iPhone real hace falta una cuenta de Apple Developer.
  • Windows 10 y 11 (x64): modo proxy del sistema. La biblioteca del núcleo está compilada; la app en sí tiene que compilarse en Windows, y el repositorio incluye un flujo de trabajo de GitHub Actions que lo hace.

Limitaciones, con franqueza

  • Es un prototipo. Está pensado para desarrolladores, investigadores y cualquiera que quiera ver cómo funcionan las piezas, no como sustituto de las apps oficiales.
  • La distribución requiere pasos adicionales. Una versión pública para Mac necesita la firma y la notarización de Apple, un iPhone real necesita una cuenta de Apple Developer, y las compilaciones de Android están firmadas con una clave de prueba.
  • La compatibilidad con macOS se limita por ahora a macOS 13 o posterior en Mac con Apple silicon (M-series).
  • En escritorio se usa el modo proxy del sistema, así que los programas que ignoran los ajustes de proxy todavía no están cubiertos.
  • El protocolo subyacente es un borrador. Ha pasado una revisión de seguridad interna, pero todavía no una auditoría externa, y no se ha probado en condiciones reales en China continental.
  • Los nombres de los servidores se muestran tal como los envía el servidor. Pon nombres en inglés a los servidores para tener una interfaz completamente en inglés.

Compílala y participa

El README del repositorio explica cómo compilar el núcleo y la app para cada plataforma. El núcleo del protocolo está en su propio repositorio, SingLinkLabs / singlink-protocol.

Las preguntas, los informes de errores y los pull requests son bienvenidos en GitHub. Informa de las vulnerabilidades de seguridad de forma privada en lugar de en una issue pública: el proceso se describe en SECURITY.md, en el repositorio del protocolo.

Licencia y marcas

El código se distribuye bajo la licencia Apache-2.0: puedes usarlo, modificarlo y redistribuirlo, también con fines comerciales, según los términos de la licencia. Los nombres «SingLink» y «SingLinkVPN», sus nombres en chino y el logotipo son marcas de SingLinkLabs, y la licencia no concede permiso para usarlos. Los forks deben usar su propio nombre e icono. La app incluye la pila de red gVisor, que también se distribuye bajo la licencia Apache-2.0.

Más información

Related articles