×

Беспроводный обмен файлами пк-android

При работе с файлами на мобильных устройствах я чаще всего применяют беспроводную связку ноутбука и смартфона, исключающую кабели и переходники. Подготовленный алгоритм даёт стабильный throughput и экономит время.

Wi-Fi

Обе стороны соединяются через единую точку доступа — домашний роутер или прямое Wi-Fi Direct-сопряжение. Для ускорения контакта я использую фиксированные IP-адреса, чтобы избежать долгой аренды в DHCP.

Выбор протокола

Wi-Fi Direct подходит для быстрой пары устройство-устройство без промежуточного маршрутизатора, реальная скорость сверяется через приложения-бенчмарки HyperIO-Meter. FTP — старый, но предсказуемый стек, прекрасно читаемый любыми файловыми менеджерами на Android. Samba (SMB v2/v3) удобен на десктопах с Windows или Linux, даёт привычную навигацию по папочкам. WebDAV запускаю, когда нужно монтирование как сетевого диска. Для легковесных одноразовых пересылок включаю Snapdrop — web-сервис, который использует WebRTC под капотом.

На смартфоне держу три утилиты: WiFi FTP Server, CX File Explorer с поддержкой SMB и Solid Explorer для WebDAV. На ноутбуке достаточно встроенного клиента системного файлового менеджера либо FileZilla.

Настройка канала

Перед активацией сервера отменяю энергосбережение Wi-Fi, чтобы не возникал спящий таймер. Запускаю FTP-сервер в WiFi FTP Server, задаю порт 21, пароль из двенадцати символов с алфавитом Base64. На ПК в FileZilla ввожу IP-адрес смартфона, порт, учётные данные, включаю пассивный режим. При Samba-сценарии выбираю опцию SMB 3 на смартфоне, на ПК использую сетевой путь \\10.0.0.5\sdcard.

Wi-Fi Direct стартует через пункт «Файл-обмен» в современных версиях Android (меню «Nearby Share»). После сопряжения система отводит адрес 192.168.49.1 для группы и открывает TCP-порт 7080. На ноутбуке добавляю статический маршрут, затем подключаюсь браузером по URL http://192.168.49.1:7080/.

Для WebDAV в Solid Explorer выбираю профиль «Сервер», назначаю порт 8080, корневой каталог /storage/emulated/0/Transfer. В Windows использую команду «net use W: http://10.0.0.5:8080» — диск W появляется в Проводнике.

Контроль безопасности

Передача идёт внутри локальной сети, однако релиз-артефакты и личные фото содержат конфиденциальные данные. Применяю sFTP (FTP поверх SSH) или Samba с шифрованием AES-128-GCM. Криптографическая целостность отслеживается через хэш-функцию BLAKE 3, она устойчивее SHA1 и быстрее SHA-256.

Парольная аутентификация дополняется ключами ED25519 длиной 256 бит. На Android ключ генерируется в Termux: «ssh-keygen -t ed25519 -a 100». Публичная часть помещается в authorized_keys на ноутбуке. Вместо паролей в Samba назначаю Kerberos-тикет, совместимый с Active Directory.

Опасность перехвата trapframe (probe-response) свожу к нулю с помощью 802.11 (Management Frame Protection) на роутере. При отсутствии поддержки включаю временный MAC-рандомайзер в инженерном меню Android.

После завершения сеанса выключаю сервер, очищаю ARP-кэш, обнуляю список соседних устройств. Данные MDNS-кэширования стираются командой «ipconfig /flushdns».

При регулярном использовании сценарий упакован в script-батч. На смартфоне ShortcutScheduler вызывает нужную службу одним тапом, на ноутбуке всё стартует через Postwebshell-функцию Send-Android File. Время на ручные операции сокращается до двадцати секунд.