В современных реалиях, когда интернет всё чаще напоминает минное поле с

блокировками и замедлениями, надежда на зарубежные (да и на некоторые

локальные) сервисы тает с каждым днем. В какой-то момент я пришел к выводу:

если хочешь, чтобы инструмент работал стабильно и не зависел от настроения

провайдеров или геополитики — напиши его сам.

 

Так появился, например, Fury Messenger (о котором я уже писал здесь) — мессенджер для

Android, заточенный под нестабильное соединение. Но решив проблему текстового

общения, я столкнулся со следующей «болью»: обмен файлами и документооборот. Именно на большом обьеме, а не кидая файлики или фоточки через мессенджер.

 В этой статье расскажу, как я реализовал систему прямой передачи данных между

компьютерами, почему облака — это иногда лишнее звено, и как мой «велосипед»

в итоге уехал в B2B-сегмент.

 

Проблема: Танцы с бубном вокруг VPN

 Типичный сценарий обмена файлами сегодня выглядит так:

 1.  Залить в Telegram (ограничение по размеру, скорость иногда «режут»).

2.  Закинуть на Google Drive/Dropbox (нужен VPN, который нужно то включать, то

    выключать, чтобы не отвалились другие сервисы).

3.  Передать через локальную сеть (сложно настроить права доступа, если люди

    сидят в разных сегментах или городах).

 

Мне хотелось простоты: как в старой доброй Windows Shared Folder, но через

интернет и без необходимости быть системным администратором 80-го уровня.

Чтобы можно было просто «расшарить» папку конкретному человеку и передать файл

на максимально возможной скорости канала.

 

Так родился Z-Folder.

 Архитектура: Что под капотом?

 

Я не большой фанат готовых тяжелых фреймворков там, где можно реализовать

кастомный протокол. (вообще очень люблю кастомные, бинарные протоколы) В Z-Folder я пошел по пути максимального облегчения стека.

 1. Протокол передачи

 В основе лежит UDP. Почему не TCP?

   - NAT Punching: Для установления прямого P2P-соединения между узлами,

    находящимися за NAT, UDP подходит идеально.

  - Скорость: В условиях потерь пакетов или нестабильного линка UDP позволяет

    более гибко управлять повторными отправками и окном передачи.

 

Протокол чем-то напоминает STUN, но со своими особенностями для контроля

целостности данных и управления очередями.

 

2. Пробивка NAT и Fallback

 Разумеется, чистый P2P возможен не всегда (привет, симметричные NAT в

корпоративных сетях). Схема работы выглядит так:

 

1.  Центральный сервер: Выступает точкой авторизации и «свахой» (Signaling

    server). Он знает, кто в сети, и помогает узлам найти друг друга.

2.  P2P-коннект: Узлы пытаются «пробить» NAT и соединиться напрямую. Если

    получилось — данные летят со скоростью вашего интернет-провайдера,

    минуя любые промежуточные сервера.

3.  Relay (Fallback): Если прямой коннект невозможен, система автоматически

    переключается в режим релея. В этом случае сервер выступает

    посредником, просто пересылая пакеты. Это медленнее, но

    гарантирует доставку.

 

3. Безопасность и права доступа

 Система работает по принципу «белого списка». Вы создаете пользователей в личном

кабинете (один пользователь — одно устройство). В интерфейсе вы видите список

доступных контактов. Нажимаете на пользователя — видите только те папки,

которые он расшарил именно для вас. Права можно гибко настраивать: только

чтение или чтение/запись.

 

Интерфейс и «плюшки»

 Я сторонник минимализма. Главная задача Z-Folder — сделать так, чтобы даже

человек, далекий от ИТ, мог обмениваться файлами.

 

По фидюеку очень часто просили добавить "свободное место" в шаре. не знаю, для меня не было очень важной метрикой, но добавил - люди счастливы.

В процессе разработки я понял, что файлообмен без контекста — это неудобно.

Поэтому добавил внутрь простенький чат. Теперь не нужно переходить в

мессенджер, чтобы написать «Лови доки», — всё происходит в одном окне.

 

От пет-проекта к B2B

 Изначально я делал Z-Folder для себя и своих бизнес-партнеров. Но жизнь

подкинула интересные кейсы:

   - Кейс «Друг и локалка»: Мой знакомый никак не мог настроить общий доступ к

    папкам между двумя компами в квартире (классика Windows). Z-Folder решил

    его проблему за 2 минуты: поставил, залогинился, пользуешься.

  - Кейс «B2B»: Неожиданно проектом заинтересовались компании. Оказалось, что

    для оперативного документооборота между филиалами, особенно когда

    интернет в регионах «хромает», а VPN-шлюзы перегружены, такое легкое

    P2P-решение — настоящий спасение.

 

Итоги 

Z-Folder стал для меня ответом на вопрос: «А что если завтра отключат всё?».

Система независима от облачных хранилищ, не требует постоянного включения

VPN для доступа к файлам и выжимает максимум из доступного канала связи.

 

Сейчас сервис успешно живет, им пользуются несколько компаний и круг моих

знакомых. Это был отличный опыт создания закрытой, быстрой и надежной

экосистемы «для своих», которая переросла в нечто большее.

 

А как вы решаете вопрос передачи тяжелых файлов или документов в условиях

нынешних ограничений? Пользуетесь облаками, мессенджерами через боль или используете какие то другие решения?

Комментарии (8)


  1. aik
    16.05.2026 12:30

    Яндех и мыл обычно доступны при белых списках, в если недоступны, то и свой сервис не будет доступен.

    Облако позволяет расширить файл и отправить абоненту ссылку, без необходимости тому ставить клиента.

    В локалке гораздо проще и безопасней поднять свой сервер/расшарить папку, чем связываться со сторонними сервисами.

    Так что решение какое-то очень нишевое, для группы людей, которым по каким-то непонятным причинам не нравится облако/мессенджер, но они готовы использовать самодельный сервис. Я бы ещё что-то понял, если бы был мобильный клиент. Но только винда?

    Ну и переносы в тексте поправьте, а то у вас абзацы все криво разбиты.


  1. dreams_killer
    16.05.2026 12:30

    Пользуюсь croc ( github.com/schollz/croc ) , где то и на хабре про него тоже было ...


  1. pol_pot
    16.05.2026 12:30

    А как вы решаете вопрос передачи тяжелых файлов или документов в условиях нынешних ограничений?

    А что изменилось? Яндекс-маил диск как был так и остался у казуалов. И телеграм. Работающий ВПН есть примерно у всех, у кого нет того считай что нет в интернете.

    Для гиков есть прикольная схема. На компах устанавливается и настраивается связка из yggdrasil+rclone+winfsp. yggdrasil дает "прямую связь" по ип, rclone позволяет расшарить папку через вебдав/фтп/итп, winfsp вместе с rclone позволяет смонтировать такую папку как сетевой диск.

    Я как то хотел приделать гуй к этой связке но меня обломало, слишком многое надо сделать ради такой ерунды, проще руками в консольке. Впринципе можно исключить rclone и использовать сразу самбу встроенную в венду.

    Для улучшения качества связи надо будет поднять свои релеи, для этого нужен только узел с белым ип, его можно поднять на любом компе(венда, линукс без разницы, ему даже не обязательно работать постоянно) или роутере с опенврт/кинетике/микротике с докером.


  1. SchwarzFuchs
    16.05.2026 12:30

    Мы использовали Radmin+FileZilla для подобных задач. А насчёт статьи — не хватает раздела про то, как это всё защищено (защищено ведь?) от посторонних глаз.


  1. Apoheliy
    16.05.2026 12:30

    Яндекс.Диск - и будет тебе счастье!

    Морда не нужна!

    Браузер не нужен!

    Я.Диск автоматически синхронизируется с папкой на компьютере (под форточкой - хз, на пингвине работает идеально). При работе через мобильник - своё приложение и пункт "отправить" из всего подряд.


    1. dartraiden
      16.05.2026 12:30

      Я.Диск автоматически синхронизируется с папкой на компьютере

      Скоро перестанет, с 1 июня синхронизация на десктопе становится платной услугой.


  1. Anselm_nn
    16.05.2026 12:30

    Из предложенных вариантов выбор google, там совершенно спокойно можно загрузить файлы даже используя rclone.

    Если говорить про p2p, есть же send anywhere. Не понял, в чем отличие от вашего решения


  1. K0Jlya9
    16.05.2026 12:30

    На самом деле реально востребованная задача не имеющая пока нормального решения. Все бесплатные варианты упираются в то что NAT далеко не всегда получается проткнуть, а платить за хорошие быстрые релеи для миллионов халявщиков никто не хочет, даже google c cloudflare.

    Вариант с yggdrasil выглядит интересно, особенно если использовать его без сетевого интерфейса, как встроенную библиотеку, можно бесплатно прокатиться на энтузиастах, можно свои сервера поднять если это нужно для себя.