Un enlace de configuración reúne en una sola línea todo lo que necesita un cliente: el servidor, la clave y los ajustes de transporte. Saber leerlo te dice qué te dieron y por qué falla una configuración. Todos los ejemplos de abajo usan valores de relleno, no servidores reales.
VLESS
vless://[email protected]:443?encryption=none&security=reality&sni=site.example&fp=chrome&pbk=PUBLIC_KEY&sid=SHORT_ID&type=tcp&flow=xtls-rprx-vision#my-config
| Parte | Significado |
|---|---|
00000000-… | El ID de usuario (UUID). Es la clave: quien lo tenga puede usar el servidor. |
server.example:443 | Dirección y puerto del servidor. |
encryption=none | VLESS no cifra por sí mismo; la capa de seguridad protege el tráfico. |
security | none, tls o reality. |
sni | El nombre de servidor que se presenta en el handshake TLS. Con REALITY es el sitio real que se imita. |
fp | La huella TLS que imita el cliente, como chrome. |
pbk, sid | Clave pública y short ID de REALITY. Ambos deben coincidir exactamente con los del servidor. |
type | Transporte: tcp, ws (WebSocket), grpc y otros. |
flow | xtls-rprx-vision es el flow Vision, que se usa con REALITY o con TLS sobre TCP. |
path, host, serviceName | Ajustes del transporte WebSocket o gRPC, cuando se usan. |
#my-config | La etiqueta que aparece en tu lista. |
VMess
Un enlace vmess:// es el prefijo seguido del Base64 de un pequeño documento JSON. Decodificado, tiene este aspecto:
{"v":"2","ps":"my-config","add":"server.example","port":"443","id":"00000000-0000-0000-0000-000000000000","aid":"0","scy":"auto","net":"ws","type":"none","host":"server.example","path":"/path","tls":"tls","sni":"server.example"}
add y port son el servidor, id es el UUID, aid es el alter ID heredado (debería ser 0), net es el transporte, host y path pertenecen a WebSocket, tls activa TLS y ps es la etiqueta. Para decodificar uno a mano, toma el texto posterior a vmess:// y pásalo por base64 -d.
Shadowsocks
ss://BASE64(method:password)@server.example:8388#my-config
La parte anterior a la @ es el cifrado y la contraseña, codificados en Base64. Usa un cifrado AEAD. Los cifrados de flujo más antiguos, como rc4-md5 o aes-256-cfb, son débiles. Algunos enlaces antiguos codifican en Base64 todo method:password@host:port en su lugar.
Trojan
trojan://[email protected]:443?security=tls&sni=server.example&type=tcp#my-config
La parte anterior a la @ es la contraseña. Trojan necesita TLS para proteger el tráfico, así que security=tls debería estar presente.
Suscripciones
Una URL de suscripción devuelve una lista de enlaces, normalmente codificada en Base64, uno por línea. La app la descarga, la decodifica y añade cada enlace. Cuando un proveedor reemplaza los servidores bloqueados, actualizar la suscripción trae los nuevos.
Errores que rompen un enlace
El decodificador de enlaces comprueba los más comunes:
- un UUID o un puerto no válido;
- REALITY sin clave pública o sin nombre de servidor;
- VLESS o Trojan sin TLS;
allowInsecureactivado, lo que desactiva las comprobaciones de certificado;- un cifrado de Shadowsocks obsoleto;
- un alter ID de VMess distinto de cero.
Un solo carácter incorrecto en pbk o sid hace que una configuración REALITY falle sin ningún mensaje. Consulta por qué una conexión puede establecerse y aun así no cargar nada.
Un enlace es una credencial
El UUID o la contraseña que hay dentro de un enlace es la llave del servidor. Cualquiera que tenga el enlace puede usarlo, y en un servidor compartido eso puede consumir tu cuota. No publiques enlaces en chats públicos; un enlace público también se bloquea antes.
El decodificador de este sitio decodifica en la propia página y no envía nada a ninguna parte: la página no hace ninguna petición de red cuando decodifica un enlace. Aun así, ten cuidado con cualquier herramienta en línea en la que pegues un enlace. Siempre puedes decodificar uno sin conexión con base64 -d, como se indicó arriba.
Fuentes
- Ejemplos de configuración de Xray
- Documentación de REALITY
- Descripción del protocolo Trojan
- Shadowsocks SIP002, que define el formato de los enlaces