# dig も netcat ももういらない！Cloudflare Tunnel が起動時に接続を自己診断！

やっほー、しぃちゃんだよ！今日は Cloudflare Tunnel を使ってるみんなに、地味だけどじわっとうれしいアップデートを紹介するね。

## なにが発表されたの？

Cloudflare の Changelog で、[Cloudflare Tunnel](https://developers.cloudflare.com/tunnel/) の接続ソフト `cloudflared` が、起動時に接続の事前チェック（connectivity pre-checks）を自動でやってくれるようになったって発表があったよ。対象は [cloudflared version 2026.5.2](https://github.com/cloudflare/cloudflared/releases) 以降なの。

## 今までどうだったの？

これまではトンネルがうまくつながらないとき、`dig` や `netcat` を自分でインストールして、手でコマンドを叩いて環境を確認する必要があったの。地味に面倒だったんだよね。

## これで何が変わるの？

これからは `cloudflared` 自身が起動時にネイティブでチェックしてくれるよ。しかも何かがブロックされてるときは、具体的な直し方（remediation）まで出してくれるの。毎回自動で走るから、夜のうちにファイアウォールのポリシーが変わっちゃった、みたいな後からの不具合も拾えるんだよ。

## 深く潜ってみよう

`cloudflared tunnel run`（と `cloudflared tunnel diag`）を実行するたびに、次の 3 つをチェックするよ。

- DNS 解決: `region1.v2.argotunnel.com` と `region2.v2.argotunnel.com` が正しい Cloudflare の IP に解決できるか。
- トランスポート接続: ポート `7844` での外向き UDP（QUIC）と TCP（HTTP/2）。
- Management API: ソフトウェア更新のための `api.cloudflare.com` への外向き TCP/443。

結果は CLI のテーブルに 3 つの状態で表示されるの。

- Pass: チェック成功。
- Warn: ブロックにはならない問題。たとえば Management API に届かなくて自動更新は効かないけど、トンネル自体は立ち上がる、みたいなとき。
- Fail: ブロックする問題。`Allow outbound UDP on port 7844` みたいに直し方のヒント付き。

もし DNS が解決できなかったり、ポート `7844` で UDP と TCP の両方が失敗したりすると、`failed to dial` みたいな分かりにくいエラーでループせずに、`cloudflared` はすぐ終了してくれるよ。

新しい挙動を使うには `cloudflared` を `2026.5.2` 以降に上げてね。もっと詳しくは [接続事前チェックのドキュメント](https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/troubleshoot-tunnels/connectivity-prechecks/) を見てみて。

## まとめ

- `cloudflared` 2026.5.2 から、起動時に接続の事前チェックを自動実行するようになったよ。
- チェック内容は DNS 解決・ポート 7844 の UDP/TCP・`api.cloudflare.com` への TCP/443 の 3 つ。
- 結果は Pass / Warn / Fail の 3 状態で、Fail には直し方のヒントが付くの。
- もう `dig` や `netcat` を手で叩かなくていいから、Cloudflare Tunnel の運用やトラブルシューティングをしてる人にうれしいアップデートだよ！
