アプリを Azure 仮想ネットワークと統合するIntegrate your app with an Azure virtual network

この記事では、Azure App Service の VNet 統合機能と、それを Azure App Service のアプリで設定する方法について説明します。This article describes the Azure App Service VNet Integration feature and how to set it up with apps in Azure App Service. Azure Virtual Network (VNet) を使用すると、多くの Azure リソースをインターネットにルーティングできないネットワークに配置できます。With Azure Virtual Network (VNets), you can place many of your Azure resources in a non-internet-routable network. VNet 統合機能を使用すると、アプリは VNet 内のリソースにアクセスするか、VNet を通じてリソースにアクセスできます。The VNet Integration feature enables your apps to access resources in or through a VNet. VNet 統合では、アプリにプライベートでアクセスすることはできません。VNet Integration doesn't enable your apps to be accessed privately.

Azure App Service では、VNet 統合機能に次の 2 つのバリエーションがあります。Azure App Service has two variations on the VNet Integration feature:

  • Isolated を除くすべての価格プランをサポートするマルチテナント システムThe multitenant systems that support the full range of pricing plans except Isolated.
  • VNet にデプロイされ、Isolated 価格プランのアプリをサポートする App Service Environment。The App Service Environment, which deploys into your VNet and supports Isolated pricing plan apps.

VNet 統合機能はマルチテナント アプリで使用されます。The VNet Integration feature is used in multitenant apps. アプリが App Service Environment 内にある場合、そのアプリは既に VNet 内に存在するため、同じ VNet 内のリソースに到達するために VNet 統合機能を使用する必要はありません。If your app is in App Service Environment, then it's already in a VNet and doesn't require use of the VNet Integration feature to reach resources in the same VNet. すべてのネットワーク機能の詳細については、「App Service のネットワーク機能」を参照してください。For more information on all of the networking features, see App Service networking features.

VNet 統合により、アプリから VNet 内のリソースにアクセスできるようになりますが、VNet からそのアプリへの受信プライベート アクセスは付与されません。VNet Integration gives your app access to resources in your VNet, but it doesn't grant inbound private access to your app from the VNet. プライベート サイト アクセスとは、Azure 仮想ネットワーク内など、プライベート ネットワークのみからアプリにアクセスできるようにすることです。Private site access refers to making an app accessible only from a private network, such as from within an Azure virtual network. VNet 統合は、アプリから VNet への送信呼び出しを行うためだけに使用されます。VNet Integration is used only to make outbound calls from your app into your VNet. VNet 統合機能は、同じリージョン内の VNet で使用する場合と、他のリージョン内の VNet で使用する場合とで、動作が異なります。The VNet Integration feature behaves differently when it's used with VNet in the same region and with VNet in other regions. VNet 統合機能には 2 つのバリエーションがあります。The VNet Integration feature has two variations:

  • リージョン VNet 統合:同じリージョン内の Azure Resource Manager 仮想ネットワークに接続する場合、統合する VNet での専用のサブネットが必要になります。Regional VNet Integration: When you connect to Azure Resource Manager virtual networks in the same region, you must have a dedicated subnet in the VNet you're integrating with.
  • ゲートウェイが必要な VNet 統合:他のリージョン内の VNet または同じリージョン内のクラシック仮想ネットワークに接続する場合、ターゲットの VNet にプロビジョニングされた Azure 仮想ネットワーク ゲートウェイが必要です。Gateway-required VNet Integration: When you connect to VNet in other regions or to a classic virtual network in the same region, you need an Azure Virtual Network gateway provisioned in the target VNet.

以下は、VNet 統合機能の特徴です。The VNet Integration features:

  • Standard、Premium、PremiumV2、または Elastic Premium の価格プランが必要である。Require a Standard, Premium, PremiumV2, or Elastic Premium pricing plan.
  • TCP と UDP をサポートする。Support TCP and UDP.
  • Azure App Service アプリや関数アプリで動作する。Work with Azure App Service apps and function apps.

以下のような一部の機能は、VNet 統合ではサポートされません。There are some things that VNet Integration doesn't support, like:

  • ドライブのマウント。Mounting a drive.
  • Active Directory 統合。Active Directory integration.
  • NetBIOS。NetBIOS.

ゲートウェイが必要な VNet 統合では、ターゲット VNet 内、あるいはピアリングまたは VPN を使用してターゲット VNet に接続されているネットワーク内のリソースのみにアクセスできます。Gateway-required VNet Integration provides access to resources only in the target VNet or in networks connected to the target VNet with peering or VPNs. ゲートウェイが必要な VNet 統合では、Azure ExpressRoute 接続全体で利用可能なリソースへのアクセスを有効にしたり、サービス エンドポイントと連携したりすることはできません。Gateway-required VNet Integration doesn't enable access to resources available across Azure ExpressRoute connections or works with service endpoints.

使用されているバージョンに関係なく、VNet 統合によってアプリに VNet 内のリソースへのアクセスが付与されますが、VNet からアプリへの受信プライベート アクセスは付与されません。Regardless of the version used, VNet Integration gives your app access to resources in your VNet, but it doesn't grant inbound private access to your app from the VNet. プライベート サイト アクセスとは、Azure VNet 内など、プライベート ネットワークのみからアプリにアクセスできるようにすることです。Private site access refers to making your app accessible only from a private network, such as from within an Azure VNet. Vnet 統合は、アプリから VNet への送信呼び出しを行うためにのみ存在します。VNet Integration is only for making outbound calls from your app into your VNet.

VNET 統合を有効にするEnable VNet Integration

  1. App Service ポータルで [ネットワーク] の UI に移動します。Go to the Networking UI in the App Service portal. [VNet 統合] の下の [ここをクリックして構成] を選択します。Under VNet Integration, select Click here to configure.

  2. [Add VNet](VNet の追加) を選択します。Select Add VNet.

    Vnet 統合を選択する

  3. ドロップダウン リストには、お使いのサブスクリプションで同じリージョンに存在するすべての Azure Resource Manager 仮想ネットワークが含まれます。The drop-down list contains all of the Azure Resource Manager virtual networks in your subscription in the same region. その下に、他のすべてのリージョンの Resource Manager 仮想ネットワークの一覧が表示されます。Underneath that is a list of the Resource Manager virtual networks in all other regions. 統合する VNet を選択します。Select the VNet you want to integrate with.

    VNet の選択

    • 同じリージョン内の VNet の場合は、新しいサブネットを作成するか、空の既存のサブネットを選択します。If the VNet is in the same region, either create a new subnet or select an empty preexisting subnet.
    • 別のリージョンの VNet を選択するには、ポイント対サイトが有効になっている VNet ゲートウェイがプロビジョニングされている必要があります。To select a VNet in another region, you must have a VNet gateway provisioned with point to site enabled.
    • クラシック VNet と統合するには、 [仮想ネットワーク] ドロップダウン リストを選択するのではなく、 [クラシック VNet に接続するには、ここをクリックします] を選択します。To integrate with a classic VNet, instead of selecting the Virtual Network drop-down list, select Click here to connect to a Classic VNet. 使用するクラシック仮想ネットワークを選択します。Select the classic virtual network you want. ターゲットの VNet には、ポイント対サイトが有効になっている Virtual Network ゲートウェイがプロビジョニングされている必要があります。The target VNet must already have a Virtual Network gateway provisioned with point-to-site enabled.

    クラシック VNet の選択

統合中にアプリは再起動されます。During the integration, your app is restarted. 統合が完了すると、統合されている VNet の詳細が表示されます。When integration is finished, you'll see details on the VNet you're integrated with.

リージョン VNet 統合Regional VNet Integration

リージョン VNet 統合を使用すると、アプリは次のものにアクセスできるようになります。Using regional VNet Integration enables your app to access:

  • アプリと同じリージョンにある VNet 内のリソース。Resources in a VNet in the same region as your app.
  • VNet 内のリソースは、アプリが統合されている VNet とピアリングされます。Resources in VNets peered to the VNet your app is integrated with.
  • サービス エンドポイントでセキュリティ保護されたサービス。Service endpoint secured services.
  • Azure ExpressRoute 接続にまたがるリソース。Resources across Azure ExpressRoute connections.
  • 統合されている VNet 内のリソース。Resources in the VNet you're integrated with.
  • Azure ExpressRoute 接続を含む、ピアリングされた接続にまたがるリソース。Resources across peered connections, which includes Azure ExpressRoute connections.
  • プライベート エンドポイントPrivate endpoints

同じリージョンの VNet との VNet 統合を使用する場合は、次の Azure ネットワーク機能を使用できます。When you use VNet Integration with VNets in the same region, you can use the following Azure networking features:

  • ネットワーク セキュリティ グループ (NSG) :統合サブネットに配置された NSG を使って送信トラフィックをブロックできます。Network security groups (NSGs): You can block outbound traffic with an NSG that's placed on your integration subnet. VNet 統合を使ってアプリへの受信アクセスを提供できないため、受信規則は適用されません。The inbound rules don't apply because you can't use VNet Integration to provide inbound access to your app.
  • ルート テーブル (UDR) :統合サブネット上にルート テーブルを配置して、必要な場所に送信トラフィックを送信できます。Route tables (UDRs): You can place a route table on the integration subnet to send outbound traffic where you want.

既定では、アプリでは RFC1918 トラフィックのみが VNet にルーティングされます。By default, your app routes only RFC1918 traffic into your VNet. すべての送信トラフィックを VNet にルーティングする場合は、アプリの設定 WEBSITE_VNET_ROUTE_ALL をアプリに適用します。If you want to route all of your outbound traffic into your VNet, apply the app setting WEBSITE_VNET_ROUTE_ALL to your app. アプリ設定を構成するには、次のようにします。To configure the app setting:

  1. アプリ ポータルの [構成] UI にアクセスします。Go to the Configuration UI in your app portal. [新しいアプリケーション設定] を選択します。Select New application setting.

  2. [名前] ボックスに「WEBSITE_VNET_ROUTE_ALL」、 [値] ボックスに「1」と入力します。Enter WEBSITE_VNET_ROUTE_ALL in the Name box, and enter 1 in the Value box.

    アプリケーション設定を指定する

  3. [OK] を選択します。Select OK.

  4. [保存] を選択します。Select Save.

すべての送信トラフィックを VNet にルーティングする場合は、統合サブネットに適用されている NSG と UDR に従います。If you route all of your outbound traffic into your VNet, it's subject to the NSGs and UDRs that are applied to your integration subnet. すべての送信トラフィックを VNet にルーティングすると、トラフィックを他の場所に送信するためのルートを指定しない限り、送信アドレスは引き続きアプリのプロパティに一覧表示される送信アドレスになります。When you route all of your outbound traffic into your VNet, your outbound addresses are still the outbound addresses that are listed in your app properties unless you provide routes to send the traffic elsewhere.

同じリージョンの VNet との VNet 統合を使用する場合、いくつかの制限があります。There are some limitations with using VNet Integration with VNets in the same region:

  • グローバル ピアリング接続にまたがるリソースには到達できません。You can't reach resources across global peering connections.
  • この機能は、PremiumV2 の App Service プランをサポートするより新しい Azure App Service スケール ユニットからのみ使用できます。The feature is available only from newer Azure App Service scale units that support PremiumV2 App Service plans. "これは、アプリを PremiumV2 価格レベルで実行しなければならないということではなく"、単に PremiumV2 オプションを使用できる App Service プランでアプリを実行する必要があるということにご注意ください (これは、この VNet 統合機能も使用可能な新しいスケール ユニットであることを意味します)。Note that this does not mean your app must run on a PremiumV2 pricing tier, only that it must run on an App Service Plan where the PremiumV2 option is available (which implies that it is a newer scale unit where this VNet integration feature is then also available).
  • 統合サブネットは、1 つの App Service プランでしか使用できません。The integration subnet can be used by only one App Service plan.
  • この機能は、App Service Environment にある Isolated プランのアプリでは使用できません。The feature can't be used by Isolated plan apps that are in an App Service Environment.
  • この機能には、Azure Resource Manager VNet 内に 32 個以上のアドレスを含む /27 である未使用のサブネットが必要です。The feature requires an unused subnet that's a /27 with 32 addresses or larger in an Azure Resource Manager VNet.
  • アプリと VNet は同じリージョンに存在する必要があります。The app and the VNet must be in the same region.
  • 統合アプリで VNet を削除することはできません。You can't delete a VNet with an integrated app. VNet を削除する前に、統合を削除してください。Remove the integration before you delete the VNet.
  • アプリと同じサブスクリプション内の VNet とのみ統合できます。You can only integrate with VNets in the same subscription as the app.
  • App Service プランごとに 1 リージョンの VNet 統合のみを持つことができます。You can have only one regional VNet Integration per App Service plan. 同じ App Service プラン内の複数のアプリが同じ VNet を使用できます。Multiple apps in the same App Service plan can use the same VNet.
  • リージョン VNet 統合を使用しているアプリがあるときに、アプリまたはプランのサブスクリプションを変更することはできません。You can't change the subscription of an app or a plan while there's an app that's using regional VNet Integration.
  • アプリでは、構成を変更せずに Azure DNS Private Zones のアドレスを解決することはできませんYour app cannot resolve addresses in Azure DNS Private Zones without configuration changes

プランのインスタンスごとに 1 つのアドレスが使用されます。One address is used for each plan instance. アプリを 5 つのインスタンスにスケールする場合は、5 つのアドレスが使用されます。If you scale your app to five instances, then five addresses are used. 割り当てた後はサブネット サイズを変更できないため、アプリが到達する可能性のあるスケールに対応できるだけの十分な大きさを持つサブネットを使用する必要があります。Since subnet size can't be changed after assignment, you must use a subnet that's large enough to accommodate whatever scale your app might reach. 推奨されるサイズは、64 のアドレスを持つ /26 です。A /26 with 64 addresses is the recommended size. 64 個のアドレスを持つ /26 では、Premium プランの 30 のインスタンスに対応できます。A /26 with 64 addresses accommodates a Premium plan with 30 instances. プランをスケールアップまたはスケールダウンする場合は、短時間に 2 倍の数のアドレスが必要になります。When you scale a plan up or down, you need twice as many addresses for a short period of time.

別のプラン内のご自身のアプリが、別のプラン内のアプリから既に接続されている VNet にアクセスできるようにしたい場合は、既存の VNet 統合によって使用されているものとは異なるサブネットを選択します。If you want your apps in another plan to reach a VNet that's already connected to by apps in another plan, select a different subnet than the one being used by the preexisting VNet Integration.

この機能は、Windows と Linux の両方の Web アプリで完全にサポートされています。The feature is fully supported for both Windows and Linux web apps. すべての動作は、Windows アプリと Linux アプリ間で同じです。All of the behaviors act the same between Windows apps and Linux apps.

サービス エンドポイントService endpoints

リージョン VNet 統合では、サービス エンドポイントを使用できます。Regional VNet Integration enables you to use service endpoints. アプリでサービス エンドポイントを使用するには、リージョン VNet 統合を使用し、選択した VNet に接続します。その後、統合に使用したサブネット上の対象のサービスを使用して、サービス エンドポイントを構成します。To use service endpoints with your app, use regional VNet Integration to connect to a selected VNet and then configure service endpoints with the destination service on the subnet you used for the integration. さらに、サービス エンドポイント経由でサービスにアクセスする必要がある場合は、次のようにします。If you then wanted to access a service over service endpoints:

  1. Web アプリとのリージョン VNet 統合を構成するconfigure regional VNet Integration with your web app
  2. 対象のサービスに移動し、統合に使用したサブネットに対してサービス エンドポイントを構成するgo to the destination service and configure service endpoints against the subnet used for integration

ネットワーク セキュリティ グループNetwork security groups

ネットワーク セキュリティ グループを使用して、VNet 内のリソースへの受信および送信トラフィックをブロックできます。You can use network security groups to block inbound and outbound traffic to resources in a VNet. リージョン VNet 統合を使用するアプリでは、ネットワーク セキュリティ グループを使用して、VNet またはインターネット内のリソースへの送信トラフィックをブロックできます。An app that uses regional VNet Integration can use a network security group to block outbound traffic to resources in your VNet or the internet. パブリック アドレスへのトラフィックをブロックするには、WEBSITE_VNET_ROUTE_ALL アプリケーション設定を 1 に設定する必要があります。To block traffic to public addresses, you must have the application setting WEBSITE_VNET_ROUTE_ALL set to 1. VNet 統合はアプリからの送信トラフィックのみに影響を与えるため、NSG での受信規則はアプリに適用されません。The inbound rules in an NSG don't apply to your app because VNet Integration affects only outbound traffic from your app.

アプリへの受信トラフィックを制御するには、アクセス制限機能を使用します。To control inbound traffic to your app, use the Access Restrictions feature. 統合サブネットに適用される NSG は、統合サブネットに適用されているルートに関係なく有効になります。An NSG that's applied to your integration subnet is in effect regardless of any routes applied to your integration subnet. WEBSITE_VNET_ROUTE_ALL が 1 に設定されていて、統合サブネット上でパブリック アドレス トラフィックに影響を与えるルートがない場合、すべての送信トラフィックは引き続き、統合サブネットに割り当てられた NSG に従います。If WEBSITE_VNET_ROUTE_ALL is set to 1 and you don't have any routes that affect public address traffic on your integration subnet, all of your outbound traffic is still subject to NSGs assigned to your integration subnet. WEBSITE_VNET_ROUTE_ALL が設定されていない場合、NSG は RFC1918 トラフィックにのみ適用されます。If WEBSITE_VNET_ROUTE_ALL isn't set, NSGs are only applied to RFC1918 traffic.

ルートRoutes

ルート テーブルを使用して、アプリからの送信トラフィックを任意の場所にルーティングすることができます。You can use route tables to route outbound traffic from your app to wherever you want. 既定では、ルート テーブルは、RFC1918 の送信先トラフィックのみに影響を与えます。By default, route tables only affect your RFC1918 destination traffic. WEBSITE_VNET_ROUTE_ALL を 1 に設定すると、すべての送信呼び出しが影響を受けます。If you set WEBSITE_VNET_ROUTE_ALL to 1, all of your outbound calls are affected. 統合サブネット上に設定されているルートは、受信アプリ要求への応答には影響を与えません。Routes that are set on your integration subnet won't affect replies to inbound app requests. 一般的な宛先には、ファイアウォール デバイスまたはゲートウェイを含めることができます。Common destinations can include firewall devices or gateways.

オンプレミスのすべての送信トラフィックをルーティングする場合は、ルート テーブルを使用して、すべての送信トラフィックを ExpressRoute ゲートウェイに送信できます。If you want to route all outbound traffic on-premises, you can use a route table to send all outbound traffic to your ExpressRoute gateway. ゲートウェイにトラフィックをルーティングする場合は、外部ネットワークのルートを設定して、応答を返信するようにしてください。If you do route traffic to a gateway, be sure to set routes in the external network to send any replies back.

また、Border Gateway Protocol (BGP) ルートも、アプリのトラフィックに影響を与えます。Border Gateway Protocol (BGP) routes also affect your app traffic. ExpressRoute ゲートウェイのようなものから BGP ルートを使用している場合は、アプリの送信トラフィックが影響を受けます。If you have BGP routes from something like an ExpressRoute gateway, your app outbound traffic will be affected. 既定では、BGP ルートは、RFC1918 の送信先トラフィックにのみ影響を与えます。By default, BGP routes affect only your RFC1918 destination traffic. WEBSITE_VNET_ROUTE_ALL が 1 に設定されている場合、すべての送信トラフィックは、BGP ルートの影響を受ける可能性があります。If WEBSITE_VNET_ROUTE_ALL is set to 1, all outbound traffic can be affected by your BGP routes.

Azure DNS Private ZonesAzure DNS Private Zones

アプリでは、VNet に統合された後、VNet が構成されているのと同じ DNS サーバーが使用されます。After your app integrates with your VNet, it uses the same DNS server that your VNet is configured with. 既定では、アプリは Azure DNS Private Zones で動作しません。By default, your app won't work with Azure DNS Private Zones. Azure DNS Private Zones で動作させるには、次のアプリ設定を追加する必要があります。To work with Azure DNS Private Zones you need to add the following app settings:

  1. 値が 168.63.129.16 の WEBSITE_DNS_SERVERWEBSITE_DNS_SERVER with value 168.63.129.16
  2. 値が 1 の WEBSITE_VNET_ROUTE_ALLWEBSITE_VNET_ROUTE_ALL with value 1

これらの設定では、アプリで Azure DNS Private Zones を使用できるようにするだけでなく、アプリからのすべての送信呼び出しを VNet に送信します。These settings will send all of your outbound calls from your app into your VNet in addition to enabling your app to use Azure DNS private zones.

プライベート エンドポイントPrivate endpoints

プライベート エンドポイントを呼び出す場合は、Azure DNS Private Zones と統合するか、アプリで使用される DNS サーバーでプライベート エンドポイントを管理する必要があります。If you want to make calls to Private Endpoints, then you need to either integrate with Azure DNS Private Zones or manage the private endpoint in the DNS server used by your app.

リージョン VNET 統合のしくみHow regional VNet Integration works

App Service 内のアプリは、worker ロールでホストされます。Apps in App Service are hosted on worker roles. Basic 以上の価格プランは、同じ worker 上で他の顧客のワークロードが実行されない専用のホスティング プランです。The Basic and higher pricing plans are dedicated hosting plans where there are no other customers' workloads running on the same workers. リージョン VNet 統合は、委任されたサブネット内のアドレスで仮想インターフェイスをマウントすることによって機能します。Regional VNet Integration works by mounting virtual interfaces with addresses in the delegated subnet. 送信元アドレスは VNet 内に存在するため、VNet 内の VM と同様に、VNet 内または VNet 経由でほとんどの場所にアクセスできます。Because the from address is in your VNet, it can access most things in or through your VNet like a VM in your VNet would. ネットワークの実装は、VNet で VM を実行する場合とは異なります。The networking implementation is different than running a VM in your VNet. そのため、一部のネットワーク機能はこの機能ではまだ使用できません。That's why some networking features aren't yet available for this feature.

リージョン VNET 統合のしくみ

リージョン VNet 統合が有効になっているとき、アプリによるインターネットへの送信呼び出しは、通常と同じチャネル経由で行われます。When regional VNet Integration is enabled, your app makes outbound calls to the internet through the same channels as normal. アプリのプロパティ ポータルに一覧表示される送信アドレスは、引き続きそのアプリによって使用されるアドレスです。The outbound addresses that are listed in the app properties portal are the addresses still used by your app. アプリに関する変更は、サービス エンドポイントのセキュリティ保護されたサービスつまり RFC 1918 アドレスへの呼び出しが、VNet に転送されることです。What changes for your app are the calls to service endpoint secured services, or RFC 1918 addresses go into your VNet. WEBSITE_VNET_ROUTE_ALL が 1 に設定されている場合、すべての送信トラフィックを VNet 内に送信できます。If WEBSITE_VNET_ROUTE_ALL is set to 1, all outbound traffic can be sent into your VNet.

この機能では、worker ごとに 1 つの仮想インターフェイスのみがサポートされます。The feature supports only one virtual interface per worker. worker あたり 1 つの仮想インターフェイスは、App Service プランごとに 1 リージョンの VNet 統合があることを意味します。One virtual interface per worker means one regional VNet Integration per App Service plan. 同じ App Service プラン内のすべてのアプリで、同じ VNet 統合を使用できます。All of the apps in the same App Service plan can use the same VNet Integration. アプリで追加の VNet に接続する必要がある場合は、別の App Service プランを作成する必要があります。If you need an app to connect to an additional VNet, you need to create another App Service plan. 使用される仮想インターフェイスは、顧客が直接アクセスできるリソースではありません。The virtual interface used isn't a resource that customers have direct access to.

このテクノロジが動作する方法の性質のために、VNet 統合で使用されるトラフィックは Azure Network Watcher や NSG フローのログには表示されません。Because of the nature of how this technology operates, the traffic that's used with VNet Integration doesn't show up in Azure Network Watcher or NSG flow logs.

ゲートウェイが必要な VNet 統合Gateway-required VNet Integration

ゲートウェイが必要な VNet 統合では、別のリージョンの VNet またはクラシック仮想ネットワークへの接続がサポートされています。Gateway-required VNet Integration supports connecting to a VNet in another region or to a classic virtual network. ゲートウェイが必要な VNet 統合の特徴は次のとおりです。Gateway-required VNet Integration:

  • アプリでは一度に 1 つの VNet にのみ接続できます。Enables an app to connect to only one VNet at a time.
  • App Service プランで、最大 5 つの VNet と統合できます。Enables up to five VNets to be integrated within an App Service plan.
  • App Service プランで使用できる総数に影響を与えることなく、App Service プラン内の複数のアプリで同じ VNet を使用できます。Allows the same VNet to be used by multiple apps in an App Service plan without affecting the total number that can be used by an App Service plan. 同じ App Service プラン内の同じ VNet を使用しているアプリが 6 つある場合、使用されている VNet は 1 つとしてカウントされます。If you have six apps using the same VNet in the same App Service plan, that counts as one VNet being used.
  • ゲートウェイでの SLA により、99.9% の SLA がサポートされます。Supports a 99.9% SLA due to the SLA on the gateway.
  • アプリでは VNet が構成されている DNS を使用できます。Enables your apps to use the DNS that the VNet is configured with.
  • アプリに接続できるためには、Virtual Network のルート ベースのゲートウェイに、SSTP のポイント対サイト VPN が構成されている必要があります。Requires a Virtual Network route-based gateway configured with an SSTP point-to-site VPN before it can be connected to an app.

ゲートウェイが必要な VNet 統合は次の場合は使用できません。You can't use gateway-required VNet Integration:

  • Azure ExpressRoute で接続された VNet に対して。With a VNet connected with Azure ExpressRoute.
  • Linux アプリからFrom a Linux app
  • サービス エンドポイントによって保護されているリソースにアクセスする場合。To access service endpoint secured resources.
  • ExpressRoute とポイント対サイトまたはサイト間 VPN の両方をサポートする共存ゲートウェイに対して。With a coexistence gateway that supports both ExpressRoute and point-to-site or site-to-site VPNs.

Azure 仮想ネットワークでゲートウェイを設定するSet up a gateway in your Azure virtual network

ゲートウェイを作成するには:To create a gateway:

  1. VNet 内にゲートウェイ サブネットを作成します。Create a gateway subnet in your VNet.

  2. VPN ゲートウェイを作成します。Create the VPN gateway. VPN の種類はルート ベースを選択します。Select a route-based VPN type.

  3. ポイント対サイト アドレスを設定します。Set the point-to-site addresses. ゲートウェイが Basic SKU 内にない場合は、ポイント対サイトの構成で IKEV2 を無効にする必要があり、SSTP を選択する必要があります。If the gateway isn't in the basic SKU, then IKEV2 must be disabled in the point-to-site configuration and SSTP must be selected. ポイント対サイトのアドレス空間は、RFC 1918 のアドレス ブロック 10.0.0.0/8、172.16.0.0/12、192.168.0.0/16 内に存在する必要があります。The point-to-site address space must be in the RFC 1918 address blocks 10.0.0.0/8, 172.16.0.0/12, and 192.168.0.0/16.

App Service の VNet 統合で使用するゲートウェイを作成する場合は、証明書をアップロードする必要はありません。If you create the gateway for use with App Service VNet Integration, you don't need to upload a certificate. ゲートウェイの作成には 30 分かかることがあります。Creating the gateway can take 30 minutes. ゲートウェイがプロビジョニングされるまで、アプリを VNet に統合することはできません。You won't be able to integrate your app with your VNet until the gateway is provisioned.

ゲートウェイが必要な VNet 統合のしくみHow gateway-required VNet Integration works

ゲートウェイが必要な VNet 統合は、ポイント対サイト VPN テクノロジに基づいて構築されています。Gateway-required VNet Integration is built on top of point-to-site VPN technology. ポイント対サイト VPN により、ネットワーク アクセスはアプリがホストされている仮想マシンに制限されます。Point-to-site VPNs limit network access to the virtual machine that hosts the app. アプリは、ハイブリッド接続または VNet 統合を通してのみ、インターネットにトラフィックを送信するように制限されます。Apps are restricted to send traffic out to the internet only through Hybrid Connections or through VNet Integration. ゲートウェイが必要な VNet 統合を使用するようにアプリをポータルで構成すると、ゲートウェイとアプリケーション側で証明書を作成して割り当てるための複雑なネゴシエーションが、ユーザーの代わりに管理されます。When your app is configured with the portal to use gateway-required VNet Integration, a complex negotiation is managed on your behalf to create and assign certificates on the gateway and the application side. 結果として、アプリをホストするために使用される worker は、選択した VNet 内の仮想ネットワーク ゲートウェイに直接接続できるようになります。The result is that the workers used to host your apps are able to directly connect to the virtual network gateway in the selected VNet.

ゲートウェイが必要な VNet 統合のしくみ

オンプレミスのリソースにアクセスするAccess on-premises resources

アプリは、サイト間接続がある Vnet と統合することで、オンプレミスのリソースにアクセスできます。Apps can access on-premises resources by integrating with VNets that have site-to-site connections. ゲートウェイが必要な VNet 統合を使用する場合は、ポイント対サイト アドレス ブロックでオンプレミスの VPN ゲートウェイのルートを更新します。If you use gateway-required VNet Integration, update your on-premises VPN gateway routes with your point-to-site address blocks. サイト間 VPN が初めてセットアップされるときには、その構成に使用するスクリプトによって、ルートが正しくセットアップされるはずです。When the site-to-site VPN is first set up, the scripts used to configure it should set up routes properly. サイト間 VPN を作成した後にポイント対サイト アドレスを追加する場合は、ルートを手動で更新する必要があります。If you add the point-to-site addresses after you create your site-to-site VPN, you need to update the routes manually. その詳しい方法はゲートウェイごとに異なるため、ここでは説明しません。Details on how to do that vary per gateway and aren't described here. BGP をサイト間 VPN 接続で構成することはできません。You can't have BGP configured with a site-to-site VPN connection.

VNet 経由でオンプレミスのリソースにアクセスするために、リージョン VNet 統合機能に対する追加の構成は必要ありません。No additional configuration is required for the regional VNet Integration feature to reach through your VNet to on-premises resources. 必要なのは、単に ExpressRoute またはサイト間 VPN を使用して VNet をオンプレミスのリソースに接続することだけです。You simply need to connect your VNet to on-premises resources by using ExpressRoute or a site-to-site VPN.

注意

ゲートウェイが必要な VNet 統合機能では、アプリは ExpressRoute ゲートウェイを含む VNet とは統合されません。The gateway-required VNet Integration feature doesn't integrate an app with a VNet that has an ExpressRoute gateway. ExpressRoute ゲートウェイが共存モードで構成されている場合であっても、VNet 統合は機能しません。Even if the ExpressRoute gateway is configured in coexistence mode, the VNet Integration doesn't work. ExpressRoute 接続経由でリソースにアクセスする必要がある場合は、VNet で実行されるリージョン VNet 統合機能または App Service Environment を使用します。If you need to access resources through an ExpressRoute connection, use the regional VNet Integration feature or an App Service Environment, which runs in your VNet.

ピアリングPeering

リージョン VNet 統合でピアリングを使用する場合、追加の構成を行う必要はありません。If you use peering with the regional VNet Integration, you don't need to do any additional configuration.

ゲートウェイが必要な VNet 統合でピアリングを使用する場合は、いくつかの追加の項目を構成する必要があります。If you use gateway-required VNet Integration with peering, you need to configure a few additional items. アプリで動作するようにピアリングを構成するには:To configure peering to work with your app:

  1. アプリの接続先の VNet でピアリング接続を追加します。Add a peering connection on the VNet your app connects to. ピアリング接続を追加するときに、 [仮想ネットワークアクセスを許可する] を有効にして、 [転送されたトラフィックを許可する] チェック ボックスと [ゲートウェイ転送を許可する] チェック ボックスをオンにします。When you add the peering connection, enable Allow virtual network access and select Allow forwarded traffic and Allow gateway transit.
  2. 接続先の VNet とピアリングする VNet にピアリング接続を追加します。Add a peering connection on the VNet that's being peered to the VNet you're connected to. 対象の VNet でピアリング接続を追加するときは、 [仮想ネットワークアクセスを許可する] を有効にして、 [転送されたトラフィックを許可する][Allow remote gateways](リモート ゲートウェイを許可する) を選択します。When you add the peering connection on the destination VNet, enable Allow virtual network access and select Allow forwarded traffic and Allow remote gateways.
  3. ポータルで [App Service プラン] > [ネットワーク] > [VNet 統合] に移動します。Go to the App Service plan > Networking > VNet Integration UI in the portal. アプリの接続先 VNet を選択します。Select the VNet your app connects to. ルーティングのセクションで、アプリの接続先の VNet とピアリングされている VNet のアドレス範囲を追加します。Under the routing section, add the address range of the VNet that's peered with the VNet your app is connected to.

VNet 統合を管理するManage VNet Integration

VNet との接続および切断は、アプリ レベルで行われます。Connecting and disconnecting with a VNet is at an app level. 複数のアプリで VNet 統合に影響する可能性がある操作は、App Service プラン レベルで行われます。Operations that can affect VNet Integration across multiple apps are at the App Service plan level. アプリの [ネットワーク] > [VNet 統合] ポータルから、VNet に関する詳細を取得できます。From the app > Networking > VNet Integration portal, you can get details on your VNet. [App Service プラン] > [ネットワーク] > [VNet 統合] ポータルの App Service プラン レベルでも、同様の情報が表示されます。You can see similar information at the App Service plan level in the App Service plan > Networking > VNet Integration portal.

VNet 統合インスタンスのアプリ ビューで実行できる操作は、現在接続されている VNet からアプリを切断する操作のみです。The only operation you can take in the app view of your VNet Integration instance is to disconnect your app from the VNet it's currently connected to. VNet からアプリを切断するには、 [切断] を選択します。To disconnect your app from a VNet, select Disconnect. VNet から切断すると、アプリが再起動されます。Your app is restarted when you disconnect from a VNet. 切断によって VNet に変更は生じません。Disconnecting doesn't change your VNet. サブネットやゲートウェイは削除されません。The subnet or gateway isn't removed. その後で VNet を削除する必要がある場合は、まず VNet からアプリを切断し、ゲートウェイなどのそこに含まれているリソースを削除します。If you then want to delete your VNet, first disconnect your app from the VNet and delete the resources in it, such as gateways.

App Service プランの VNet 統合の UI には、App Service プラン内のアプリによって使用されているすべての VNet 統合が表示されます。The App Service plan VNet Integration UI shows you all of the VNet integrations used by the apps in your App Service plan. 各 VNet の詳細を表示するには、目的の VNet を選択します。To see details on each VNet, select the VNet you're interested in. ここでは、ゲートウェイが必要な VNet 統合に対して実行できる操作が 2 つあります。There are two actions you can perform here for gateway-required VNet Integration:

  • ネットワークを同期する: ネットワーク同期操作は、ゲートウェイに依存する VNet 統合機能に対してのみ使用されます。Sync network: The sync network operation is used only for the gateway-dependent VNet Integration feature. ネットワーク同期操作を実行すると、証明書とネットワークの情報が確実に同期されるようになります。VNet の DNS を追加または変更する場合は、ネットワーク同期操作を実行する必要があります。Performing a sync network operation ensures that your certificates and network information are in sync. If you add or change the DNS of your VNet, perform a sync network operation. この操作では、この VNet を使用するすべてのアプリが再起動されます。This operation restarts any apps that use this VNet. この操作は、使用しているアプリと VNet が異なるサブスクリプションに属している場合は機能しません。This operation will not work if you are using an app and a vnet belonging to different subscriptions.
  • ルートを追加する: ルートを追加すると、送信トラフィックが VNet に転送されます。Add routes: Adding routes drives outbound traffic into your VNet.

ゲートウェイが必要な VNET 統合のルーティングGateway-required VNet Integration routing

VNet で定義されているルートが、アプリから VNet にトラフィックを転送するために使用されます。The routes that are defined in your VNet are used to direct traffic into your VNet from your app. VNet に追加の送信トラフィックを送信するには、ここでそれらのアドレス ブロックを追加します。To send additional outbound traffic into the VNet, add those address blocks here. この機能は、ゲートウェイが必要な VNet 統合でのみ動作します。This capability only works with gateway-required VNet Integration. ゲートウェイが必要な VNet 統合を使用すると、リージョン VNet 統合の場合とは異なり、ルート テーブルによるアプリのトラフィックへの影響はありません。Route tables don't affect your app traffic when you use gateway-required VNet Integration the way that they do with regional VNet Integration.

ゲートウェイが必要な VNet 統合の証明書Gateway-required VNet Integration certificates

ゲートウェイが必要な VNet 統合が有効になっている場合は、接続のセキュリティを確保するために証明書の交換が必要です。When gateway-required VNet Integration is enabled, there's a required exchange of certificates to ensure the security of the connection. 証明書と共に、DNS の構成、ルート、ネットワークについて記述するその他の同様の情報があります。Along with the certificates are the DNS configuration, routes, and other similar things that describe the network.

証明書またはネットワーク情報が変更された場合は、 [ネットワークの同期] を選択します。If certificates or network information is changed, select Sync Network. [ネットワークの同期] を選択すると、アプリと VNet の間の接続が短時間途切れます。When you select Sync Network, you cause a brief outage in connectivity between your app and your VNet. アプリが再起動されていない間は、接続の途切れによって、サイトが正常に機能しなくなる可能性があります。While your app isn't restarted, the loss of connectivity could cause your site to not function properly.

価格の詳細Pricing details

リージョン VNet 統合機能には、App Service プランの価格レベルの料金を超える追加の使用料金はありません。The regional VNet Integration feature has no additional charge for use beyond the App Service plan pricing tier charges.

ゲートウェイが必要な VNet 統合機能の使用には、3 つの料金が関連します。Three charges are related to the use of the gateway-required VNet Integration feature:

  • App Service プランの価格レベルの料金: アプリは、Standard、Premium、または PremiumV2 の App Service プランに属している必要があります。App Service plan pricing tier charges: Your apps need to be in a Standard, Premium, or PremiumV2 App Service plan. コストについて詳しくは、「App Service の価格」をご覧ください。For more information on those costs, see App Service pricing.
  • データ転送コスト: VNet が同じデータ センター内にある場合でも、データのエグレスには料金がかかります。Data transfer costs: There's a charge for data egress, even if the VNet is in the same datacenter. これらの料金については、データ転送価格の詳細に関するページをご覧ください。Those charges are described in Data Transfer pricing details.
  • VPN Gateway のコスト: ポイント対サイト VPN に必要な仮想ネットワーク ゲートウェイに対して費用がかかります。VPN gateway costs: There's a cost to the virtual network gateway that's required for the point-to-site VPN. 詳細については、「VPN Gateway の価格」を参照してください。For more information, see VPN gateway pricing.

トラブルシューティングTroubleshooting

機能は簡単にセットアップできますが、問題が発生しないという意味ではありません。The feature is easy to set up, but that doesn't mean your experience will be problem free. 目的のエンドポイントへのアクセスに関して問題が発生した場合は、アプリのコンソールからの接続をテストするために、いくつかのユーティリティを利用できます。If you encounter problems accessing your desired endpoint, there are some utilities you can use to test connectivity from the app console. 利用できるコンソールが 2 つあります。There are two consoles that you can use. 1 つは Kudu コンソールで、もう 1 つは Azure portal 内のコンソールです。One is the Kudu console, and the other is the console in the Azure portal. アプリから Kudu コンソールにアクセスするには、 [ツール] > [Kudu] の順に移動します。To reach the Kudu console from your app, go to Tools > Kudu. [サイト名].scm.azurewebsites.net で Kudo コンソールにアクセスすることもできます。You can also reach the Kudo console at [sitename].scm.azurewebsites.net. Web サイトが読み込まれたら、 [デバッグ コンソール] タブに移動します。お使いのアプリから Azure portal によってホストされたコンソールにアクセスするには、 [ツール] > [コンソール] の順に移動します。After the website loads, go to the Debug console tab. To get to the Azure portal-hosted console from your app, go to Tools > Console.

ツールTools

pingnslookup、および tracert の各ツールは、セキュリティの制約により、コンソールから使用することはできません。The tools ping, nslookup, and tracert won't work through the console because of security constraints. それを補うために、2 つの独立したツールが追加されています。To fill the void, two separate tools are added. DNS 機能をテストするために、nameresolver.exe という名前のツールを追加しました。To test DNS functionality, we added a tool named nameresolver.exe. の構文は次のとおりです。The syntax is:

nameresolver.exe hostname [optional: DNS Server]

nameresolver を使用すると、アプリが依存しているホスト名を確認できます。You can use nameresolver to check the hostnames that your app depends on. この方法によって、DNS の構成に誤りがあるかどうかや、DNS サーバーへのアクセス権がないかどうかをテストできます。This way you can test if you have anything misconfigured with your DNS or perhaps don't have access to your DNS server. 環境変数 WEBSITE_DNS_SERVER と WEBSITE_DNS_ALT_SERVER を調べることによって、アプリによって使用される DNS サーバーをコンソール上で確認できます。You can see the DNS server that your app uses in the console by looking at the environmental variables WEBSITE_DNS_SERVER and WEBSITE_DNS_ALT_SERVER.

次のツールを使用して、ホストとポートを組み合わせたものへの TCP 接続をテストすることができます。You can use the next tool to test for TCP connectivity to a host and port combination. このツールは tcpping という名前で、構文は次のとおりです。This tool is called tcpping and the syntax is:

tcpping.exe hostname [optional: port]

tcpping ユーティリティを使用すると、特定のホストとポートにアクセスできるかどうかがわかります。The tcpping utility tells you if you can reach a specific host and port. 成功として示されるのは、ホストとポートの組み合わせでリッスンしているアプリケーションがあり、アプリから指定のホストとポートへのネットワーク アクセスがある場合のみです。It can show success only if there's an application listening at the host and port combination, and there's network access from your app to the specified host and port.

仮想ネットワークによってホストされたリソースへのアクセスをデバッグするDebug access to virtual network-hosted resources

さまざまな要因によって、アプリから特定のホストとポートへのアクセスが妨げられる場合があります。A number of things can prevent your app from reaching a specific host and port. ほとんどの場合は、次のいずれかに該当します。Most of the time it's one of these things:

  • ファイアウォールがルートを塞いでいる。A firewall is in the way. ルートを塞いでいるファイアウォールがあると、TCP タイムアウトに達します。If you have a firewall in the way, you hit the TCP timeout. この場合の TCP タイムアウトは 21 秒です。The TCP timeout is 21 seconds in this case. tcpping ツールを使用して接続をテストします。Use the tcpping tool to test connectivity. TCP タイムアウトには、ファイアウォール以外にさまざまな要因が考えられますが、まずはここから開始します。TCP timeouts can be caused by many things beyond firewalls, but start there.
  • DNS にアクセスできない。DNS isn't accessible. DNS タイムアウトは、DNS サーバーごとに 3 秒です。The DNS timeout is 3 seconds per DNS server. 2 つの DNS サーバーがある場合、タイムアウトは 6 秒です。If you have two DNS servers, the timeout is 6 seconds. nameresolver を使用して、DNS が機能しているかどうかを確認します。Use nameresolver to see if DNS is working. nslookup では仮想ネットワークの構成に使用されている DNS を利用しないため、nslookup を使うことはできません。You can't use nslookup, because that doesn't use the DNS your virtual network is configured with. アクセスできない場合は、ファイアウォールが存在するか、NSG が DNS へのアクセスをブロックしているか、または DNS が停止している可能性があります。If inaccessible, you could have a firewall or NSG blocking access to DNS or it could be down.

これらの項目が問題の回答になっていない場合は、まず次のような点を確認してください。If those items don't answer your problems, look first for things like:

リージョン VNet 統合Regional VNet Integration

  • 宛先は RFC1918 以外のアドレスであり、WEBSITE_VNET_ROUTE_ALL が 1 に設定されていないこと。Is your destination a non-RFC1918 address and you don't have WEBSITE_VNET_ROUTE_ALL set to 1?
  • 統合サブネットからのエグレスをブロックしている NSG は存在するか。Is there an NSG blocking egress from your integration subnet?
  • Azure ExpressRoute または VPN をまたがって移動する場合は、オンプレミスのゲートウェイがトラフィック バックアップを Azure にルーティングするように構成されているか。If you're going across Azure ExpressRoute or a VPN, is your on-premises gateway configured to route traffic back up to Azure? 仮想ネットワーク内のエンドポイントには到達できるが、オンプレミスに到達できない場合は、ルートを確認します。If you can reach endpoints in your virtual network but not on-premises, check your routes.
  • 統合サブネットに委任を設定するための十分なアクセス許可があるか。Do you have enough permissions to set delegation on the integration subnet? リージョン VNet 統合が構成されている間、統合サブネットは Microsoft.Web に委任されます。During regional VNet Integration configuration, your integration subnet is delegated to Microsoft.Web. VNet 統合 UI では、Microsoft.Web に対するサブネットが自動的に委任されます。The VNet Integration UI delegates the subnet to Microsoft.Web automatically. アカウントに委任を設定するための十分なネットワークのアクセス許可がない場合は、サブネットを委任するために、統合サブネットに属性を設定できるユーザーが必要になります。If your account doesn't have sufficient networking permissions to set delegation, you'll need someone who can set attributes on your integration subnet to delegate the subnet. 統合サブネットを手動で委任するには、Azure Virtual Network サブネット UI にアクセスして、Microsoft.Web の委任を設定します。To manually delegate the integration subnet, go to the Azure Virtual Network subnet UI and set the delegation for Microsoft.Web.

ゲートウェイが必要な VNet 統合Gateway-required VNet Integration

  • ポイント対サイトのアドレス範囲が RFC 1918 の範囲 (10.0.0.0-10.255.255.255/172.16.0.0-172.31.255.255/192.168.0.0-192.168.255.255) にあるか。Is the point-to-site address range in the RFC 1918 ranges (10.0.0.0-10.255.255.255 / 172.16.0.0-172.31.255.255 / 192.168.0.0-192.168.255.255)?
  • ゲートウェイはポータル上に稼働中として表示されているか。Does the gateway show as being up in the portal? ゲートウェイがダウンしている場合は、再起動してください。If your gateway is down, then bring it back up.
  • 証明書は同期していると表示されているか。または、ネットワーク構成が変更されたことが疑われるか。Do certificates show as being in sync, or do you suspect that the network configuration was changed? 証明書が同期していないか、または ASP と同期していない仮想ネットワーク構成への変更が行われたことが疑われる場合は、 [ネットワークの同期] を選択します。If your certificates are out of sync or you suspect that a change was made to your virtual network configuration that wasn't synced with your ASPs, select Sync Network.
  • VPN をまたがって移動する場合は、オンプレミスのゲートウェイがトラフィック バックアップを Azure にルーティングするように構成されているか。If you're going across a VPN, is the on-premises gateway configured to route traffic back up to Azure? 仮想ネットワーク内のエンドポイントには到達できるが、オンプレミスに到達できない場合は、ルートを確認します。If you can reach endpoints in your virtual network but not on-premises, check your routes.
  • ポイント対サイトと ExpressRoute の両方をサポートする共存ゲートウェイを使用しようとしているか。Are you trying to use a coexistence gateway that supports both point to site and ExpressRoute? VNet 統合では、共存ゲートウェイはサポートされていません。Coexistence gateways aren't supported with VNet Integration.

ホストとポートの特定の組み合わせへのアクセスが何によってブロックされているかを確認できないため、ネットワークに関する問題のデバッグは厄介です。Debugging networking issues is a challenge because you can't see what's blocking access to a specific host:port combination. 次のような原因が考えられます。Some causes include:

  • ホスト上で稼働しているファイアウォールが、ポイント対サイト IP の範囲からアプリケーション ポートへのアクセスを妨げている。You have a firewall up on your host that prevents access to the application port from your point-to-site IP range. サブネットの境界を越えるには、多くの場合、パブリック アクセスが必要になります。Crossing subnets often requires public access.
  • ターゲット ホストがダウンしている。Your target host is down.
  • アプリケーションがダウンしている。Your application is down.
  • IP またはホスト名が誤っている。You had the wrong IP or hostname.
  • アプリケーションが予期しないポートでリッスンしている。Your application is listening on a different port than what you expected. エンドポイント ホストで "netstat-aon" を使用することで、プロセス ID と、リッスンしているポートを一致させることができます。You can match your process ID with the listening port by using "netstat -aon" on the endpoint host.
  • ネットワーク セキュリティ グループが、ポイント対サイト IP の範囲からアプリケーション ホストとポートへのアクセスを妨げる手法で構成されている。Your network security groups are configured in such a manner that they prevent access to your application host and port from your point-to-site IP range.

アプリによって実際にどのアドレスが使用されるかを把握することはできません。You don't know what address your app actually uses. 統合サブネットまたはポイント対サイトのアドレス範囲内の任意のアドレスである可能性があるため、アドレス範囲全体からのアクセスを許可する必要があります。It could be any address in the integration subnet or point-to-site address range, so you need to allow access from the entire address range.

追加のデバッグ手順は次のとおりです。Additional debug steps include:

  • 仮想ネットワーク内の VM に接続し、そこからリソースのホスト:ポートへのアクセスを試みます。Connect to a VM in your virtual network and attempt to reach your resource host:port from there. TCP アクセスのテストには、PowerShell コマンド test-netconnection を使用します。To test for TCP access, use the PowerShell command test-netconnection. の構文は次のとおりです。The syntax is:
test-netconnection hostname [optional: -Port]
  • VM 上でアプリケーションを起動し、tcpping を使用して、アプリのコンソールからそのホストとポートへのアクセスをテストします。Bring up an application on a VM and test access to that host and port from the console from your app by using tcpping.

オンプレミスのリソースOn-premises resources

アプリからオンプレミスのリソースにアクセスできない場合は、仮想ネットワークからリソースにアクセスできるかどうかを確認します。If your app can't reach a resource on-premises, check if you can reach the resource from your virtual network. TCP アクセスを確認するには、PowerShell コマンド test-netconnection を使用します。Use the test-netconnection PowerShell command to check for TCP access. VM からオンプレミス リソースに到達できない場合は、VPN または ExpressRoute 接続が正しく構成されていない可能性があります。If your VM can't reach your on-premises resource, your VPN or ExpressRoute connection might not be configured properly.

仮想ネットワークでホストされている VM からオンプレミス システムにアクセスでき、アプリからはアクセスできない場合、以下のいずれかの理由が原因と考えられます。If your virtual network-hosted VM can reach your on-premises system but your app can't, the cause is likely one of the following reasons:

  • オンプレミスのゲートウェイで、ルートがサブネットまたはポイント対サイトのアドレス範囲に構成されていない。Your routes aren't configured with your subnet or point-to-site address ranges in your on-premises gateway.
  • ネットワーク セキュリティ グループによって、ポイント対サイト IP 範囲へのアクセスがブロックされている。Your network security groups are blocking access for your point-to-site IP range.
  • オンプレミスのファイアウォールによって、ポイント対サイト IP 範囲からのトラフィックがブロックされている。Your on-premises firewalls are blocking traffic from your point-to-site IP range.
  • リージョン VNet 統合機能を使用して、RFC 1918 以外のアドレスへのアクセスを試みている。You're trying to reach a non-RFC 1918 address by using the regional VNet Integration feature.

オートメーションAutomation

リージョン VNet 統合では CLI がサポートされています。CLI support is available for regional VNet Integration. 次のコマンドにアクセスするには、Azure CLI をインストールします。To access the following commands, install the Azure CLI.

az webapp vnet-integration --help

Group
    az webapp vnet-integration : Methods that list, add, and remove virtual network
    integrations from a webapp.
        This command group is in preview. It may be changed/removed in a future release.
Commands:
    add    : Add a regional virtual network integration to a webapp.
    list   : List the virtual network integrations on a webapp.
    remove : Remove a regional virtual network integration from webapp.

az appservice vnet-integration --help

Group
    az appservice vnet-integration : A method that lists the virtual network
    integrations used in an appservice plan.
        This command group is in preview. It may be changed/removed in a future release.
Commands:
    list : List the virtual network integrations used in an appservice plan.

ゲートウェイが必要な VNet 統合では、PowerShell を使用して App Service を Azure 仮想ネットワークと統合できます。For gateway-required VNet Integration, you can integrate App Service with an Azure virtual network by using PowerShell. すぐに使用できるスクリプトについては、「Azure App Service のアプリを Azure 仮想ネットワークに接続する」をご覧ください。For a ready-to-run script, see Connect an app in Azure App Service to an Azure virtual network.