On September 30, 2025, Microsoft will retire the default outbound access method for Azure VMs. This means any new deployments without an explicitly configured egress path (like a NAT gateway or public IP) will no longer have outbound Internet access by default.
Â
Why does this matter?
Â
Default outbound access is:
- Implicit and brittle — IPs are assigned by Microsoft and can change without notice
- Insecure — Opens potential paths to the internet that may go unnoticed
- Deprecated — Will soon be unavailable for new resources
Â
Microsoft recommends using explicit outbound connectivity, such as:
- Subnets associated with a NAT Gateway
- VMs in the backend pool of a standard Load Balancer with outbound rules
- VMs with explicitly assigned public IPs
    Read Microsoft’s official guidance
Â
How to Audit Your Azure Subnets for Missing NAT Gateways
Â
With Forward Networks, you can identify Azure subnets that have Internet-bound routes but no associated NAT Gateway — a risky configuration in today’s Zero Trust world.
Here’s a Forward Networks query (NQE) you can use:
Â
/**
* Find Internet routes whose subnet has no NAT Gateway
*/
foreach cloudAccount in network.cloudAccounts
where cloudAccount.cloudType == CloudType.AZURE
foreach vpc in cloudAccount.vpcs
foreach subnet in vpc.subnets
foreach routeTable in vpc.routeTables
foreach route in routeTable.routes
where route.subnetIdMatch == subnet.id
where isPresent(route.nextHop)
where when route.nextHop is
internet -> true;
otherwise -> false
where length(
foreach natGw in vpc.natGateways
foreach natGwSubnet in natGw.publicSubnets
foreach subnetAddress in subnet.addresses
where toString(natGwSubnet) == toString(subnetAddress)
select natGwSubnet
) == 0
where length(
foreach natGw in vpc.natGateways
foreach natGwSubnet in natGw.privateSubnets
foreach subnetAddress in subnet.addresses
where toString(natGwSubnet) == toString(subnetAddress)
select natGwSubnet
) == 0
select {
vpcId: vpc.id,
subnetId: subnet.id,
routeTableId: routeTable.id,
note: "Internet route found, but no NAT Gateway"
}
Â
This query surfaces dangerous gaps — for instance, a VM in a subnet with an internet route and no NAT Gateway may suddenly lose connectivity or expose your network to unnecessary risk.
Â
Final Thoughts
As you prepare for the September 30, 2025 cutoff, use Forward Networks to:
- Proactively identify misconfigured subnets
- Validate that explicit egress mechanisms are in place
- Enforce Zero Trust and document your transition
Â
Need help building this query into your automated change checks?
Reach out — we’d love to collaborate!
Â