【Azure SQL】Private Endpoint接続時に接続ポリシー「既定値」がプロキシとなる仕様について

こんにちは。SCSK志村です。

Azure SQL Database で SQL Server を構成する際の設定項目に「接続ポリシー」があります。

設定値は「既定値」「リダイレクト」「プロキシ」の3種類から選択しますが、この「既定値」設定における挙動(特に Private Endpoint 利用時)について、私がドキュメントを読み間違えて悩んでしまったため、備忘録として記事にしました。

1. ドキュメントの記載

接続ポリシーは以下の公式ドキュメントに記載されています。

接続のアーキテクチャ – Azure SQL Database | Microsoft Learn

ドキュメントによると、選択できるポリシーは以下の3つのオプションで構成されています。

  • リダイレクト (推奨):
    クライアントは、データベースをホストしているノードへの直接接続を確立します。これにより、待機時間が短縮され、スループットが向上します。
    ※ポート 11000 - 11999 および 1433 の許可が必要です。
  • プロキシ:
    すべての接続が Azure SQL Database ゲートウェイ経由でプロキシ化されます。待機時間が長くなりスループットが低下する可能性がありますが、必要なポートは 1433 のみです。
  • 既定値:
    明示的に接続ポリシーを変更しない限り有効になる設定です。接続元に応じて、自動的に以下の挙動を使い分けます。            

    • Azure 内からの接続(例:Azure VM) → Redirect として動作
    • 外部からの接続(例:ローカルPC) → Proxy として動作

こちらの記事を読んで、私は最初、以下のような解釈をしていました。

当初の私の解釈:
「Azure内(仮想マシン)から発信する接続は『Redirect』だから、VMからSQL Databaseへの接続(Private Endpoint経由)も、リダイレクトになるはずだ。」

しかし、実際には Private Endpoint(プライベートエンドポイント)接続の場合、既定値は「プロキシ」となります。

この事実は別のドキュメントに記載してありました。

Azure Private Link – Azure SQL Database | Microsoft Learn

クライアントは明示的にリダイレクト接続ポリシーを選択する必要があります。

既定の接続ポリシーを使用する既存のプライベート エンドポイントでは、ポート 1433 でプロキシ接続ポリシーを使用します。
これを行う理由は、リダイレクトに必要なポート範囲が開いていないことが原因でクライアントのトラフィックが SQL Database に到達できなくなる状況を回避するためです。

Private Endpoint 経由では、リダイレクト接続ポリシーを明示的に指定する必要があるということですね。
リダイレクトに必要なポート範囲が開いていないことに対するケアとして、既定値がプロキシになっているようです。

事実はドキュメントからわかりましたが、せっかく調べたので実機検証もしてみました。

2. 実機検証

VMから Private Endpoint 経由で SQL Database へ接続した時の 接続ポートを比較してみました。

  • 確認方式:SSMSで Azure SQL Database に接続し、netstat コマンドで接続ポートを確認

検証結果サマリ

まとめると以下の通りです。「既定値」は「プロキシ方式」で通信していることがわかります。

設定値 接続ポート 通信方式
リダイレクト 1433以外 (例: 12119) リダイレクト接続
プロキシ 1433 プロキシ接続
既定値 1433 プロキシ接続

 参考:コマンド実行結果(クリックで展開)

コマンド実行結果です。

① リダイレクト設定の場合

▼ netstat 結果:ポート 12119 (Redirect)

TCP 10.0.0.4:53852 10.x.x.x:12119 ESTABLISHED

② プロキシ設定の場合

▼netstat 結果:ポート 1433 (Proxy)
TCP 10.0.0.4:53855 10.x.x.x:1433 ESTABLISHED

③ 既定値の場合        

▼ netstat 結果:ポート 1433 (Proxy)
VMからの接続ですが、ポートは1433とProxyと同じポートになっています。

TCP 10.0.0.4:53860 10.x.x.x:1433 ESTABLISHED

3. まとめ

Azure SQL Database への接続は、Microsoft としてはリダイレクトを推奨しています。
※2026年2月時点でプロキシ推奨と読み取れる記述もありますが、恐らく自動翻訳によるミスです。

それにも関わらず既定値がプロキシなのは、ユーザーが複雑なネットワーク要件を意識せずとも繋がることを優先した安全側の設計思想だと思われます。(あくまで所感ですが)

接続方式の違いはパフォーマンスに直結するため、この仕様は設計時にしっかり把握しておきたいポイントです。

この記事が、Azure における SQL Database 設計のご参考になれば幸いです。

タイトルとURLをコピーしました