Skip to content

Commit 8218d65

Browse files
committed
Explain difference between app and config routing
1 parent 0975acb commit 8218d65

File tree

1 file changed

+14
-5
lines changed

1 file changed

+14
-5
lines changed

articles/app-service/overview-vnet-integration.md

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,25 +76,30 @@ If the virtual network is in a different subscription than the app, you must ens
7676

7777
### Routes
7878

79-
There are two types of routing to consider when you configure regional virtual network integration. Application routing defines what traffic is routed from your application and into the virtual network. Network routing is the ability to control how traffic is routed from your virtual network and out.
79+
There are two types of routing to consider when you configure regional virtual network integration. [Application routing](#application-routing) defines what traffic is routed from your app and into the virtual network. [Configuration routing](#configuration-routing) affects operations that happen before or during startup of you app. Examples are container image pull and app settings with Key Vault reference. [Network routing](#network-routing) is the ability to control how both app and configuration traffic is routed from your virtual network and out.
8080

8181
#### Application routing
8282

83-
When you configure application routing, you can either route all traffic or only private traffic (also known as [RFC1918](https://datatracker.ietf.org/doc/html/rfc1918#section-3) traffic) into your virtual network. You configure this behavior through the **Route All** setting. If **Route All** is disabled, your app only routes private traffic into your virtual network. If you want to route all your outbound traffic into your virtual network, make sure that **Route All** is enabled.
83+
Application routing affects all the traffic that is sent from your app after it has been started. See [configuration routing](#configuration-routing) for traffic during start up. When you configure application routing, you can either route all traffic or only private traffic (also known as [RFC1918](https://datatracker.ietf.org/doc/html/rfc1918#section-3) traffic) into your virtual network. You configure this behavior through the **Route All** setting. If **Route All** is disabled, your app only routes private traffic into your virtual network. If you want to route all your outbound app traffic into your virtual network, make sure that **Route All** is enabled.
8484

8585
> [!NOTE]
86-
> * When **Route All** is enabled, all traffic is subject to the NSGs and UDRs that are applied to your integration subnet. When all traffic routing is enabled, outbound traffic is still sent from the addresses that are listed in your app properties, unless you provide routes that direct the traffic elsewhere.
87-
> * Windows containers don't support routing App Service Key Vault references or pulling custom container images over virtual network integration.
86+
> * When **Route All** is enabled, all app traffic is subject to the NSGs and UDRs that are applied to your integration subnet. When **Route All** is enabled, outbound traffic is still sent from the addresses that are listed in your app properties, unless you provide routes that direct the traffic elsewhere.
8887
> * Regional virtual network integration can't use port 25.
8988
9089
Learn [how to configure application routing](./configure-vnet-integration-routing.md).
9190

92-
We recommend that you use the **Route All** configuration setting to enable routing of all traffic. Using the configuration setting allows you to audit the behavior with [a built-in policy](https://portal.azure.com/#blade/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F33228571-70a4-4fa1-8ca1-26d0aba8d6ef). The existing WEBSITE_VNET_ROUTE_ALL app setting can still be used, and you can enable all traffic routing with either setting.
91+
We recommend that you use the **Route All** configuration setting to enable routing of all traffic. Using the configuration setting allows you to audit the behavior with [a built-in policy](https://portal.azure.com/#blade/Microsoft_Azure_Policy/PolicyDetailBlade/definitionId/%2Fproviders%2FMicrosoft.Authorization%2FpolicyDefinitions%2F33228571-70a4-4fa1-8ca1-26d0aba8d6ef). The existing `WEBSITE_VNET_ROUTE_ALL` app setting can still be used, and you can enable all traffic routing with either setting.
9392

9493
#### Configuration routing
9594

9695
When you are using virtual network integration, you can configure how parts of the configuration traffic is managed. By default, the mentioned configurations will go directly to the internet unless you actively configure it to be routed through the virtual network integration.
9796

97+
> [!NOTE]
98+
> * Windows containers don't support routing App Service Key Vault references or pulling custom container images over virtual network integration.
99+
> * Backup/restore to private storage accounts is currently not supported.
100+
> * Get certificates from private Key Vaults is currently not supported.
101+
> * Diagnostics logs to private storage accounts is currently not supported.
102+
98103
##### Content storage
99104

100105
Bringing you own storage for content in often used in Functions where [content storage](./../azure-functions/configure-networking-how-to.md#restrict-your-storage-account-to-a-virtual-network) is configured as part of the Functions app.
@@ -105,6 +110,10 @@ To route content storage traffic through the virtual network integration, you ne
105110

106111
When using custom containers for Linux, you can pull the container over the virtual network integration. To route the container pull traffic through the virtual network integration, you must add an app setting named `WEBSITE_PULL_IMAGE_OVER_VNET` with the value `true`.
107112

113+
##### App settings using Key Vault references
114+
115+
App settings using Key Vault references will attempt to get the secrets over public internet. If the Key Vualt is blocking public traffic and the app is using virtual network integration, an attempt will then be made to get the secrets through the virtual network integration.
116+
108117
#### Network routing
109118

110119
You can use route tables to route outbound traffic from your app to wherever you want. Route tables affect your destination traffic. When **Route All** is disabled in [application routing](#application-routing), only private traffic (RFC1918) is affected by your route tables. Common destinations can include firewall devices or gateways. Routes that are set on your integration subnet won't affect replies to inbound app requests.

0 commit comments

Comments
 (0)