На протяжении многих лет Google Drive, OneDrive и Dropbox были основными инструментами для синхронизации данных. Однако со временем стала очевидна неэффективность такой модели: даже если два устройства находились на одном рабочем столе, файлы при синхронизации через облако сначала отправлялись на сервер, а затем загружались обратно. Процесс превращался в последовательность «выгрузка — загрузка», что существенно замедляло работу.

Отказ от облачного посредника в пользу локальной сети
Ситуация изменилась после перехода на Syncthing. Программа позволила устройствам обнаруживать друг друга в локальной сети и передавать файлы напрямую. Это устранило необходимость участия стороннего облачного сервера. Теперь файлы хранятся на дисках, которые я контролирую самостоятельно, а не арендую пространство у поставщика услуг.
Для проверки эффективности я провел тест с использованием ZIP-архива объемом 15,2 ГБ. В качестве сетевого соединения выступала сеть Wi-Fi со скоростью 27 Мбит/с на прием и 10 Мбит/с на передачу. Использование OneDrive привело к ожидаемой задержке, так как весь объем данных должен был покинуть помещение и вернуться обратно. Аналогичные результаты показали Google Drive и Dropbox.
При использовании Syncthing тот же файл был передан за 30 минут, так как данные перемещались напрямую по локальной сети. Кроме того, Syncthing обладает важным преимуществом при последующих изменениях: программа сравнивает блоки данных и передает только измененные фрагменты, а не весь файл целиком. Это напоминает замену одной страницы в документе вместо рассылки всей папки заново.

Работа Syncthing за пределами домашней сети
Изначально возникали опасения, что система окажется бесполезной вне дома, однако на практике это не подтвердилось. Если устройства не могут установить прямое соединение через интернет из-за особенностей работы роутеров или NAT, используются функции глобального обнаружения и ретрансляции.
Ретранслятор выступает в качестве резервного пути, обеспечивая связь, но при этом он не имеет доступа к содержимому передаваемых данных. Хотя использование ретрансляции может привести к снижению скорости по сравнению с локальной передачей, возможность синхронизации сохраняется. Это позволило мне перестать следить за статусом выгрузки в облако и сфокусироваться на актуальной версии файлов на конкретном устройстве.

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

Хотя в Syncthing можно настроить хранение старых версий файлов, эта функция не активирована по умолчанию. Поэтому я уделяю особое внимание безопасности, используя правила версионности, дополнительные накопители и удаленные копии для наиболее важных данных. Тем не менее, переход на Syncthing оказался оправданным: я больше не оплачиваю ежемесячные подписки на облачные сервисы, экономя примерно 120–240 долларов в год, и при этом обладаю полным контролем над оборудованием и скоростью обмена данными.
Почему облачные сервисы — это «сценарий для туристов»
Проблема классических облачных хранилищ заключается в том, что они заставляют данные совершать ненужное «путешествие». Даже если два устройства стоят на одном столе в паре метров друг от друга, файлы вынуждены покидать помещение, проходить через центр обработки данных провайдера и только потом возвращаться обратно. Годами я мирился с этим процессом просто по инерции, хотя осознавал, что это фактически «загрузка, за которой следует скачивание». С переходом на Syncthing этот «сценический маршрут» исчез: я перестал арендовать посредника, так как у меня уже были собственные накопители и достаточная пропускная способность сети, но не было подходящего софта для их эффективного использования.

Экспериментальные замеры: секундомер против догадок
Чтобы убедиться, что мое восприятие скорости не является субъективным, я решил провести точное тестирование. Для этого я взял архив весом 15,2 ГБ, который ранее не синхронизировался ни с одним из клиентов. Моя Wi-Fi сеть в момент теста показывала 27 Мбит/с на загрузку и 10 Мбит/с на отдачу. Я был уверен, что OneDrive покажет себя медленно, но результат оказался даже более показательным, чем я ожидал. Время передачи через OneDrive было пугающе близким к математическому ожиданию: полный цикл выгрузки файла на сервер и последующего скачивания на второе устройство при моих скоростях. Google Drive и Dropbox показали аналогичную задержку, лишь с минимальными отклонениями в таймингах.

Syncthing же справился с задачей за 30 минут, просто потому что данные перемещались напрямую по моей локальной сети. И хотя на первом этапе (первичной синхронизации) каждый байт всё равно должен переместиться из точки А в точку Б, настоящая мощь технологии проявляется позже. При последующих изменениях программа сравнивает блоки данных внутри файлов и передает только те фрагменты, которые реально изменились. Это максимально эффективно: зачем пересылать весь архив, если вы изменили в нем лишь несколько документов?
Нюансы работы за пределами дома и глобальное обнаружение
Когда я только начал использовать Syncthing, я столкнулся с препятствием: из-за специфических комбинаций роутеров и настроек NAT устройства иногда не могли установить прямое соединение друг с другом. Решением стало использование функций global discovery и relaying. Глобальное обнаружение помогает устройствам найти друг друга в сети интернет, а ретранслятор служит «запасным путем». Важно понимать: хотя ретранслятор видит, что устройства обмениваются данными, он физически не может прочитать их содержимое из-за сквозного шифрования. Конечно, этот «лишний прыжок» через релей снижает скорость по сравнению с локальной передачей, но он гарантирует, что синхронизация не прервется, даже если вы находитесь в другой сети.

Безопасность: вы сами себе план резервного копирования
Главный урок, который я усвоил: синхронизация — это не бэкап. Самый простой способ убедиться в этом — случайно удалить или перезаписать важный файл на одном из устройств. Это действие мгновенно реплицируется везде. Имея три синхронизированные копии, вы всё равно рискуете потерять данные, если «кривая» команда затронет источник. Syncthing защищает от поломки одного диска, но не от ошибок пользователя. Чтобы превратить систему в надежный архив, я сознательно выстроил «сеть безопасности»: настроил правила версионности (которые по умолчанию выключены), добавил внешние физические накопители и организовал оффсайт-копии для критически важных проектов. Несмотря на необходимость ручной настройки, это избавляет от ежегодных трат в 120–240 долларов и дает полное спокойствие за свои данные.




