Как SKNet работает на самом деле

Простое объяснение без сетевой теории: кто к кому подключается и где проходят данные.

1 минута

Короткая версия

SKNet состоит из публичного edge-сервера и маленького клиента рядом с вашим приложением.

Клиент первым подключается к edge-серверу. Поэтому домашний роутер, NAT и закрытые входящие порты не мешают работе. Когда человек открывает публичный адрес, edge передаёт запрос через уже созданное соединение.

Путь одного запроса

  1. DNS находит SKNet

    Браузер узнаёт IP публичного edge-сервера.

  2. Edge принимает HTTPS

    SKNet завершает TLS и по имени домена находит нужный активный туннель.

  3. Запрос идёт в ваш клиент

    Для каждого потока открывается отдельное соединение, поэтому большой ответ не блокирует остальные.

  4. Клиент обращается к приложению

    Например, к http://app:3000 внутри вашей Docker-сети.

  5. Ответ возвращается тем же путём

    Браузер получает обычный HTTPS-ответ и не знает, где физически запущено приложение.

Что видит SKNet

SKNet видитSKNet не получает автоматически
HTTP-запросы, проходящие через туннельДоступ ко всем файлам компьютера
Публичное имя туннеля и состояние соединенияДоступ к другим контейнерам
Технические сведения для маршрутизацииПароли приложения и баз данных

Что происходит при остановке

Публичный адрес остаётся закреплён за аккаунтом, но отвечает, что туннель сейчас недоступен. После повторного запуска клиент подключается снова с тем же токеном — DNS менять не нужно.

Инструкция не помогла?

Откройте исходник документа по ссылке «Предложить правку» — там же видно, что и когда в нём менялось.