Azure Private Linkは、2026年8月にIPv6 Private EndpointのPublic Previewを開始しました。これにより、Azure Virtual Network内のIPv6クライアントや、ExpressRouteで接続したオンプレミスのIPv6環境から、Azure StorageやAzure SQL DatabaseなどへIPv6ベースでプライベート接続できます。
ただし、IPv6対応を有効にするだけで既存環境をそのまま移行できるわけではありません。プレビュー機能の登録、IPv4とIPv6のデュアルスタックVNet、IPv6 Private Endpoint、Private DNSのAAAAレコードが必要です。さらに、利用できるリージョンとPaaSサービスは限定されており、SLAも提供されません。現時点では、本番環境へ全面導入するよりも、検証環境で接続方式やDNS設計を確認する段階と考えるのが安全です。(Microsoft Learn)
本記事では、Azure Private LinkのIPv6対応でできること、必要な構成、Azure CLIによるPrivate Endpointの作成方法、ExpressRoute経由のオンプレミス接続、Public Previewで注意すべき制限を整理します。
Azure Private LinkのIPv6対応でできること
Azure Private Linkでは、Azure PaaSリソースに対して、VNetのアドレス空間に属するプライベートIPアドレスを持つPrivate Endpointを作成します。
IPv6対応のPublic Previewでは、このPrivate EndpointにIPv6アドレスを割り当てられるようになりました。クライアントはAzure PaaSの通常のFQDNを利用しつつ、DNSでIPv6 Private Endpointへ名前解決し、Microsoftのバックボーンネットワークを通じて接続します。PaaSリソースをパブリックインターネットへ公開せずに接続できる点は、従来のIPv4 Private Endpointと同じです。(Microsoft Learn)
Public Previewで想定されている接続パターンは、次の2つです。
| 接続元 | 通信経路 | 主な用途 |
|---|---|---|
| Azure VNet内のIPv6クライアント | IPv6クライアント → IPv6 Private Endpoint → Azure PaaS | Azure上のアプリケーションやVMからの接続 |
| オンプレミスのIPv6クライアント | オンプレミス → ExpressRoute → Azure Virtual Network routing appliance → IPv6 Private Endpoint → Azure PaaS | データセンターや拠点からのハイブリッド接続 |
オンプレミス接続では、ExpressRouteからPrivate Endpointへ直接転送するだけではありません。Azure Virtual Network routing applianceを経由させ、IPv6 Private Endpointのプレフィックスに対するユーザー定義ルートを構成する必要があります。(Microsoft Learn)
IPv6のみのVNetではなくデュアルスタックが前提
名称から「IPv6のみのVNetで利用できる」と考えやすいものの、Public Previewの前提条件はIPv4とIPv6の両方を持つデュアルスタックVNetです。
Private Endpointを配置するサブネットもデュアルスタックで構成し、接続元のVMなどにもIPv6アドレスを割り当てます。したがって、現時点ではIPv4を完全に排除したIPv6専用構成ではなく、既存のIPv4環境を維持しながらIPv6経路を追加する移行方式が基本です。(Microsoft Learn)
対応リージョンとPaaSサービス
2026年9月2日時点で、Azure Private Link over IPv6のPublic Previewが利用できるリージョンは次のとおりです。
- West Central US
- East Asia
- UK South
- Central US
- North Europe
日本のAzure利用者にとって重要なのは、Japan EastとJapan Westが上記一覧に含まれていない点です。日本リージョン内で既存リソースを運用している場合、そのままIPv6 Private Endpointを追加できるとは限りません。検証用リソースを対応リージョンへ作成するか、日本リージョンへの対応拡大を待つ必要があります。(Microsoft Learn)
Public Previewで対応しているPaaSサービスは、次の4種類です。
| サービス | Private Endpointのサブリソース例 | Private DNSゾーン例 |
|---|---|---|
| Azure Storage | blob | privatelink.blob.core.windows.net |
| Azure SQL Database | sqlServer | privatelink.database.windows.net |
| Azure Key Vault | vault | privatelink.vaultcore.azure.net |
| Azure Data Explorer | cluster | privatelink.{regionName}.kusto.windows.net |
Azure Storageでは、Blob、File、Queue、Table、Data Lake Storage Gen2などでサブリソースとPrivate DNSゾーンが異なります。たとえば、Blob用のPrivate Endpointを作成しても、Azure FilesやQueueの接続先を自動的にカバーするわけではありません。利用するストレージサービスごとに、必要なサブリソースとDNSゾーンを整理してください。(Microsoft Learn)
導入前に満たすべき条件
Azure Private LinkのIPv6対応を試す前に、次の条件を確認します。
| 確認項目 | 必要な状態 |
|---|---|
| プレビュー機能 | SupportIPv6PrivateEndpointが登録済み |
| リージョン | Public Previewの対応リージョン |
| PaaSサービス | Storage、SQL Database、Key Vault、Data Explorerのいずれか |
| VNet | IPv4とIPv6のデュアルスタック |
| Private Endpoint用サブネット | IPv4とIPv6のデュアルスタック |
| VNetポリシー | privateEndpointVNetPoliciesをBasicに設定 |
| サブネットポリシー | privateEndpointNetworkPoliciesをRouteTableEnabledに設定 |
| 接続元 | IPv6アドレスを持つVMまたはオンプレミスクライアント |
| DNS | PaaSのFQDNをIPv6 Private Endpointへ解決可能 |
| リージョン配置 | PaaSリソースとPrivate Endpointを同一リージョンに配置 |
特に見落としやすいのが、PaaSリソースとPrivate Endpointのリージョンです。通常のPrivate Linkにはリージョンをまたぐ利用シナリオがありますが、IPv6 Public Previewではクロスリージョン接続がサポートされていません。(Microsoft Learn)
Azure VNet内からIPv6 Private Endpointへ接続する手順
プレビュー機能をサブスクリプションへ登録する
最初に、対象サブスクリプションでPrivate Link over IPv6のプレビュー機能を登録します。
az feature register \
--namespace Microsoft.Network \
--name SupportIPv6PrivateEndpoint \
--subscription <subscription-id>
az provider register \
--namespace Microsoft.Network \
--subscription <subscription-id>
登録後は、次のコマンドで状態を確認します。
az feature show \
--namespace Microsoft.Network \
--name SupportIPv6PrivateEndpoint \
--subscription <subscription-id> \
--query properties.state \
--output tsv
結果がRegisteredになってから、VNetやPrivate Endpointの構築へ進みます。Pendingの状態では、リソース作成時に機能未登録のエラーが発生する可能性があります。
プレビュー機能を登録するには、サブスクリプションに対するMicrosoft.Features/*の権限が必要です。組み込みロールでは所有者または共同作成者に含まれます。権限を制限している組織では、ネットワーク設定だけでなく、プレビュー機能を登録できる権限が付与されているか確認してください。(Microsoft Learn)
デュアルスタックVNetとサブネットを用意する
VNetにはIPv4アドレス空間とIPv6アドレス空間の両方を設定します。Private Endpointを配置するサブネットにも、IPv4とIPv6の両方のプレフィックスが必要です。
あわせて、VNet側では次のポリシーを設定します。
{
"privateEndpointVNetPolicies": "Basic"
}
Private Endpoint用サブネットでは、次のポリシーを設定します。
{
"privateEndpointNetworkPolicies": "RouteTableEnabled"
}
Public PreviewではNSGを利用したPrivate Endpointの制御がサポートされていないため、RouteTableEnabledを指定してルートテーブルのみを有効にする構成が基本です。
既存VNetを変更する場合は、次の点も確認してください。
- 既存のIPv4アドレス範囲と重複しないIPv6プレフィックスを使用する
- VNetピアリングを利用する場合はIPv6アドレス空間も相互に到達可能にする
- 接続テスト用VMのNICにIPv6 IP構成を追加する
- OS側でIPv6が無効化されていないことを確認する
- UDRやファイアウォールでIPv6経路が欠落していないことを確認する
Private EndpointだけをIPv6化しても、接続元VMや途中のルーティングがIPv4のみであればIPv6経路は成立しません。接続元、VNet、サブネット、DNS、Private Endpointを一つの経路として確認する必要があります。(Microsoft Learn)
IPv6 Private Endpointを作成する
IPv6 Private Endpointを作成する際の重要な指定が、--ip-version-type IPv6です。
az network private-endpoint create \
--name <private-endpoint-name> \
--resource-group <resource-group-name> \
--vnet-name <vnet-name> \
--subnet <subnet-name> \
--private-connection-resource-id <target-resource-id> \
--group-id <group-id> \
--connection-name <connection-name> \
--location <region> \
--ip-version-type IPv6
Azure StorageのBlobサービスへ接続する場合、--group-idには通常blobを指定します。
az network private-endpoint create \
--name pe-storage-blob-ipv6 \
--resource-group rg-private-link-ipv6 \
--vnet-name vnet-dualstack \
--subnet snet-private-endpoint \
--private-connection-resource-id <storage-account-resource-id> \
--group-id blob \
--connection-name psc-storage-blob-ipv6 \
--location eastasia \
--ip-version-type IPv6
既存のIPv4 Private EndpointをそのままIPv6として扱うのではなく、IPバージョンを指定したPrivate Endpointとして構成します。作成後はPrivate Endpointに関連付けられたネットワークインターフェイスを開き、IPv6アドレスが割り当てられていることを確認してください。(Microsoft Learn)
Private DNSでAAAAレコードを解決する
IPv6 Private Endpointを作成しても、DNSがパブリックIPアドレスを返していれば、アプリケーションはPrivate Linkを経由しません。
サービスに対応したAzure Private DNSゾーンを作成し、Private Endpointおよび接続元VNetと関連付けます。最終的に、通常のPaaS FQDNがPrivate EndpointのIPv6アドレスへ解決される状態にします。(Microsoft Learn)
Azure Storage Blobの例では、アプリケーションから次の通常のFQDNを使用します。
<storage-account>.blob.core.windows.net
DNSでは、次のような流れで名前解決されます。
<storage-account>.blob.core.windows.net
↓ CNAME
<storage-account>.privatelink.blob.core.windows.net
↓ AAAA
<IPv6 Private Endpoint address>
接続文字列やアプリケーション設定を、Private Link専用FQDNやIPv6アドレスへ直接書き換える必要はありません。通常のサービスFQDNを維持し、接続元のネットワークによってPrivate Endpointへ解決させるのが基本です。
Azure SQL Databaseでは、接続先に次の標準FQDNを使用します。
<server-name>.database.windows.net
IPv6アドレスを直接指定したり、<server-name>.privatelink.database.windows.netを接続文字列へ直接指定したりすると、SQL Gatewayが必要なFQDNを判断できず、ログインに失敗する可能性があります。Azure SQL Databaseでは標準FQDNを使用することが明示されています。(Microsoft Learn)
IPv6で接続できているか確認する
Azure Storageを例に、まずAAAAレコードを確認します。
nslookup <storage-account>.blob.core.windows.net
PowerShellでは、レコードタイプを指定すると確認しやすくなります。
Resolve-DnsName <storage-account>.blob.core.windows.net -Type AAAA
次のように、Private Link用FQDNとPrivate EndpointのIPv6アドレスが返ることを確認します。
<storage-account>.privatelink.blob.core.windows.net
AAAA: <private-endpoint-ipv6-address>
続いて、HTTPS接続を確認します。
curl -6 https://<storage-account>.blob.core.windows.net
Windowsでは、次のコマンドも利用できます。
Test-NetConnection <storage-account>.blob.core.windows.net `
-Port 443 `
-InformationLevel Detailed
認証していないStorageエンドポイントでは、HTTP 400や403が返ることがあります。それでも名前解決、TCP接続、TLS通信まで到達していれば、ネットワーク経路自体が成立している可能性があります。最終確認では、実際のアプリケーション、Azure SDK、マネージドIDなどを使ってデータプレーン操作までテストしてください。公式手順でも、FQDNのAAAAレコードとHTTPS接続の両方を確認する流れが示されています。(Microsoft Learn)
オンプレミスからExpressRouteで接続する構成
オンプレミスのIPv6クライアントから接続する場合、次の構成要素が必要です。
オンプレミスIPv6クライアント
↓
ExpressRoute
↓
ExpressRoute Gateway
↓
Azure Virtual Network routing appliance
↓
IPv6 Private Endpoint
↓
Azure PaaS
必要になる主なリソースは次のとおりです。
- ExpressRoute回線
- 接続方式に適したExpressRoute Gateway SKU
- デュアルスタック構成のAzure Virtual Network routing appliance
- IPv6 Private Endpoint
- Private EndpointのIPv6プレフィックスに対するユーザー定義ルート
- オンプレミスからPrivate EndpointのAAAAレコードを解決するDNS経路
GatewaySubnetへユーザー定義ルートを設定する
Private Link over IPv6の公式構成では、ルートテーブルでゲートウェイルートの伝達を有効にします。
Propagate gateway routes: Yes
そのうえで、次のルートを追加します。
| 設定項目 | 指定内容 |
|---|---|
| 宛先の種類 | IP Addresses |
| 宛先 | Private EndpointのIPv6プレフィックス |
| ネクストホップの種類 | Virtual appliance |
| ネクストホップアドレス | Azure Virtual Network routing applianceのIPv6アドレス |
作成したルートテーブルは、Azure Virtual Network routing applianceを配置したVNetのGatewaySubnetへ関連付けます。(Microsoft Learn)
オンプレミス側でも戻り経路が必要です。DNSだけがPrivate EndpointのIPv6アドレスを返していても、ExpressRouteとrouting applianceを経由する往復ルートが成立していなければ通信できません。
オンプレミスDNSからPrivate DNSを引けるようにする
オンプレミスのDNSサーバーは、そのままではAzure Private DNSゾーンを参照できません。Azure Private ResolverまたはAzure側のDNSフォワーダーを用意し、オンプレミスDNSから条件付きフォワーダーで問い合わせを転送します。
Azure SQL Databaseの場合は、privatelink.database.windows.netだけではなく、推奨されるパブリックDNSゾーンであるdatabase.windows.netを条件付き転送の対象にします。通常のFQDNから始まるCNAMEチェーンをAzure側で解決させるためです。(Microsoft Learn)
接続テストでは、オンプレミス端末から次の3点を順番に確認します。
- 通常のPaaS FQDNがPrivate EndpointのIPv6アドレスへ解決される
- TCPまたはHTTPS接続が成功する
- 実際の認証とデータ操作が成功する
DNS確認だけで「Private Link接続が成功した」と判断しないことが重要です。
Public Previewで注意すべき制限
SLAがなく本番ワークロードは推奨されない
Azure Private Link over IPv6はPublic Previewです。プレビュー期間中はSLAが提供されず、Microsoftも本番ワークロードでの利用を推奨していません。
そのため、次のような進め方が現実的です。
- 検証用サブスクリプションで機能を登録する
- 本番と異なるリソースグループやVNetを使用する
- IPv4経路を直ちに削除しない
- DNSの切り替え前後でロールバック手順を用意する
- 対応リージョンや制限の変更を定期的に確認する
Public Previewを使った接続を唯一の業務経路にすると、仕様変更や機能制限の影響を受けやすくなります。(Microsoft Learn)
PaaSリソースとPrivate Endpointは同一リージョンが必要
IPv6 Public Previewでは、接続先のPaaSリソースとPrivate Endpointを同じリージョンに配置する必要があります。クロスリージョン構成はサポートされません。
たとえば、East AsiaのVNetへIPv6 Private Endpointを作成し、Japan EastのStorage Accountへ接続する構成は、今回のPublic Previewのサポート範囲として扱わない方が安全です。リージョン選定は、VNetだけでなく接続先PaaSを含めて行ってください。(Microsoft Learn)
VPN、Virtual WAN、一般的なNVA構成は対象外
オンプレミス接続でサポートされるのは、ExpressRouteを使用するシナリオです。現時点では、VPN、Azure Virtual WAN、一般的なNetwork Virtual Applianceを使った構成はサポート対象に含まれていません。
公式構成で指定されているAzure Virtual Network routing applianceと、サードパーティー製ファイアウォールなどの一般的なNVAを混同しないようにしてください。既存NVAへIPv6ルートを追加すれば正式にサポートされる、とは判断できません。(Microsoft Learn)
NSGとASGによる制御はサポートされない
Public Previewでは、Private Link over IPv6に対するNetwork Security GroupとApplication Security Groupがサポートされていません。
IPv4 Private EndpointでNSGを使っている環境でも、同じセキュリティ設計をそのままIPv6へ適用できるとは限りません。アクセス制御はPaaS側の認証、Private Endpoint接続の承認、ルーティング、パブリックアクセス制御などを組み合わせて設計する必要があります。(Microsoft Learn)
接続元のIPv6アドレスがサービスログに残らない
Private Link over IPv6では暗黙的なNAT変換が行われるため、接続元クライアントの元のIPv6アドレスは、接続先PaaSのログに保持されません。
サービス側のログには、VNet側で変換された送信元IPアドレスが記録されます。端末単位のIPv6アドレスを監査やアクセス追跡に利用する設計では、大きな制約になります。
監査要件がある場合は、PaaSのログだけに依存せず、次の情報を組み合わせて追跡できるようにしてください。
- アプリケーションの認証ログ
- Microsoft Entra IDのサインイン情報
- ExpressRouteやルーティング側の監視情報
- 接続元システムの操作ログ
- 時刻を同期したアプリケーションログ
元のIPv6アドレスがPaaSログに残る前提で運用設計を進めないことが重要です。(Microsoft Learn)
Private Endpoint作成後もパブリックアクセスは別途確認する
Private Endpointを作成しただけでは、PaaSのパブリックエンドポイントが自動的に無効になるとは限りません。
Azure Storageでは、Private Linkを作成してもパブリックエンドポイントへの接続は自動的にブロックされません。Azure SQL Databaseでも、Private Endpoint接続を追加しただけでは論理サーバーのパブリックルーティングは既定で無効になりません。(Microsoft Learn)
安全な切り替え手順は次のとおりです。
- IPv6 Private Endpointを作成する
- Private DNSのAAAAレコードを確認する
- アプリケーションの接続テストを行う
- 運用監視と障害時の切り戻しを確認する
- PaaS側のパブリックネットワークアクセスを無効化または制限する
- 外部ネットワークから接続できないことを確認する
Private Linkの構築とパブリックアクセスの遮断は、別々の作業として管理してください。
よくある失敗と確認ポイント
| 症状 | 主な原因 | 確認する内容 |
|---|---|---|
| Private Endpoint作成時にエラーになる | プレビュー機能が未登録 | SupportIPv6PrivateEndpointがRegisteredか確認 |
| IPv6 Private Endpointを作れない | 非対応リージョンまたは非対応サービス | 対応リージョンと4種類の対象PaaSを確認 |
| Private EndpointがIPv4になる | IPバージョン指定漏れ | --ip-version-type IPv6を確認 |
| AAAAレコードが返らない | Private DNSゾーンやVNetリンクの不足 | サービスに対応したPrivate DNSゾーンとゾーングループを確認 |
| パブリックIPへ名前解決される | 問い合わせ元がPrivate DNSを参照していない | VNetリンク、DNSフォワーダー、Private Resolverを確認 |
| SQL Databaseへ接続できない | IPアドレスやPrivate Link用FQDNを直接指定 | <server>.database.windows.netを使用 |
| オンプレミスから到達できない | routing applianceまたはUDRの設定不足 | GatewaySubnet、ルート伝達、IPv6プレフィックス、戻り経路を確認 |
| NSGルールが期待どおり動かない | IPv6 PreviewではNSGが非対応 | NSG前提の設計を避け、PaaS認証やルートで代替 |
| PaaSログに端末のIPv6がない | 暗黙的なNAT変換 | VNet側で変換された送信元IPが記録される仕様を考慮 |
| インターネットからも接続できる | PaaSのパブリックアクセスが有効 | 接続確認後にPublic network accessを無効化または制限 |
トラブル発生時は、アプリケーション設定を先に変更するのではなく、DNS、ルート、TCP接続、認証の順に切り分けると原因を特定しやすくなります。
Azure Private LinkのIPv6対応を試すべきケース
今回のPublic Previewは、次のような組織に適しています。
| 試す価値が高いケース | 現時点では見送りやすいケース |
|---|---|
| Azure内でIPv6対応アプリケーションを検証している | Japan EastまたはJapan Westでの提供が必須 |
| 将来のIPv6移行に備えてPrivate Linkを評価したい | SLAが必要な本番システム |
| ExpressRouteを利用したIPv6ハイブリッド接続を検証したい | オンプレミス接続がVPNまたはVirtual WANのみ |
| StorageやSQL DatabaseへのIPv6プライベート経路を試したい | 対象外のPaaSサービスを利用している |
| デュアルスタック環境でIPv4依存を減らしたい | 接続元IPv6アドレスの完全な監査が必須 |
| DNSやルーティングを含むPoC環境を用意できる | NSGやASGによるPrivate Endpoint制御が必須 |
導入判断では、「IPv6アドレスを割り当てられるか」だけではなく、リージョン、DNS、オンプレミス経路、監査ログ、パブリックアクセス制御まで確認してください。
まとめ
Azure Private LinkのIPv6対応により、Azure VNet内のIPv6クライアントや、ExpressRoute接続されたオンプレミスIPv6環境から、Azure Storage、Azure SQL Database、Azure Key Vault、Azure Data ExplorerへIPv6 Private Endpointを使って接続できるようになりました。
構築時の要点は次のとおりです。
- サブスクリプションで
SupportIPv6PrivateEndpointを登録する - VNetとPrivate Endpoint用サブネットをデュアルスタックにする
- PaaSリソースとPrivate Endpointを同一の対応リージョンへ配置する
--ip-version-type IPv6を指定してPrivate Endpointを作成する- Private DNSで通常のPaaS FQDNをIPv6アドレスへ解決する
- オンプレミス接続ではExpressRouteとAzure Virtual Network routing applianceを使用する
- 接続確認後にPaaSのパブリックアクセスを別途無効化または制限する
- SLA、NSG非対応、送信元IPv6アドレスが保持されない制限を考慮する
まずは対応リージョンに小規模なデュアルスタックVNetと検証用PaaSリソースを用意し、AAAAレコード、IPv6経路、データプレーン通信の順に確認するのが適切です。本番移行は、一般提供への移行、対象リージョンの拡大、制限事項の解消を確認してから判断してください。

コメント