アーキテクチャ
Waired は 推論専用のオーバーレイネットワーク です。コントロールプレーンを 通じてマシン同士が互いを見つけられるようにした後は通信に関与せず、マシン同士は 暗号化されたリンク上で直接ピアツーピアに通信します。
4 つの構成要素
Section titled “4 つの構成要素”| コンポーネント | 役割 |
|---|---|
waired (CLI) |
あなたが実行するもの: init、status、infer、link など。 |
waired-agent |
バックグラウンドサービス(systemd / launchd / Windows サービス)。コントロールプレーンと通信し、ユーザー空間の WireGuard データプレーンを実行します。 |
waired-control (コントロールプレーン) |
ホスト型サービス。Google サインイン、デバイスの登録、そして署名済みの Network Map のストリーミングを担います。これはあなたが実行するものではありません。 |
waired-relay |
直接到達できないエージェント間で、暗号化された WireGuard パケットを転送するリレーです(Tailscale の DERP リレーと同じ方式)。 |
リクエストの流れ
Section titled “リクエストの流れ”+-----------+ OAuth + enroll +-------------------+| waired | ──────────────────► | waired-control || (CLI) | | (Control Plane) |+-----------+ +---------+---------+ │ │ signed Network Map ▼ ▼ (peer keys + endpoints + relay URLs)+-----------+ WireGuard direct UDP +-----------+| waired- | ◄──────────────────────► | waired- || agent A | | agent B |+-----+-----+ +-----+-----+ │ +---------------+ │ └───wss────► | waired-relay | ◄──wss──┘ +---------------+ forwards encrypted WG packets only- 登録。
waired initで Google にサインインし、デバイスを コントロールプレーンに登録します。 - 探索。 コントロールプレーンは、各エージェントに自身が署名した Network Map をストリーミングします。これにはネットワーク上の他デバイスの 公開鍵、エンドポイント、リレー URL が含まれます。
- 直接接続。 エージェント同士は互いに直接 WireGuard UDP リンクを 開きます。データプレーンはユーザー空間で動作するため、OS レベルの VPN インターフェースを設定する必要はありません。
- リレーへのフォールバック。 2 台が直接の経路を開けない場合(厳格な NAT や ファイアウォール)、暗号化された WireGuard データグラムを転送するリレーに フォールバックします。これは自動的に行われます。
- 推論。 あなたのコーディングエージェントやクライアントは ローカルゲートウェイ にアクセスし、ゲートウェイは リクエストをローカルまたはピアのエンジンへルーティングし、暗号化されたリンク上で 回答をストリーミングして返します。
コントロールプレーンがすること・しないこと
Section titled “コントロールプレーンがすること・しないこと”コントロールプレーンは コーディネーション サービスです。署名済みの Network Map を 通じてピアの公開鍵とエンドポイントを配布します。それだけです。あなたのプロンプトや 応答を見ることは決してなく、リレーも転送するトラフィックを復号できません。 詳しくは プライバシー を参照してください。