Wush — 中継者不要の超高速ファイル転送
1,446 スター
身に覚えはありませんか?同僚に大容量ファイルを素早く送りたい、またはリモートサーバーに接続したいのに、既存のソリューションは遅いか、複雑なセットアップが必要です。wushは、まさにこの問題を解決します — Coderの開発者たちが作成したミニマリストツールで、データ転送を1つのアクションに変えます。
箱の中身
Wushはmagic-wormholeの強化版のようなものです。主な利点は以下の通りです:
- 完全なP2Pアーキテクチャ — 認証に信頼できるサーバーが不要
- 最大376 MB/sの速度(読んだ通りです)
- WireGuard上で動作 — VPNレベルのセキュリティ
- 2つの接続モード — 直接UDPまたはDERPリレーを経由
# Пример передачи файла (2.1 ГБ за секунды!)
$ wush cp huge_file.iso
Uploading "huge_file.iso" 100% |████████████████| (2.1/2.1 GB, 376 MB/s)
技術的な仕組み
内部では、wushは以下の技術を使用しています:
- Tailscale tsnet — ユーザー空間WireGuard実装
- DERPサーバー — 厳格なNAT用のフォールバック
- X25519鍵 — 認証用
アクセス鍵の構造:
112v1RyL5KPzsbMbhT7fkEGrcfpygxtnvwjR5kMLGxDHGeLTK1BvoPqsUcjo7xyMkFn46KLTdedKuPCG5trP84mz9kx
├─ UDP-адрес (19Б)
├─ Регион DERP (2Б)
├─ Публичный ключ сервера (32Б)
└─ Приватный ключ отправителя (32Б)
ユースケース
- 本番サーバーからの緊急ログ転送
- データセンター間のバックアップ
- SSHセッションを通じたリモートデバッグ
- MLプロジェクトでの大規模データセットの同期
インストール — 1ステップ
# Linux/macOS
curl -fsSL https://github.com/coder/wush/raw/main/install.sh | sh
# Или через Homebrew
brew install wush
Linuxでの最大速度を確保するには:
sudo setcap cap_net_admin=eip $(which wush)
これがなぜ画期的か
- SCP/SFTPより10〜100倍高速
- VPNのセットアップが不要
- 二重NAT環境でも動作
- WireGuard互換ツールすべてと互換性あり
制限事項
- Go 1.20以上が必要
- 厳格なNATはDERP経由でのみ動作
- まだGUIはなく、CLIのみ
Wushは以下の方に最適です:
- 低速なSCPにうんざりしているDevOpsエンジニア
- 大容量バイナリを扱う開発者
- データ転送のセキュリティを重視するチーム
試してみてください — 1GBのファイル送信は、この記事を読むよりも早く完了します!
関連プロジェクト