>_ DevTrendsja

言語

ホーム

言語

セクション

フロントエンド バックエンド モバイル DevOps AI / ML ゲーム開発 セキュリティ
Go

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は以下の技術を使用しています:

  1. Tailscale tsnet — ユーザー空間WireGuard実装
  2. DERPサーバー — 厳格なNAT用のフォールバック
  3. X25519鍵 — 認証用

アクセス鍵の構造:

112v1RyL5KPzsbMbhT7fkEGrcfpygxtnvwjR5kMLGxDHGeLTK1BvoPqsUcjo7xyMkFn46KLTdedKuPCG5trP84mz9kx
├─ UDP-адрес (19Б)
├─ Регион DERP ()
├─ Публичный ключ сервера (32Б)
└─ Приватный ключ отправителя (32Б)

ユースケース

  1. 本番サーバーからの緊急ログ転送
  2. データセンター間のバックアップ
  3. SSHセッションを通じたリモートデバッグ
  4. 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のファイル送信は、この記事を読むよりも早く完了します!

関連プロジェクト