VLESS, VMess, Trojan o Shadowsocks: cuál usar

Cómo se diferencian VLESS, VMess, Trojan y Shadowsocks en la red, cuál resiste en redes restrictivas y qué pedir primero. Incluye qué puede importar v2rc.

Última revisión:

Un cliente V2Ray no elige el protocolo por ti. Lo decide la configuración que importas, y esa configuración viene de tu proveedor o de tu propio servidor. Así que la pregunta práctica es qué pedir o qué poner en marcha. Este artículo explica las diferencias que importan y termina con una recomendación breve.

Tres capas, no una sola elección

«VLESS o VMess» suena a una sola decisión. Son tres:

  • Protocolo: cómo se autentica el cliente y qué aspecto tiene la carga (VMess, VLESS, Trojan, Shadowsocks).
  • Transporte: cómo viajan los bytes (TCP simple, WebSocket, gRPC y otros).
  • Seguridad: qué envuelve la conexión (nada, TLS o REALITY).

El mismo protocolo puede ser casi invisible o fácil de detectar según las otras dos capas. Lo que ve un censor lo deciden sobre todo el transporte y la seguridad.

Qué puede ver un censor

  • Bytes de aspecto aleatorio. Shadowsocks y VMess sobre TCP simple no tienen una cabecera reconocible. Eso ya es una señal en sí misma: desde finales de 2021 el Great Firewall bloquea las conexiones cuyo primer paquete parece datos totalmente cifrados. El artículo sobre China da los detalles.
  • Un handshake TLS. Trojan, y VLESS o VMess sobre TLS, parecen HTTPS. Aun así, un censor puede comprobar el nombre del servidor, la dirección IP, el certificado y cómo se comporta la conexión.
  • Un handshake prestado. REALITY imita el handshake TLS de un sitio web real que tú eliges. Una sonda que no tiene la clave se reenvía a ese sitio real y ve sus páginas reales. No necesitas un nombre de dominio ni un certificado propios.

Los cuatro protocolos, lado a lado

VMessVLESSTrojanShadowsocks
Cifra la carga por sí mismoSíNo, depende de TLS o REALITYNo, depende de TLSSí
Qué aspecto tiene, por defectoBytes aleatorios sobre TCP simpleDepende de la seguridad: bytes aleatorios, TLS o REALITYHTTPSBytes aleatorios
Necesita dominio y certificado propiosSolo con TLSSolo con TLS, no con REALITYSíNo
Falla si el reloj está malSíNoNoNo
Se importa en v2rcSíSíSíSí
  • VMess es el protocolo original de V2Ray. Se autentica con un UUID y una marca de tiempo, y por eso un reloj del teléfono o del servidor desajustado un par de minutos hace que falle sin ningún mensaje de error. Usa alterId 0 (el modo AEAD); un alterId distinto de cero es heredado.
  • VLESS es el sucesor más ligero. No cifra por sí mismo, así que solo es tan privado como la capa que tiene debajo. Úsalo con TLS o REALITY, nunca con seguridad none a través de la internet abierta.
  • Trojan copia HTTPS: una contraseña dentro de una conexión TLS normal. A un cliente que no conoce la contraseña se le muestra en su lugar una página web normal. Necesita un certificado real para un dominio real, y un dominio puede bloquearse.
  • Shadowsocks es un proxy cifrado de larga trayectoria y el más sencillo de poner en marcha. Usa un cifrado AEAD; los cifrados de flujo antiguos, como rc4-md5 o aes-256-cfb, son débiles. Sin un plugin o una capa que lo envuelva, su tráfico es del tipo totalmente cifrado.

Qué aportan REALITY y Vision

En una configuración REALITY verás security=reality, un nombre de servidor (sni), una clave pública (pbk) y un short ID (sid). El nombre de servidor debe ser un sitio web real que admita TLS 1.3 y HTTP/2; la documentación de REALITY pide exactamente eso.

flow=xtls-rprx-vision es el flow Vision. Una conexión TLS transportada dentro de otra conexión TLS deja un patrón reconocible; la literatura de investigación lo llama TLS-in-TLS, y Xue et al. (USENIX Security 2024) mostraron que esos patrones pueden delatar proxies ofuscados. Vision se diseñó para reducir ese patrón en el tráfico que ya es HTTPS en sí mismo.

Ninguno de los dos es magia. La dirección IP y la red de alojamiento de tu servidor siguen importando, y REALITY no oculta que una conexión va a una dirección de un centro de datos extranjero.

Qué pedir

  1. En una red restrictiva (Rusia, Irán, China y similares): VLESS con REALITY y Vision sobre TCP, en el puerto 443.
  2. Una segunda configuración de otro tipo: Trojan, o VLESS sobre TLS con WebSocket o gRPC, opcionalmente detrás de una CDN. Una CDN oculta la dirección IP de tu servidor, pero depende de que la propia CDN sea accesible y no esté siendo ralentizada donde estás.
  3. En una red abierta: cualquiera de los cuatro. Usa lo que tu proveedor ya admita.
  4. Si tu proveedor te da una suscripción: tú no eliges, pero puedes leer los enlaces para saber qué recibiste. Consulta cómo leer un enlace de configuración.
  5. Ten al menos dos configuraciones de hosts distintos. Cuando una falla, quieres otra dirección IP y, si es posible, otro protocolo, no otra configuración del mismo servidor.

Qué puede y qué no puede importar v2rc

v2rc importa VMess, VLESS (incluido REALITY), Shadowsocks y Trojan desde un enlace, un archivo JSON de V2Ray, el portapapeles o una URL de suscripción. No importa Hysteria 2, TUIC, WireGuard, AmneziaWG ni NaiveProxy. Los cuatro primeros funcionan sobre UDP, que muchas redes restrictivas descartan; NaiveProxy funciona sobre HTTPS, pero necesita su propio cliente. Para esos necesitas otra app.

v2rc no incluye servidores: tú traes tus propias configuraciones. Smart Connect elige la configuración más rápida y comprueba que el túnel realmente deja pasar tráfico antes de cambiar.

Fuentes

Trae tus configuraciones. Deja las conjeturas.

Gratis en el App Store para iPhone, iPad y Mac.