Cloudflare Mesh、ユーザー・ノード・エージェント向けプライベートネットワーク
コーディングエージェントや本番デプロイ済みのエージェント、自宅ネットワーク上のサービスなど、自律的にプライベートリソースへ到達する必要がある利用者向けに、Cloudflare はプライベートネットワーク同士を接続する Cloudflare Mesh を発表した。既存の Cloudflare One(SASE / Zero Trust)利用者は追加の製品パラダイムなしで Mesh を利用でき、Gateway のポリシーや Access のルール、デバイスポスチャ検査が Mesh トラフィックにも自動適用される。
WARP Connector は Cloudflare Mesh ノード、WARP Client は Cloudflare One Client と呼び名を変え、同一のコネクタとバイナリで端末・サーバ・ユーザエンドポイントを接続する。接続後はプライベート IP 同士が Cloudflare のグローバルネットワーク(330 以上の都市)経由で通信し、NAT 越えに依存する従来型メッシュのリレー枯渇に比べ、エッジを経路本体として扱う。
Cloudflare Tunnel がエッジから特定の非公開サービスへ向かう一方向プロキシに適するのに対し、Mesh は双方向かつ多対多のプライベートネットワークであり、各リソースごとに Tunnel を割り当てずにノード間をプライベート IP で相互参照できる。
Workers VPC は拡張され、アカウントの Mesh ネットワーク全体を Workers および Durable Objects から単一のバインディングで fetch できる。wrangler.jsonc では network_id に cf1:network を指定して Mesh にバインドする。
{
"vpc_networks": [
{ "binding": "MESH", "network_id": "cf1:network", "remote": true },
{ "binding": "AWS_VPC", "tunnel_id": "350fd307-...", "remote": true }
]
}export default {
async fetch(request: Request, env: Env, ctx: ExecutionContext) {
// Reach any internal host on your Mesh, no pre-registration required
const apiResponse = await env.MESH.fetch("http://10.0.1.50/api/data");
// Internal hostname resolved via tunnel's private DNS resolver
const dbResponse = await env.AWS_VPC.fetch(
"http://internal-db.corp.local:5432"
);
return new Response(await apiResponse.text());
},
};無償枠はノード 50・ユーザー 50 まで。ダッシュボードでは Networking の Mesh からセットアップする。今後の予定として、同年夏頃に Tunnel のホスト名ルーティング相当を Mesh に拡張し、年内に Mesh DNS(ノード名に基づく内部ホスト名の自動解決)、ポリシー層が識別子単位で評価できる identity-aware routing、コンテナ向け Mesh Docker イメージを投入する方針が示されている。