✔️ 適用対象: Microsoft.Storage リソース プロバイダーで作成された従来の SMB ファイル共有と NFS ファイル共有
✖️ 次には適用されません: Microsoft.FileShares リソース プロバイダーで作成されたファイル共有
サイト間 VPN 接続を使用すると、開いているインターネット経由でデータを送信することなく、オンプレミス ネットワークから Azure ファイル共有をマウントできます。
Azure VPN Gatewayを使ってサイト間VPNを設定できます。これはVPNサービスを提供するAzureリソースです。 VPN Gatewayはストレージアカウントや他のトップレベルのAzureリソースと共にリソースグループに展開します。
続ける前に、Azure Filesのネットワークオプションについて詳しく解説しているので、Azure Filesのネットワーク概要をお読みください。
この記事では、Azureファイル共有を直接オンプレミスでマウントするためのサイトツーサイトVPNの設定手順を詳述します。 Azure File Syncの同期トラフィックをサイト間VPN経由でルーティングしたい場合は、「Azure File Syncプロキシおよびファイアウォール設定の設定」をご覧ください。
前提条件
オンプレミスでマウントしたいAzureクラシックのファイル共有。 「Azure classicファイル共有を作成する」を参照してください。
VPN Gatewayで使う仮想ネットワークに展開されたストレージアカウントのプライベートエンドポイントです。 プライベート エンドポイントは、仮想ネットワーク アドレス空間内からストレージ アカウントにプライベート IP アドレスを割り当て、オンプレミスクライアントが VPN トンネル経由で Azure Files にアクセスできるようにします。 プライベートエンドポイントの作成方法については、「Azure Files network endpointsの設定」をご覧ください。
Azure VPN Gateway と互換性のある、オンプレミスのデータセンター内のネットワーク アプライアンスまたはサーバー。 Azure Files は、選択されたオンプレミス ネットワーク アプライアンスに依存しませんが、Azure VPN Gateway にはテスト済みのデバイスの一覧が保持されています。
既存のネットワークアプライアンスがない場合は、Windows Serverにルーティング&リモートアクセス(RRAS)という組み込みサーバーロールがあり、オンプレミスのネットワークアプライアンスとして利用できます。 Windows Server でルーティングとリモート アクセスを構成する方法の詳細については、「RAS ゲートウェイ」を参照してください。
新規または既存の仮想ネットワークを構成し、ストレージ アカウントのアクセスを制限するには、次の手順に従います。
Azureポータルにサインインし、オンプレミスにマウントしたいAzureファイル共有が入っているストレージアカウントに行ってください。
サービス メニューの [セキュリティとネットワーク] で [ネットワーク] を選択します。 ストレージ アカウントの作成時にそのアカウントに仮想ネットワークを追加していない限り、結果のウィンドウでは、[パブリック ネットワーク アクセス] の下に [すべてのネットワークから有効] ラジオ ボタンが選択されています。
ストレージ アカウントのアクセスを特定の仮想ネットワークに制限するには、 選択した仮想ネットワークと IP アドレスから [有効] オプション ボタンを選択します。
[仮想ネットワーク] の小見出しで、[+ 既存の仮想ネットワークを追加] または [+ 新しい仮想ネットワークを追加] のどちらかを選択します。 新しい仮想ネットワークを作成すると、新しい Azure リソースが作成されます。 新規または既存の仮想ネットワーク リソースは、ストレージ アカウントと同じリージョンに存在する必要がありますが、同じリソース グループまたはサブスクリプションに存在する必要はありません。 ただし、仮想ネットワークをデプロイするリソース グループ、リージョン、サブスクリプションは、次の手順で仮想ネットワーク ゲートウェイをデプロイする場所と一致している必要があることに注意してください。
既存の仮想ネットワークを追加する場合は、まず仮想ネットワーク上にゲートウェイ サブネットを作成する必要があります。 その仮想ネットワークの 1 つ以上のサブネットを選択するよう要求されます。 新しい仮想ネットワークを作成する場合、作成プロセスの一環としてサブネットが作成されます。 後で、仮想ネットワークの Azure リソースの生成を通じてサブネットを追加できます。
ページの最上部で [保存] を選択します。
Azure にサインインします。
Connect-AzAccount
新しい仮想ネットワークとゲートウェイ サブネットを追加する場合は、次のスクリプトを実行します。 既存の仮想ネットワークがあり、それを使用したい場合は、この手順をスキップして手順 3 に進みます。
<your-subscription-id>、<resource-group>、<storage-account-name> は、必ず独自の値で置き換えてください。 必要に応じて、 $location と $vnetNameに独自の値を指定します。
-AddressPrefix パラメーターでは、仮想ネットワークとサブネットの IP アドレス ブロックを定義するため、それぞれを実際の値に置き換えます。
# Select subscription
$subscriptionId = "<your-subscription-id>"
Select-AzSubscription -SubscriptionId $subscriptionId
# Define parameters
$storageAccount = "<storage-account-name>"
$resourceGroup = "<resource-group>"
$location = "East US" # Change to desired Azure region
$vnetName = "myVNet"
# Virtual network gateway can only be created in subnet with name 'GatewaySubnet'.
$subnetName = "GatewaySubnet"
$vnetAddressPrefix = "10.0.0.0/16" # Update this address as per your requirements
$subnetAddressPrefix = "10.0.0.0/24" # Update this address as per your requirements
# Set current storage account
Set-AzCurrentStorageAccount -ResourceGroupName $resourceGroup -Name $storageAccount
# Define subnet configuration
$subnetConfig = New-AzVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix $subnetAddressPrefix
# Create a virtual network
New-AzVirtualNetwork -Name $vnetName -ResourceGroupName $resourceGroup -Location $location -AddressPrefix $vnetAddressPrefix -Subnet $subnetConfig
前の手順で、新しい仮想ネットワークとサブネットを作成済みの場合は、この手順はスキップしてください。 既存の仮想ネットワークがあり、それを使用したい場合は、仮想ネットワーク ゲートウェイをデプロイする前に、仮想ネットワーク上に ゲートウェイ サブネットを作成する必要があります。
既存の仮想ネットワークにゲートウェイ サブネットを追加するには、次のスクリプトを実行します。
<your-subscription-id>、<resource-group>、<virtual-network-name> は、必ず独自の値で置き換えてください。
$subnetAddressPrefix パラメーターはサブネットの IP アドレス ブロックを定義するため、ご自身の要件に従って、この IP アドレスを置き換えます。
# Select subscription
$subscriptionId = "<your-subscription-id>"
Select-AzSubscription -SubscriptionId $subscriptionId
# Define parameters
$storageAccount = "<storage-account-name>"
$resourceGroup = "<resource-group>"
$vnetName = "<virtual-network-name>"
# Virtual network gateway can only be created in subnet with name 'GatewaySubnet'.
$subnetName = "GatewaySubnet"
$subnetAddressPrefix = "10.0.0.0/24" # Update this address as per your requirements
# Set current storage account
Set-AzCurrentStorageAccount -ResourceGroupName $resourceGroup -Name $storageAccount
# Get the virtual network
$vnet = Get-AzVirtualNetwork -Name $vnetName -ResourceGroupName $resourceGroup
# Add the gateway subnet
Add-AzVirtualNetworkSubnetConfig -Name $subnetName -VirtualNetwork $vnet -AddressPrefix $subnetAddressPrefix
# Apply the configuration to the virtual network
Set-AzVirtualNetwork -VirtualNetwork $vnet
特定の仮想ネットワークからのトラフィックのみを許可するには、Update-AzStorageAccountNetworkRuleSet コマンドを使用し、-DefaultAction パラメーターを「Deny」に設定します。
Update-AzStorageAccountNetworkRuleSet -ResourceGroupName $resourceGroup -Name $storageAccount -DefaultAction Deny
仮想ネットワークとサブネット向けにネットワーク ルールを追加します。
$subnet = Get-AzVirtualNetwork -ResourceGroupName $resourceGroup -Name $vnetName | Get-AzVirtualNetworkSubnetConfig -Name $subnetName
Add-AzStorageAccountNetworkRule -ResourceGroupName $resourceGroup -Name $storageAccount -VirtualNetworkResourceId $subnet.Id
Azure にサインインします。
az login
新しい仮想ネットワークとゲートウェイ サブネットを追加する場合は、次のスクリプトを実行します。 既存の仮想ネットワークがあり、それを使用したい場合は、この手順をスキップして手順 3 に進みます。
<your-subscription-id>、<storage-account-name>、<resource-group> は、必ず独自の値で置き換えてください。
<virtual-network-name> は、作成する新しい仮想ネットワークの名前に置き換えます。
--address-prefix パラメーターと --subnet-prefixes パラメーターは、仮想ネットワークとサブネットの IP アドレス ブロックを定義するため、それぞれを実際の値に置き換えます。 仮想ネットワークは、リソース グループと同じリージョンに作成されます。
# Set your subscription
az account set --subscription "<your-subscription-id>"
# Define parameters
storageAccount="<storage-account-name>"
resourceGroup="<resource-group>"
vnetName="<virtual-network-name>"
# Virtual network gateway can only be created in subnet with name 'GatewaySubnet'.
subnetName="GatewaySubnet"
vnetAddressPrefix="10.0.0.0/16" # Update this address per your requirements
subnetAddressPrefix="10.0.0.0/24" # Update this address per your requirements
# Create a virtual network and subnet
az network vnet create \
--resource-group $resourceGroup \
--name $vnetName \
--address-prefix $vnetAddressPrefix \
--subnet-name $subnetName \
--subnet-prefixes $subnetAddressPrefix
前の手順で、新しい仮想ネットワークとサブネットを作成済みの場合は、この手順はスキップしてください。 既存の仮想ネットワークがあり、それを使用したい場合は、仮想ネットワーク ゲートウェイをデプロイする前に、仮想ネットワーク上に ゲートウェイ サブネットを作成する必要があります。
既存の仮想ネットワークにゲートウェイ サブネットを追加するには、次のスクリプトを実行します。
<your-subscription-id>、<resource-group>、<virtual-network-name> は、必ず独自の値で置き換えてください。
--address-prefixes パラメーターはサブネットの IP アドレス ブロックを定義するため、必要に応じて IP アドレス ブロックを置き換えます。
# Set your subscription
az account set --subscription "<your-subscription-id>"
# Define parameters
storageAccount="<storage-account-name>"
resourceGroup="<resource-group>"
vnetName="<virtual-network-name>"
# Virtual network gateway can only be created in subnet with name 'GatewaySubnet'.
subnetName="GatewaySubnet"
subnetAddressPrefix="10.0.0.0/24" # Update this address per your requirements
# Create the gateway subnet
az network vnet subnet create \
--resource-group $resourceGroup \
--vnet-name $vnetName \
--name $subnetName \
--address-prefixes $subnetAddressPrefix
特定の仮想ネットワークからのトラフィックのみを許可するには、az storage account update コマンドを使用し、--default-action パラメーターを「Deny」に設定します。
az storage account update --resource-group $resourceGroup --name $storageAccount --default-action Deny
仮想ネットワークとサブネット向けにネットワーク ルールを追加します。
subnetid=$(az network vnet subnet show --resource-group $resourceGroup --vnet-name $vnetName --name $subnetName --query id --output tsv)
az storage account network-rule add --resource-group $resourceGroup --account-name $storageAccount --subnet $subnetid
ストレージ アカウントのプライベート エンドポイントを作成する
プライベート エンドポイントは、仮想ネットワークのアドレス空間内からストレージ アカウントにプライベート IP アドレスを割り当てます。 VPN トンネル経由で接続されているオンプレミス クライアントがストレージ アカウントの完全修飾ドメイン名 (FQDN) を解決すると、名前はパブリック IP ではなくプライベート IP アドレスに解決され、トラフィックはトンネルを経由してルーティングされます。
プライベート エンドポイントがない場合、 storageaccount.file.core.windows.net はストレージ アカウントのパブリック IP アドレスに解決され、オンプレミスのルーティング テーブルはトラフィックをインターネット経由で直接送信し、VPN トンネル全体をバイパスします。
Azure portal で、ストレージ アカウントに移動します。 サービス メニューの [ セキュリティ + ネットワーク] で [ ネットワーク] を選択し、[ プライベート エンドポイント接続 ] タブを選択します。
[+ プライベート エンドポイント] を選択します。
[ 基本 ] タブで、サブスクリプション、リソース グループ、リージョンを選択します。 プライベート エンドポイントに名前を付けます。
[ リソース ] タブで、リソースの種類として Microsoft.Storage/storageAccounts を選択します。 リソースとしてストレージ アカウントを選択し、ターゲット サブリソースとして ファイル を選択します。
[ 仮想ネットワーク ] タブで、プライベート エンドポイントを配置する仮想ネットワークとサブネットを選択します。 これは、前のセクションで構成した仮想ネットワーク内のサブネットである必要があります (GatewaySubnet ではありません)。
[DNS] タブで、[プライベート DNS ゾーンとの統合] で [はい] を選択します。 これにより、仮想ネットワークにリンクされた privatelink.file.core.windows.net プライベート DNS ゾーンが作成されます。これは、ストレージ アカウントの FQDN がプライベート IP アドレスに解決するために必要です。
[ 確認と作成]、[ 作成] の順に選択します。
# Define parameters (reuse values from the previous section)
$privateEndpointName = "myStoragePrivateEndpoint"
$privateDnsZoneName = "privatelink.file.core.windows.net"
# Get the storage account resource ID
$storageAccountId = (Get-AzStorageAccount -ResourceGroupName $resourceGroup -Name $storageAccount).Id
# Get the virtual network and a non-gateway subnet
$vnet = Get-AzVirtualNetwork -Name $vnetName -ResourceGroupName $resourceGroup
# If you don't have a non-gateway subnet, create one
$vnet | Add-AzVirtualNetworkSubnetConfig -Name "PrivateEndpointSubnet" -AddressPrefix "10.0.1.0/24" | Set-AzVirtualNetwork
$vnet = Get-AzVirtualNetwork -Name $vnetName -ResourceGroupName $resourceGroup
$peSubnet = Get-AzVirtualNetworkSubnetConfig -Name "PrivateEndpointSubnet" -VirtualNetwork $vnet
# Create private link service connection
$plsConnection = New-AzPrivateLinkServiceConnection `
-Name "myStoragePLS" `
-PrivateLinkServiceId $storageAccountId `
-GroupId "file"
# Create the private endpoint
$privateEndpoint = New-AzPrivateEndpoint `
-Name $privateEndpointName `
-ResourceGroupName $resourceGroup `
-Location $location `
-Subnet $peSubnet `
-PrivateLinkServiceConnection $plsConnection
# Create the private DNS zone
$privateDnsZone = New-AzPrivateDnsZone `
-ResourceGroupName $resourceGroup `
-Name $privateDnsZoneName
# Link the private DNS zone to the virtual network
New-AzPrivateDnsVirtualNetworkLink `
-ResourceGroupName $resourceGroup `
-ZoneName $privateDnsZoneName `
-Name "myDnsLink" `
-VirtualNetworkId $vnet.Id
# Create DNS zone group for automatic DNS record management
New-AzPrivateDnsZoneGroup `
-ResourceGroupName $resourceGroup `
-PrivateEndpointName $privateEndpointName `
-Name "myZoneGroup" `
-PrivateDnsZoneId $privateDnsZone.ResourceId
# Define parameters (reuse values from the previous section)
privateEndpointName="myStoragePrivateEndpoint"
privateDnsZoneName="privatelink.file.core.windows.net"
# Get the storage account resource ID
storageAccountId=$(az storage account show --resource-group $resourceGroup --name $storageAccount --query id --output tsv)
# If you don't have a non-gateway subnet, create one
az network vnet subnet create \
--resource-group $resourceGroup \
--vnet-name $vnetName \
--name PrivateEndpointSubnet \
--address-prefixes "10.0.1.0/24"
# Create the private endpoint
az network private-endpoint create \
--resource-group $resourceGroup \
--name $privateEndpointName \
--vnet-name $vnetName \
--subnet PrivateEndpointSubnet \
--private-connection-resource-id $storageAccountId \
--group-ids file \
--connection-name myStoragePLS
# Create the private DNS zone
az network private-dns zone create \
--resource-group $resourceGroup \
--name $privateDnsZoneName
# Link the private DNS zone to the virtual network
az network private-dns link vnet create \
--resource-group $resourceGroup \
--zone-name $privateDnsZoneName \
--name myDnsLink \
--virtual-network $vnetName \
--registration-enabled false
# Create DNS zone group for automatic DNS record management
az network private-endpoint dns-zone-group create \
--resource-group $resourceGroup \
--endpoint-name $privateEndpointName \
--name myZoneGroup \
--private-dns-zone $privateDnsZoneName \
--zone-name file
仮想ネットワーク ゲートウェイをデプロイする
仮想ネットワーク ゲートウェイをデプロイするには、これらの手順に従います。
Azure portal の上部にある検索ボックスで、仮想ネットワーク ゲートウェイを検索して選びます。
[仮想ネットワーク ゲートウェイ] ページが表示されるはずです。 ページの上部にある [+ 作成] を選びます。
[基本] タブで、 [プロジェクトの詳細] と [インスタンスの詳細] の各値を入力します。 この仮想ネットワーク ゲートウェイは、仮想ネットワークを含むリソース グループと同じサブスクリプションおよびリージョン内にある必要があります。
-
サブスクリプション:使用するサブスクリプションをドロップダウンから選択します。
-
リソース グループ:この設定は、このページで仮想ネットワークを選択すると自動入力されます。
-
[名前]: 仮想ネットワーク ゲートウェイの名前を指定します。 ゲートウェイの名前付けは、ゲートウェイ サブネットの名前付けと同じではありません。 作成する仮想ネットワーク ゲートウェイ オブジェクトの名前です。
-
リージョン: このリソースを作成するリージョンを選択します。 仮想ネットワーク ゲートウェイのリージョンは、仮想ネットワークと同じにする必要があります。
-
ゲートウェイの種類: [VPN] を選択します。 VPN Gateway では、仮想ネットワーク ゲートウェイの種類として VPN を使用します。
-
SKU: 使用する機能をサポートするゲートウェイ SKU をドロップダウンから選択します。 SKU は、許可されるサイト間トンネルの数と VPN の目的のパフォーマンスを制御します。
ゲートウェイ SKU を参照してください。 IKEv2 認証 (ルート ベース VPN) を使用する場合は、Basic SKU を使わないでください。
-
世代: 使用する世代を選択します。 Generation2のSKUを推奨します。 詳細については、「ゲートウェイの SKU」を参照してください。
-
仮想ネットワーク: ドロップダウンから、前の手順で構成した仮想ネットワークを選択します。
-
サブネット: このフィールドは淡色表示され、作成したゲートウェイ サブネットの名前とその IP アドレス範囲の一覧が表示されているはずです。 代わりに、[ゲートウェイ サブネットのアドレス範囲] フィールドとテキスト ボックスが表示される場合は、まだ仮想ネットワークにゲートウェイ サブネットを構成してありません。
仮想ネットワーク ゲートウェイに関連付けられる [パブリック IP アドレス] の値を指定します。 このパブリック IP アドレスは、仮想ネットワーク ゲートウェイが作成されるときに、このオブジェクトに割り当てられます。 プライマリ パブリック IP アドレスが変わるのは、ゲートウェイが削除され、再度作成されたときのみです。 これは、サイズ変更、リセット、その他の内部メンテナンスやアップグレードを行っても変わりません。
-
[パブリック IP アドレス]: インターネットに公開される仮想ネットワーク ゲートウェイの IP アドレス。 おそらく、新しい IP アドレスを作成する必要がありますが、既存の未使用の IP アドレスを使用することもできます。
[新規作成] を選択した場合は、仮想ネットワーク ゲートウェイと同じリソース グループ内に新しい IP アドレス Azure リソースが作成され、[パブリック IP アドレス名] は新しく作成された IP アドレスの名前になります。
[既存のものを使用] を選択した場合は、既存の未使用の IP アドレスを選択する必要があります。
-
パブリック IP アドレス名:このテキスト ボックスに、パブリック IP アドレス インスタンスの名前を入力します。
-
パブリック IP アドレス SKU: 設定が自動的に選択されます。
-
割り当て: 通常、割り当ては自動的に選択され、[動的] または [静的] のいずれかになります。
-
[アクティブ/アクティブ モードの有効化]: [無効] を選びます。 アクティブ/アクティブ ゲートウェイ構成を作成する場合にのみ、この設定を有効にします。 アクティブ/アクティブ モードの詳細については、「高可用性のクロスプレミス接続および VNet 間接続」を参照してください。
-
[BGP の構成]: 構成で特に Border Gateway Protocol が必要ない限り、[無効] を選びます。 この設定が必要である場合、既定の ASN は 65515 です。ただし、この値は変わる場合があります。 この設定の詳細については、「BGP と Azure VPN Gateway について」を参照してください。
[確認と作成] を選択して検証を実行します。 検証が完了したら、仮想ネットワークゲートウェイを展開するために 「作成 」を選択します。 デプロイの完了までに最大で 45 分かかる場合があります。
最初に、パブリック IP アドレスを要求します。 既存の未使用の IP アドレスがあり、それを使用したい場合には、この手順をスキップできます。
<resource-group> をリソース グループ名に置き換え、仮想ネットワークに使用したのと同じ Azure リージョンを指定します。
$gwpip = New-AzPublicIpAddress -Name "mypublicip" -ResourceGroupName "<resource-group>" -Location "East US" -AllocationMethod Static -Sku Standard
次に、使用するサブネットとパブリック IP アドレスを定義して、ゲートウェイ IP アドレス構成を作成します。 VPN Gateway のパブリック IP アドレスがインターネットに公開されます。
<virtual-network-name> と <resource-group> を独自の値に置き換えます。
$vnet = Get-AzVirtualNetwork -Name <virtual-network-name> -ResourceGroupName <resource-group>
$subnet = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet
$gwipconfig = New-AzVirtualNetworkGatewayIpConfig -Name gwipconfig -SubnetId $subnet.Id -PublicIpAddressId $gwpip.Id
次のスクリプトを実行して VPN Gateway を作成します。
<resource-group> は、仮想ネットワークと同じリソース グループに置き換えます。 使用したい機能をサポートする ゲートウェイ SKU を指定します。 ゲートウェイ SKU は、許可されるサイト間トンネルの数と、VPN で目的とされるパフォーマンスを制御します。 第2世代のSKUを推奨します。 IKEv2 認証 (ルート ベース VPN) を使用する場合は、Basic SKU を使わないでください。
New-AzVirtualNetworkGateway -Name MyVnetGateway -ResourceGroupName <resource-group> -Location "East US" -IpConfigurations $gwipconfig -GatewayType "Vpn" -VpnType RouteBased -GatewaySku VpnGw2 -VpnGatewayGeneration Generation2
Border Gateway Protocol (BGP) や Active-Active などの他の機能を含めることもできます。
New-AzVirtualNetworkGateway コマンドレットのドキュメントを参照してください。 BGP が必要である場合、既定の ASN は 65515 です。ただし、この値は変更することができます。
指定したゲートウェイ SKU によっては、ゲートウェイの作成に 45 分以上かかる場合があります。
Get-AzVirtualNetworkGateway コマンドレットを使用して VPN ゲートウェイを表示できます。
Get-AzVirtualNetworkGateway -Name MyVnetGateway -ResourceGroup <resource-group>
最初に、パブリック IP アドレスを要求します。 既存の未使用の IP アドレスがあり、それを使用したい場合には、この手順をスキップできます。
<resource-group> はご自分のリソース グループ名に置き換えます。
az network public-ip create -n mypublicip -g <resource-group>
次のスクリプトを実行して VPN Gateway を作成します。 指定するゲートウェイ SKU によっては、ゲートウェイの作成に 45 分以上かかる場合があります。
<resource-group> は、仮想ネットワークと同じリソース グループに置き換えます。 使用したい機能をサポートする ゲートウェイ SKU を指定します。 ゲートウェイ SKU は、許可されるサイト間トンネルの数と、VPN で目的とされるパフォーマンスを制御します。 第2世代のSKUを推奨します。 IKEv2 認証 (ルート ベース VPN) を使用する場合は、Basic SKU を使わないでください。
az network vnet-gateway create -n MyVnetGateway -l eastus --public-ip-address mypublicip -g <resource-group> --vnet <virtual-network-name> --gateway-type Vpn --sku VpnGw2 --vpn-gateway-generation Generation2 --no-wait
--no-wait パラメーターは、ゲートウェイをバックグラウンドで作成するためのものです。 これは、VPN ゲートウェイがすぐに作成されるという意味ではありません。
次のコマンドを使用して、VPN Gateway を表示できます。 VPN Gateway が完全にデプロイされていない場合は、エラー メッセージが表示されます。
az network vnet-gateway show -n MyVnetGateway -g <resource-group>
オンプレミスのゲートウェイ用のローカル ネットワーク ゲートウェイを作成する
ローカル ネットワーク ゲートウェイは、オンプレミス ネットワーク アプライアンスを表す Azure リソースです。 これは、ストレージ アカウント、仮想ネットワーク、および仮想ネットワーク ゲートウェイと共にデプロイされる Azure リソースですが、ストレージ アカウントと同じリソース グループまたはサブスクリプションに存在する必要はありません。 ローカル ネットワーク ゲートウェイを作成するには、この手順に従ってください。
Azure portal の上部にある検索ボックスで、ローカル ネットワーク ゲートウェイを検索して選びます。
[ローカル ネットワーク ゲートウェイ] ページが表示されるはずです。 ページの上部にある [+ 作成] を選びます。
[基本] タブで、 [プロジェクトの詳細] と [インスタンスの詳細] の各値を入力します。
-
[サブスクリプション]: 目的の Azure サブスクリプション。 これは、仮想ネットワーク ゲートウェイまたはストレージ アカウントに使用されるサブスクリプションと一致している必要はありません。
- [リソース グループ] : 目的のリソース グループ。 また、仮想ネットワーク ゲートウェイまたはストレージ アカウントに使用されるリソース グループと一致している必要はありません。
-
[リージョン]: ローカル ネットワーク ゲートウェイ リソースを作成する Azure リージョン。 これは、仮想ネットワーク ゲートウェイとストレージ アカウントのために選択したリージョンと一致している必要があります。
-
[名前] : ローカル ネットワーク ゲートウェイの Azure リソースの名前。 この名前には、管理に役立つ任意の名前を指定できます。
-
エンドポイント: IP アドレスを選択したままにします。
-
[IP アドレス] : オンプレミスのローカル ゲートウェイのパブリック IP アドレス。
-
[アドレス空間]: このローカル ネットワーク ゲートウェイが表すネットワークのアドレス範囲。 たとえば、192.168.0.0/16 です。 複数のアドレス空間範囲を追加する場合は、指定する範囲が、接続先の他のネットワークの範囲と重複しないようにしてください。 BGP 対応接続でこのローカル ネットワーク ゲートウェイを使用する予定の場合、宣言する必要がある最小プレフィックスは、VPN デバイス上の BGP ピア IP アドレスのホスト アドレスです。
組織で BGP が必要な場合は、[詳細] タブを選択して BGP 設定を構成します。 詳細については、「BGP と Azure VPN Gateway について」を参照してください。
[確認と作成] を選択して検証を実行します。 検証が完了したら、ローカルネットワークゲートウェイを作成する ために「作成 」を選択してください。
次のコマンドを実行して、新しいローカル ネットワーク ゲートウェイを作成してください。
<resource-group> は、実際の値に置き換えてください。
-AddressPrefix パラメーターでは、このローカル ネットワーク ゲートウェイが表すアドレス範囲、もしくはネットワークの範囲を指定します。 複数のアドレス空間範囲を追加する場合は、指定する範囲が、接続先の他のネットワークの範囲と重複しないようにしてください。
New-AzLocalNetworkGateway -Name MyLocalGateway -Location "East US" -AddressPrefix @('10.101.0.0/24','10.101.1.0/24') -GatewayIpAddress "5.4.3.2" -ResourceGroupName <resource-group>
次のコマンドを実行して、新しいローカル ネットワーク ゲートウェイを作成してください。
<resource-group> は、実際の値に置き換えてください。
--local-address-prefixes パラメーターでは、このローカル ネットワーク ゲートウェイが表すアドレス範囲、もしくはネットワークの範囲を指定します。 複数のアドレス空間範囲を追加する場合は、指定する範囲が、接続先の他のネットワークの範囲と重複しないようにしてください。
az network local-gateway create --gateway-ip-address 5.4.3.2 --name MyLocalGateway -g <resource-group> --local-address-prefixes 10.101.0.0/24 10.101.1.0/24
オンプレミスのネットワークアプライアンスを設定する具体的な手順は、組織が選択したネットワークアプライアンスによって異なります。 デバイスメーカーのドキュメントを参照するか、Azure VPN Gatewayのテスト済みデバイスリストおよび関連する設定ガイダンスを活用してください。 パートナーデバイスの構成方法の一般的な概要については、「 パートナーVPNデバイス構成の概要」をご覧ください。 もしデバイスがダウンロード可能な設定スクリプトをサポートしている場合は、「 Download VPNデバイス設定スクリプト」をご覧ください。
ネットワーク アプライアンスを構成する際には、次のアイテムが必要です。
共有キー。 この鍵は、サイト間VPN接続を作成する際に指定する共有キーと同じです。 これらの例では、 abc123 のような基本的な共有キーが使われます。 組織のセキュリティ要件に準拠したより複雑な鍵を作成しましょう。
仮想ネットワーク ゲートウェイのパブリック IP アドレス。 PowerShell を使用して、仮想ネットワーク ゲートウェイのパブリック IP アドレスを検索するには、次のコマンドを実行します。 この例では、mypublicip は前の手順で作成したパブリック IP アドレス リソースの名前です。
Get-AzPublicIpAddress -Name mypublicip -ResourceGroupName <resource-group>
サイト間接続を作成する
サイト間 VPN のデプロイを完了するには、オンプレミスのネットワーク アプライアンス (ローカル ネットワーク ゲートウェイ リソースで表される) と Azure 仮想ネットワーク ゲートウェイの間に接続を作成する必要があります。 これを行うには、以下の手順を実行します。
作成した仮想ネットワークゲートウェイにアクセスしてください。 仮想ネットワーク ゲートウェイの目次で、[設定] > [接続] を選択し、[+ 追加] を選択します。
[基本] タブで、 [プロジェクトの詳細] と [インスタンスの詳細] の各値を入力します。
-
[サブスクリプション]: 目的の Azure サブスクリプション。
- [リソース グループ] : 目的のリソース グループ。
-
接続の種類: サイト間接続であるため、ドロップダウン リストから [サイト間 (IPsec)] を選択します。
-
[名前] : 接続の名前。 仮想ネットワーク ゲートウェイは複数の接続をホストできるため、この特定の接続を区別する、管理に役立つ名前を選択します。
-
リージョン: 仮想ネットワーク ゲートウェイとストレージ アカウントのために選択したリージョンと一致している必要があります。
[設定] タブで、次の情報を指定します。
-
[仮想ネットワーク ゲートウェイ]: 作成した仮想ネットワーク ゲートウェイを選択します。
-
[ローカル ネットワーク ゲートウェイ]: 作成したローカル ネットワーク ゲートウェイを選択します。
-
[共有キー (PSK)]: 接続の暗号化を確立するために使用される、文字と数字の組み合わせ。 仮想ネットワーク ゲートウェイとローカル ネットワーク ゲートウェイの両方で同じ共有キーを使用する必要があります。 ゲートウェイ デバイスに設定されていない場合は、ここで作成し、それをそのデバイスに指定することができます。
-
[IKE プロトコル]: VPN デバイスに応じて、ポリシー ベース VPN の場合は IKEv1 を選択し、ルート ベース VPN の場合は IKEv2 を選択します。 2 種類の VPN ゲートウェイの詳細については、「ポリシー ベースおよびルート ベースの VPN ゲートウェイについて」を参照してください。
-
[Azure プライベート IP アドレスを使用]: このオプションをオンにすると、Azure プライベート IP を使用して IPsec VPN 接続を確立できます。 このオプションを使用するには、VPN ゲートウェイでプライベート IP のサポートが設定されている必要があります。 これは、AZ ゲートウェイの SKU でのみサポートされます。
-
[BGP を有効にする]: 組織でこの設定が特に必要ない限り、オフのままにしておいてください。
-
[カスタム BGP アドレスを有効にする]: 組織でこの設定が特に必要ない限り、オフのままにしておいてください。
-
[FastPath]: FastPath の目的は、お使いのオンプレミス ネットワークと仮想ネットワークの間のデータ パスのパフォーマンスを向上させることです。
詳細情報。
-
IPsec / IKEポリシー:接続が交渉するIPsec / IKEポリシーです。 組織でカスタム ポリシーが必要でない限り、[無効] を選択したままにしてください。 デフォルトパラメータ値(IKEバージョン、DHグループ、暗号化アルゴリズム、SA寿命など)については、 Default IPsec/IKEパラメータをご覧ください。 カスタムポリシーを設定するには、「 カスタムIPsec/IKEポリシーの設定」をご覧ください。 暗号化の要件については、「About cryptographic requirements and Azure VPN gateways」(暗号化要件と Azure VPN ゲートウェイについて) を参照してください。
-
ポリシーベースのトラフィックセレクターを使いましょう:Azure VPNゲートウェイをオンプレミスのポリシーベースのVPNファイアウォールに接続する設定をしない限り、無効のままにしてください。 このフィールドを有効にする場合は、any-to-any ではなく、オンプレミス ネットワーク(ローカル ネットワーク ゲートウェイ)のプレフィックスと Azure 仮想ネットワークのプレフィックスとの間の送受信すべての組み合わせに対応する一致するトラフィック セレクターが VPN デバイスに定義されていることを必ず確認してください。 例えば、オンプレミスのネットワークプレフィックスが10.1.0.0/16と10.2.0.0/16で、仮想ネットワークのプレフィックスが192.168.0.0/16と172.16.0.0/16の場合、以下のトラフィックセレクタを指定する必要があります:
- 10.1.0.0/16 <=====> 192.168.0.0/16
- 10.1.0.0/16 <=====> 172.16.0.0/16
- 10.2.0.0/16 <=====> 192.168.0.0/16
- 10.2.0.0/16 <=====> 172.16.0.0/16
-
DPD タイムアウト (秒): 接続のデッド ピア検出のタイムアウトを秒で設定します。 このプロパティの推奨値および既定値は 45 秒です。
-
接続モード: 接続モードは、接続を開始できるゲートウェイを決定するために使われます。 この値が次のように設定されている場合:
-
既定: Azure とオンプレミスの VPN ゲートウェイの両方で接続を開始できます。
-
ResponderOnly: Azure VPN ゲートウェイは接続を開始しません。 オンプレミス VPN ゲートウェイが接続を開始する必要があります。
-
InitiatorOnly: Azure VPN ゲートウェイは接続を開始し、オンプレミス VPN ゲートウェイからの接続試行を拒否します。
[確認と作成] を選択して検証を実行します。 検証が完了したら、接続を作成するために 「作成 」を選択してください。 仮想ネットワークゲートウェイの 接続 ページから、接続が成功したかどうかを確認できます。
次のコマンドを実行して、仮想ネットワーク ゲートウェイとオンプレミス デバイスとの間に、サイト間 VPN 接続を作成します。 自分の値に必ず変更してください。 共有キーは、VPN デバイスの構成に使用したものと同じ値にする必要があります。 サイト間 VPN の -ConnectionType は IPsec です。
その他のオプションについては、New-AzVirtualNetworkGatewayConnection コマンドレットのドキュメントを参照してください。
変数を設定します。
$gateway1 = Get-AzVirtualNetworkGateway -Name MyVnetGateway -ResourceGroupName <resource-group>
$local = Get-AzLocalNetworkGateway -Name MyLocalGateway -ResourceGroupName <resource-group>
VPN 接続を作成します。
New-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 -ResourceGroupName <resource-group> `
-Location 'East US' -VirtualNetworkGateway1 $gateway1 -LocalNetworkGateway2 $local `
-ConnectionType IPsec -SharedKey 'abc123'
しばらくすると、そのつながりが確立されます。 VPN 接続は、次のコマンドを実行することで検証できます。 促されたら「A」を選択して「All」を実行します。
Get-AzVirtualNetworkGatewayConnection -Name VNet1toSite1 -ResourceGroupName <resource-group>
接続の状態が "接続済み" と表示されます。
次のコマンドを実行して、仮想ネットワーク ゲートウェイとオンプレミス デバイスとの間に、サイト間 VPN 接続を作成します。 自分の値に必ず変更してください。 共有キーは、VPN デバイスの構成に使用したものと同じ値にする必要があります。
さらに多くのオプションについては、azネットワークの vpn-connection create コマンドのドキュメントをご覧ください。
az network vpn-connection create --name VNet1toSite1 --resource-group <resource-group> --vnet-gateway1 MyVnetGateway -l eastus --shared-key abc123 --local-gateway2 MyLocalGateway
しばらくすると、そのつながりが確立されます。 VPN 接続は、次のコマンドを実行することで検証できます。 接続が確立中の場合は、接続状態は "Connecting" と表示されます。 接続が確立されると、ステータスは「接続済み」に変わります。
az network vpn-connection show --name VNet1toSite1 --resource-group <resource-group>
オンプレミスのクライアントが VPN トンネル経由で Azure ファイル共有にアクセスするには、DNS によってストレージ アカウントの FQDN ( storageaccount.file.core.windows.net など) がプライベート エンドポイントのプライベート IP アドレスに解決される必要があります。 DNS 転送を使用しない場合、オンプレミスの DNS は FQDN をストレージ アカウントのパブリック IP アドレスに解決し、トラフィックは VPN トンネルではなくインターネット経由でルーティングします。
オプション 1: Azure DNS プライベート リゾルバー (推奨)
仮想ネットワークに Azure DNS プライベート リゾルバー をデプロイします。 プライベート リゾルバーの受信エンドポイント IP アドレスに file.core.windows.net のクエリを条件付きで転送するようにオンプレミスの DNS サーバーを構成します。 プライベート リゾルバーは、プライベート エンドポイントの作成時に仮想ネットワークにリンクされた privatelink.file.core.windows.net プライベート DNS ゾーンに対して名前を解決できます。
オプション 2: DNS フォワーダー仮想マシン
168.63.129.16で Azure 再帰リゾルバーにクエリを転送する 1 つ以上の DNS フォワーダー VM を仮想ネットワークにデプロイします。 これらのフォワーダー VM の IP アドレスに file.core.windows.net のクエリを条件付きで転送するようにオンプレミスの DNS サーバーを構成します。
両方の方法の詳細な手順については、「 Azure Files の DNS 転送の構成」を参照してください。
オンプレミスからの DNS 解決を確認する
ファイル共有をマウントする前に、VPN に接続されているオンプレミスコンピューターから DNS 解決が正しく動作していることを確認します。 FQDN は、仮想ネットワークのアドレス空間からプライベート IP アドレスに解決される必要があります。
Windows(PowerShell):
Resolve-DnsName -Name storageaccount.file.core.windows.net
Linux/macOS:
nslookup storageaccount.file.core.windows.net
結果がプライベート IP ではなくパブリック IP アドレス ( 10.0.x.x など) を返した場合、DNS 転送が正しく構成されておらず、マウント トラフィックが VPN トンネルを通過しません。
VPNでAzureファイル共有をマウントする
マウントする前に、DNS 解決によってプライベート エンドポイントのプライベート IP アドレスが返されることを確認します (前のセクションを参照)。 DNS 解決でパブリック IP が返された場合、マウント トラフィックは VPN トンネルをバイパスします。
DNS解決を確認した後、Azureファイル共有をオンプレミスにマウントします。 OS でマウントする手順を参照してください。
関連項目