この記事では、Azure portal、Azure CLI、または Azure PowerShell を使用して、ExpressRoute 経由で Azure 内のリソースに接続するための IPv6 サポートを追加する方法について説明します。
Note
ポータル エクスペリエンスのいくつかの側面は引き続き実装されています。 そのため、Azure portal を使用する場合は、このドキュメントに記載されている手順の正確な順序に従って、IPv6 のサポートを正常に追加します。 具体的には、ポータルで新しい仮想ネットワーク ゲートウェイを作成する "前に"、仮想ネットワークとサブネットを作成するか、または既存の仮想ネットワークと GatewaySubnet に IPv6 アドレス空間を追加してください。
Prerequisites
Azure Cloud Shell
Azure は、ブラウザーから使用できる対話型シェル環境である Azure Cloud Shell をホストします。 Cloud Shell で Bash または PowerShell を使用して、Azure サービスを操作できます。 Cloud Shell にプレインストールされているコマンドを使用すると、ローカル環境に何もインストールしなくても、この記事のコードを実行できます。
Azure Cloud Shell を起動するには:
Option |
Example/Link |
コードまたはコマンド ブロックの右上隅にある [使ってみる] を選択します。
[使ってみる] を選択しても、コードまたはコマンドは Cloud Shell に自動的にはコピーされません。 |
|
https://shell.azure.com に移動するか、[Cloud Shell を起動する] ボタンを選択して、ブラウザーで Cloud Shell を開きます。 |
|
Azure portal の右上にあるメニュー バーの [Cloud Shell] ボタンを選択します。 |
|
Azure Cloud Shell を使用するには、以下のようにします。
Cloud Shell を起動します。
コード ブロック (またはコマンド ブロック) の [コピー] ボタンを選択し、コードまたはコマンドをコピーします。
Windows および Linux では Ctrl+Shift+V を選択し、macOS では Cmd+Shift+V を選択して、コードまたはコマンドをクラウドシェルセッションに貼り付けます。
「を選択し、 を入力してコードまたはコマンドを実行します。」
この記事の手順と例は、Azure PowerShell Az モジュールを使用します。 Az モジュールをコンピューターにローカルにインストールするには、「Azure PowerShellのインストール 参照してください。 新しい Az モジュールの詳細については、「新しい Azure PowerShell Az モジュールの概要」を参照してください。 PowerShell コマンドレットは頻繁に更新されます。 最新バージョンを実行していないと、手順で指定する値が失敗する場合があります。 システムにインストールされている PowerShell のバージョンを確認するには、Get-Module -ListAvailable Az
コマンドレットを使用します。
Azure Cloud Shell を使用すると、Azure PowerShell または CLI をローカルにインストールしなくても、ほとんどの PowerShell コマンドレットおよび CLI コマンドを実行できます。 Azure Cloud Shell は、無料の対話型シェルで、一般的な Azure ツールが事前にインストールされており、アカウントで使用できるように構成されています。 この記事に含まれるコードを Azure Cloud Shell で実行するには、Cloud Shell セッションを開き、コード ブロック上の [コピー] ボタンを使ってコードをコピーし、Ctrl + Shift + V キー (Windows と Linux) または command + Shift + V キー (macOS) を押して Cloud Shell セッションに貼り付けます。 テキストを貼り付けても自動的には実行されません。コードを実行するには、Enter キーを押します。
Cloud Shell は、次のようにいくつかの方法で起動することができます。
Option |
Link |
コード ブロックの右上隅にある [使ってみる] をクリックします。 |
|
ブラウザーで Cloud Shell を開きます。 |
 |
Azure Portal の右上のメニューの [Cloud Shell] ボタンをクリックします。 |
|
|
|
ExpressRoute 回線に IPv6 プライベート ピアリングを追加する
ExpressRoute 回線を作成するか、変更する既存の回線に移動します。
[Azure プライベート] のピアリング構成を選択します。
[サブネット] に対して [両方] を選択して、既存の IPv4 プライベート ピアリング構成に IPv6 プライベート ピアリングを追加するか、[IPv6] を選択して、新しい回線で IPv6 プライベート ピアリングのみを有効にします。 プライマリ リンクとセカンダリ リンク用に所有している /126 IPv6 サブネットのペアを指定します。 これらの各サブネットから、ユーザーは 1 番目に使用可能な IP アドレスを自分のルーターに割り当て、Microsoft は 2 番目に使用可能な IP アドレスをそのルーターに使用します。 すべてのパラメーターを定義したら、ピアリング構成を保存します。
構成が正常に受け入れられると、次の例のようなものが表示されます。
ExpressRoute 回線を作成するか、既存の回線を使用します。 以下のコマンドを実行して、回線の詳細を表示します。
az network express-route show --resource-group "<ExpressRouteResourceGroup>" --name "<MyCircuit>"
以下のコマンドを実行して、回線のプライベート ピアリング構成を表示します。
az network express-route peering show -g "<ExpressRouteResourceGroup>" --circuit-name "<MyCircuit>" --name AzurePrivatePeering
既存の IPv4 プライベート ピアリング構成に IPv6 プライベート ピアリングを追加します。 プライマリ リンクとセカンダリ リンク用に所有している /126 IPv6 サブネットのペアを指定します。 これらの各サブネットから、ユーザーは 1 番目に使用可能な IP アドレスを自分のルーターに割り当て、Microsoft は 2 番目に使用可能な IP アドレスをそのルーターに使用します。
az network express-route peering update -g "<ExpressRouteResourceGroup>" --circuit-name "<MyCircuit>" --name AzurePrivatePeering --ip-version ipv6 --primary-peer-subnet "<X:X:X:X/126>" --secondary-peer-subnet "<Y:Y:Y:Y/126>"
ExpressRoute 回線を作成するか、既存の回線を使用します。
Get-AzExpressRouteCircuit コマンドを実行して回線を取得します。
$ckt = Get-AzExpressRouteCircuit -Name "ExpressRouteARMCircuit" -ResourceGroupName "ExpressRouteResourceGroup"
Get-AzExpressRouteCircuitPeeringConfig を実行して、回線のプライベート ピアリング構成を取得します。
Get-AzExpressRouteCircuitPeeringConfig -Name "AzurePrivatePeering" -ExpressRouteCircuit $ckt
既存の IPv4 プライベート ピアリング構成に IPv6 プライベート ピアリングを追加します。 プライマリ リンクとセカンダリ リンク用に所有している /126 IPv6 サブネットのペアを指定します。 これらの各サブネットから、ユーザーは 1 番目に使用可能な IP アドレスを自分のルーターに割り当て、Microsoft は 2 番目に使用可能な IP アドレスをそのルーターに使用します。
Note
ピア ASN と VlanId は、IPv4 プライベート ピアリング構成のピアと一致している必要があります。
Set-AzExpressRouteCircuitPeeringConfig -Name "AzurePrivatePeering" -ExpressRouteCircuit $ckt -PeeringType AzurePrivatePeering -PeerASN 100 -PrimaryPeerAddressPrefix "3FFE:FFFF:0:CD30::/126" -SecondaryPeerAddressPrefix "3FFE:FFFF:0:CD30::4/126" -VlanId 200 -PeerAddressType IPv6
Set-AzExpressRouteCircuit -ExpressRouteCircuit $ckt
構成が正常に保存されたら、 Get-AzExpressRouteCircuit コマンドを実行して回線を再度取得します。 応答は、次の例のようになります。
Name : ExpressRouteARMCircuit
ResourceGroupName : ExpressRouteResourceGroup
Location : eastus
Id : /subscriptions/***************************/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit
Etag : W/"################################"
ProvisioningState : Succeeded
Sku : {
"Name": "Standard_MeteredData",
"Tier": "Standard",
"Family": "MeteredData"
}
CircuitProvisioningState : Enabled
ServiceProviderProvisioningState : Provisioned
ServiceProviderNotes :
ServiceProviderProperties : {
"ServiceProviderName": "Equinix",
"PeeringLocation": "Washington DC",
"BandwidthInMbps": 50
}
ExpressRoutePort : null
BandwidthInGbps :
Stag : 29
ServiceKey : **************************************
Peerings : [
{
"Name": "AzurePrivatePeering",
"Etag": "W/\"facc8972-995c-4861-a18d-9a82aaa7167e\"",
"Id": "/subscriptions/***************************/resourceGroups/ExpressRouteResourceGroup/providers/Microsoft.Network/expressRouteCircuits/ExpressRouteARMCircuit/peerings/AzurePrivatePeering",
"PeeringType": "AzurePrivatePeering",
"State": "Enabled",
"AzureASN": 12076,
"PeerASN": 100,
"PrimaryPeerAddressPrefix": "192.168.15.16/30",
"SecondaryPeerAddressPrefix": "192.168.15.20/30",
"PrimaryAzurePort": "",
"SecondaryAzurePort": "",
"VlanId": 200,
"ProvisioningState": "Succeeded",
"GatewayManagerEtag": "",
"LastModifiedBy": "Customer",
"Ipv6PeeringConfig": {
"State": "Enabled",
"PrimaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::/126",
"SecondaryPeerAddressPrefix": "3FFE:FFFF:0:CD30::4/126"
},
"Connections": [],
"PeeredConnections": []
},
]
Authorizations : []
AllowClassicOperations : False
GatewayManagerEtag :
既存の仮想ネットワークへの接続を更新する
既存の Azure リソースで IPv6 プライベート ピアリングを使用するには、次の手順に従います。
IPv6 プライベート ピアリングを使用する Azure リソースの既存環境がある場合は、以下の手順のようにします。
ExpressRoute 回線が接続されている仮想ネットワークに移動します。
[アドレス空間] タブに移動し、仮想ネットワークに IPv6 アドレス空間を追加します。 アドレス空間を保存します。
[サブネット] タブに移動し、 [GatewaySubnet] を選択します。
[Add IPv6 address space](IPv6 アドレス空間を追加する) チェックボックスをオンにし、サブネットの IPv6 アドレス空間を指定します。 ゲートウェイ IPv6 サブネットは /64 以上である必要があります。 すべてのパラメーターを定義したら、構成を保存します。
ゾーン冗長ゲートウェイが既にある場合は、PowerShell で次のコマンドを実行して IPv6 の接続を有効にします (変更が反映されるまで、最大で 1 時間かかることがあります)。 それ以外の場合は、任意の SKU と標準の静的パブリック IP アドレスを使用して、仮想ネットワーク ゲートウェイを作成します。 FastPath を使用する場合は、UltraPerformance または ErGw3AZ を使用します (このオプションは ExpressRoute Direct を使用する回線でのみ利用できます)。
$gw = Get-AzVirtualNetworkGateway -Name "GatewayName" -ResourceGroupName "ExpressRouteResourceGroup"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $gw
IPv6 アドレス空間を、ご自身の ExpressRoute 回線が接続されている仮想ネットワークに追加します。
az network vnet update -g "<MyResourceGroup>" -n "<MyVNet>" --address-prefixes "X:X:X:X::/64"
ゲートウェイ サブネットに IPv6 アドレス空間を追加します。 ゲートウェイ IPv6 サブネットは /64 以上である必要があります。
az network vnet subnet update -g "<MyResourceGroup>" -n "<MySubnet>" -vnet-name "<MyVNet>" --address-prefixes "10.0.0.0/26", "X:X:X:X::/64"
既存のゾーン冗長ゲートウェイがある場合は、次を実行して IPv6 接続を有効にします (変更が反映されるまでに最大 1 時間かかることがあります)。 それ以外の場合は、SKU を使用して仮想ネットワーク ゲートウェイを作成します。 FastPath を使用する場合は、UltraPerformance または ErGw3AZ を使用します (この機能は、ExpressRoute Direct を使用する回線でのみ利用できることに注意してください)。
az network vnet-gateway update --name "<GatewayName>" --resource-group "<MyResourceGroup>"
ExpressRoute 回線が接続されている仮想ネットワークを取得します。
$vnet = Get-AzVirtualNetwork -Name "VirtualNetwork" -ResourceGroupName "ExpressRouteResourceGroup"
仮想ネットワークに IPv6 アドレス空間を追加します。
$vnet.AddressSpace.AddressPrefixes.add("ace:daa:daaa:deaa::/64")
Set-AzVirtualNetwork -VirtualNetwork $vnet
ゲートウェイ サブネットに IPv6 アドレス空間を追加します。 ゲートウェイ IPv6 サブネットは /64 以上である必要があります。
Set-AzVirtualNetworkSubnetConfig -Name GatewaySubnet -VirtualNetwork $vnet -AddressPrefix "10.0.0.0/26", "ace:daa:daaa:deaa::/64"
Set-AzVirtualNetwork -VirtualNetwork $vnet
既存のゾーン冗長ゲートウェイがある場合は、次を実行して IPv6 接続を有効にします (変更が反映されるまでに最大 1 時間かかることがあります)。 それ以外の場合は、SKU を使用して仮想ネットワーク ゲートウェイを作成します。 FastPath を使用する場合は、UltraPerformance または ErGw3AZ を使用します (この機能は、ExpressRoute Direct を使用する回線でのみ利用できることに注意してください)。
$gw = Get-AzVirtualNetworkGateway -Name "GatewayName" -ResourceGroupName "ExpressRouteResourceGroup"
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $gw
Note
ゾーン冗長ではない既存のゲートウェイ (Standard、High Performance、または Ultra Performance SKU) があり、Basic SKU のパブリック IP アドレスを使用している場合は、任意の SKU を使用してゲートウェイを削除して再作成する必要があります。
ゾーン冗長 SKU の種類 (Standard、High Performance、または Ultra Performance) のゲートウェイは、可用性ゾーンでサポートされているリージョンにのみデプロイできます。
新しい仮想ネットワークへの接続を作成する
IPv6 プライベート ピアリング経由で新しい Azure リソースセットに接続するには、次の手順に従います。
Limitations
IPv6 のサポートは、グローバル Azure リージョン内のデプロイへの接続に使用できますが、次のユース ケースはサポートされていません。
- ゾーン冗長ではない "既存の" ExpressRoute ゲートウェイへの接続。 標準の静的 IP アドレスを使用する "新しく" 作成された任意の SKU の ExpressRoute ゲートウェイは (ゾーン冗長かどうかを問わず)、デュアルスタックの ExpressRoute 接続に使用できます
- ExpressRoute と Virtual WAN の使用
-
ルート サーバーでの ExpressRoute の使用 (ポータルのみ)
- ExpressRoute Direct 以外の回線の FastPath
- ピアリングの場所 (ドバイ) に回線がある FastPath
- IPv6 トラフィックの場合の VPN Gateway との共存。 デュアルスタックの仮想ネットワークでは VPN Gateway との共存を引き続き構成できますが、VPN Gateway では IPv4 トラフィックのみがサポートされます。
- プライベート ピアリングで IPv4 のみが有効になっている ExpressRoute 回線に、デュアルスタック ExpressRoute 仮想ネットワーク ゲートウェイを接続することはできません。 ExpressRoute 回線でも IPv6 を有効にする必要があります。 また、オンプレミスの CPE デバイスで IPv6 を構成する必要があります。
Next steps
ExpressRoute に関する問題のトラブルシューティングを行うには、次の記事を参照してください。