Open
Conversation
Deploying localstack-docs with
|
| Latest commit: |
23d33bd
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://3c217704.localstack-docs.pages.dev |
| Branch Preview URL: | https://harshmishra-doc-78.localstack-docs.pages.dev |
paolosalvatori
approved these changes
Mar 30, 2026
paolosalvatori
left a comment
There was a problem hiding this comment.
@HarshCasper please review my comments, suggestions, and additions. Thanks.
|
|
||
| Azure Virtual Network (VNet) is the core networking service for isolating and routing Azure resources in private IP address spaces. | ||
| It lets you define address ranges, create subnets, and control network behavior for applications. | ||
| VNets are commonly used to model secure, segmented network topologies in cloud environments. |
There was a problem hiding this comment.
Suggested change
| VNets are commonly used to model secure, segmented network topologies in cloud environments. | |
| Virtual networks are commonly used to model secure, segmented network topologies in cloud environments. For more information, see [What is Azure Virtual Network?](https://learn.microsoft.com/en-us/azure/virtual-network/virtual-networks-overview). |
| It lets you define address ranges, create subnets, and control network behavior for applications. | ||
| VNets are commonly used to model secure, segmented network topologies in cloud environments. | ||
|
|
||
| LocalStack for Azure allows you to build and test Virtual Network workflows in your local environment. |
There was a problem hiding this comment.
Suggested change
| LocalStack for Azure allows you to build and test Virtual Network workflows in your local environment. | |
| LocalStack for Azure provides a local environment to build and test Azure networking resources, such as virtual networks, private endpoints, and private DNS zones. |
Comment on lines
+22
to
+27
| Start your LocalStack container using your preferred method. | ||
| Then start CLI interception: | ||
|
|
||
| ```bash | ||
| azlocal start_interception | ||
| ``` |
There was a problem hiding this comment.
Suggested change
| Start your LocalStack container using your preferred method. | |
| Then start CLI interception: | |
| ```bash | |
| azlocal start_interception | |
| ``` | |
| Launch LocalStack using your preferred method. For more information, see [Introduction to LocalStack for Azure](/azure/getting-started/). Once the container is running, enable Azure CLI interception by running: | |
| ```bash | |
| azlocal start-interception | |
| ``` | |
| :::note | |
| As an alternative to using the `azlocal` CLI, users can run: | |
| `azlocal start-interception` | |
| This command points the `az` CLI away from the public Azure management REST API and toward the LocalStack for Azure emulator API. | |
| To revert this configuration, run: | |
| `azlocal stop-interception` | |
| This reconfigures the `az` CLI to send commands to the official Azure management REST API. | |
| ::: |
|
|
||
| ### Create and inspect a virtual network | ||
|
|
||
| Create a VNet with a `10.0.0.0/16` address space: |
There was a problem hiding this comment.
Suggested change
| Create a VNet with a `10.0.0.0/16` address space: | |
| Create a virtual network with a `10.0.0.0/16` address space: |
| } | ||
| ``` | ||
|
|
||
| Get the VNet details: |
There was a problem hiding this comment.
Using VNet in place of virtual network is totally fine, but in the documentation is better to use virtual network.
Suggested change
| Get the VNet details: | |
| Get the virtual network (VNet) details: |
| } | ||
| ``` | ||
|
|
||
| Get and list subnets: |
There was a problem hiding this comment.
In this case I used VNet as the main subject are subnets.
Suggested change
| Get and list subnets: | |
| Retrieve new subnet details and list all VNet subnets |
| ] | ||
| ``` | ||
|
|
||
| Create a second subnet, delete the first subnet, and list again: |
There was a problem hiding this comment.
Suggested change
| Create a second subnet, delete the first subnet, and list again: | |
| Add a second subnet to the virtual network, remove the first , and relist all subnets: |
|
|
||
| ### Delete and verify | ||
|
|
||
| Delete the VNet and verify the list is empty: |
There was a problem hiding this comment.
Suggested change
| Delete the VNet and verify the list is empty: | |
| Delete the VNet and validate that no virtual networks remain in the resource group: |
| ```bash title="Output" | ||
| [] | ||
| ``` | ||
|
|
There was a problem hiding this comment.
Suggested change
| ## Features | |
| The Virtual Network emulator supports the following features: | |
| - **Virtual networks**: Create, update, delete, list, and get virtual networks with configurable address spaces, DNS servers, and DDoS protection settings. | |
| - **Subnets**: Full lifecycle management of subnets within virtual networks, including address prefix allocation, service endpoint configuration, and NSG/route table associations. | |
| - **Network security groups**: Create and manage network security groups with custom security rules. Default rules (AllowVnetInBound, AllowAzureLoadBalancerInBound, DenyAllInBound, AllowVnetOutBound, AllowInternetOutBound, DenyAllOutBound) are automatically provisioned. | |
| - **Route tables**: Create and manage route tables with custom route entries supporting next hop types such as VirtualAppliance, VirtualNetworkGateway, Internet, and VnetLocal. | |
| - **Public IP addresses**: Create and manage public IP addresses with Static or Dynamic allocation methods, Standard or Basic SKUs, and availability zone configuration. | |
| - **Public IP prefixes**: Create and manage public IP prefixes with configurable prefix lengths and SKU settings. | |
| - **NAT gateways**: Create and manage NAT gateways with public IP address and public IP prefix associations. | |
| - **Network interfaces**: Create and manage network interfaces with IP configurations, dynamic IP allocation from subnets, accelerated networking, and IP forwarding settings. | |
| - **Private DNS zones**: Create and manage private DNS zones with virtual network links, registration enablement, and A record sets. | |
| - **Private endpoints**: Create and manage private endpoints with automatic network interface provisioning, private link service connections, and private DNS zone group integration. | |
| - **Bastion hosts**: Create and manage bastion hosts with IP configuration validation, SKU selection (Basic, Standard, Premium), and scale unit configuration. | |
| ## Limitations | |
| - **No network traffic routing**: The emulator does not route network traffic or enforce security rules. Resources are stored and returned with correct metadata, but no packet-level behavior is applied. | |
| - **IPv6**: IPv6 fields are accepted in requests but are not functional. All IP allocation operates on IPv4 address spaces only. | |
| - **Private DNS record types**: Only A record sets are supported in private DNS zones. Other record types (CNAME, MX, TXT, SRV, AAAA) are not available. | |
| - **Public IP addresses**: Addresses are locally generated and do not represent routable IPs on the public internet. | |
| - **Bastion host connectivity**: Feature flags such as tunneling, file copy, and Kerberos authentication are stored as configuration but do not provide actual connectivity. | |
| - **VNet peering**: Virtual network peering is not supported. | |
| - **VPN and ExpressRoute gateways**: VPN gateways and ExpressRoute circuits are not implemented. | |
| - **Load balancers**: Azure Load Balancer resources are not implemented. | |
| - **Application gateways**: Application Gateway resources are not implemented. | |
| - **Network watchers**: Network Watcher and flow log resources are not implemented. | |
| - **No data persistence**: Network resources are not persisted and are lost when the emulator is stopped or restarted. | |
| ## Samples | |
| The following samples demonstrate how to use Virtual Network with LocalStack for Azure: | |
| - [Function App and Service Bus](https://github.com/localstack/localstack-azure-samples/tree/main/samples/function-app-service-bus/dotnet/) | |
| - [Web App and Cosmos DB for MongoDB API](https://github.com/localstack/localstack-azure-samples/tree/main/samples/web-app-cosmosdb-mongodb-api/python/) | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.