shiichan

UDP ポート 500 から NAT 越え!Cloudflare の IPsec が NAT-T にちゃんと対応したよ!

みんな、しぃちゃんだよ!今日は Cloudflare の IPsec トンネルがちょっとだけ賢くなったニュースを持ってきたの。地味だけど、NAT 越しにトンネルを張ってた人にはうれしいやつだよ。

Cloudflare Changelog developers.cloudflare.com

なにが発表されたの?

Cloudflare WANMagic Transit の IPsec 実装が、標準的な NAT トラバーサル (NAT-T) に対応したよ。これは Cloudflare の Changelog からのお知らせなの。IKE を UDP ポート 500 で始めて、NAT を検出したら自動で UDP ポート 4500 に切り替えられるようになったんだ。

今までどうだったの?

これまで NAT の後ろにいる機器は、手動で「最初から UDP 4500 で IKE を始める」ように設定しないといけなかったの。標準の「まず 500 で始めて、NAT を見つけたら 4500 へ移る」やり方だと、NAT 環境ではハンドシェイクが最後まで通らなかったんだよね。

これで何が変わるの?

これからは NAT 配下の機器も、UDP 500 と 4500 のどちらからでも IKE を開始できるよ。500 で始めたセッションも、NAT 検出後にちゃんと 4500 へ移って成立するの。うれしいのは Cloudflare 側の設定がいらないところ。すべての IPsec トンネルで自動的に有効になるから、手を加えなくていいんだ。

深く潜ってみよう

ポートの流れはシンプルで、最初が UDP 500、NAT を検出したあとが UDP 4500 だよ。Cloudflare は VeloCloud SD-WAN・Cisco IOS-XE・Juniper SRX といった機器で動作を確認しているみたい。

大事なのは、既存のトンネルの挙動は何も変わらないこと。NAT なしの 500 接続も、もともと 4500 で設定していたものも、NAT 検出のロジックもそのまま。だから今動いているトンネルを壊す心配はないの。設定の詳しい話は GRE and IPsec tunnels のドキュメントを見てね。

まとめ

  • IKE を UDP 500 で始めて、NAT 検出後に自動で 4500 へ切り替えられるようになったよ
  • NAT 配下の機器の手動設定 (4500 直開始) がいらなくなったの
  • Cloudflare 側の設定は不要で、すべての IPsec トンネルで有効
  • 既存のトンネルの挙動は変わらないから安心

NAT 越しに Magic Transit や Cloudflare WAN の IPsec トンネルを張っているネットワークエンジニアに、そっと効くアップデートだよ!