WebSocket (WS)

RFC 6455 · 2011 · full-duplex поверх HTTP

Что это

WebSocket (WS) — двунаправленный протокол связи, стандартизирован в RFC 6455 (2011). Позволяет открыть постоянное «живое» соединение между браузером и сервером поверх HTTP, куда данные могут литься в обе стороны без переспросов.

Как работает

WebSocket-соединение начинается как обычный HTTP-запрос с особым Upgrade-заголовком:

GET /ws HTTP/1.1
Host: example.com
Upgrade: websocket
Connection: Upgrade
Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==
Sec-WebSocket-Version: 13

Сервер отвечает 101 Switching Protocols, и с этого момента TCP-соединение перестаёт быть HTTP — это уже WebSocket-фреймы.

WebSocket в контексте прокси

WS используется как обёртка для прокси-протоколов (VLESS, VMess, Trojan, Shadowsocks). Прокси-данные упаковываются в WS-фреймы, которые идут поверх HTTPS.

Главное преимущество: CDN

WebSocket отлично работает через CDN — особенно Cloudflare. Это делает его популярным транспортом:

Конфиг в Xray

"streamSettings": {
  "network": "ws",
  "security": "tls",
  "tlsSettings": {
    "serverName": "your.domain.com"
  },
  "wsSettings": {
    "path": "/api/chat",
    "host": "your.domain.com",
    "headers": {
      "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)..."
    }
  }
}

path — важнейший параметр

WebSocket идёт на конкретный HTTP-путь. Можно замаскировать как API реального сайта:

Не используй банальное /ray или /v2 — это выдаёт прокси.

Минусы

Классический сетап с CDN

  1. Купить домен (50-200 руб/год на .ru или .xyz)
  2. Добавить в Cloudflare (бесплатно), включить «оранжевое облако» (proxy)
  3. На сервере — Xray с VLESS+WS+TLS на 443, path=/random-path
  4. В клиенте — сервер = твой-домен.com, path = /random-path
  5. Cloudflare отдаёт свой сертификат, соединение идёт через их CDN

WebSocket vs альтернативы 2026

WS — проверенный временем классик, но:

WS всё ещё топ, если обязательно нужен Cloudflare — там он всё ещё вне конкуренции.

См. также

← на главную
← на главную