About This Page
This page is part of the Azure documentation. It contains code examples and configuration instructions for working with Azure services.
Bias Analysis
Bias Types:
⚠️
powershell_heavy
⚠️
windows_tools
⚠️
missing_linux_example
⚠️
windows_first
Summary:
The documentation is heavily focused on Azure PowerShell, with all examples and instructions using PowerShell cmdlets. There are no CLI, Bash, or Linux-native command examples provided, and the prerequisites and workflow assume the use of PowerShell (either locally or in Cloud Shell). This creates a Windows-centric experience, even though the VM created is Linux-based.
Recommendations:
- Provide equivalent Azure CLI (az) command examples alongside or in place of PowerShell examples, as Azure CLI is cross-platform and commonly used on Linux and macOS.
- Explicitly mention that Azure Cloud Shell supports both Bash and PowerShell, and show how to select Bash.
- Include Linux/Bash shell command snippets for each step, especially for users who prefer or require a non-Windows workflow.
- Clarify that all steps can be performed from any OS using Azure CLI, not just from a Windows/PowerShell environment.
- Where possible, link to documentation for both PowerShell and CLI approaches, and avoid implying PowerShell is the default or only method.
Create pull request
Flagged Code Snippets
1. Create a virtual machine using [New-AzVM](/powershell/module/az.compute/new-azvm). When prompted, enter a username and password.
## Test network communication using IP flow verify
In this section, you use the IP flow verify capability of Network Watcher to test network communication to and from the virtual machine.
1. Use [Test-AzNetworkWatcherIPFlow](/powershell/module/az.network/test-aznetworkwatcheripflow) to test outbound communication from **myVM** to **13.107.21.200** using IP flow verify (`13.107.21.200` is one of the public IP addresses used by `www.bing.com`):
The result of the fourth test indicates that access is denied from **10.10.10.10** because of the default security rule **DenyAllInBound**. By default, all access to an Azure virtual machine from outside the virtual network is denied.
## View details of a security rule
To determine why the rules in the previous section allow or deny communication, review the effective security rules for the network interface of **myVM** virtual machine using [Get-AzEffectiveNetworkSecurityGroup](/powershell/module/az.network/get-azeffectivenetworksecuritygroup) cmdlet:
You can see in the output that address prefix **13.104.0.0/13** is among the address prefixes of **AllowInternetOutBound** rule. This prefix encompasses the IP address **13.107.21.200**, which you utilized to test outbound communication to `www.bing.com`.
Similarly, you can check the other rules to see the source and destination IP address prefixes under each rule.
## Clean up resources
When no longer needed, use [Remove-AzResourceGroup](/powershell/module/az.resources/remove-azresourcegroup) to delete the resource group and all of the resources it contains: