This page contains Windows bias

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:
⚠️ windows_first
⚠️ powershell_heavy
⚠️ windows_tools
⚠️ missing_linux_example
Summary:
The documentation exhibits a Windows bias by providing detailed PowerShell examples before Azure CLI, using Windows-centric tools and terminology (e.g., RDP, Windows images), and omitting explicit Linux/SSH examples for VM creation and access. The VM creation steps default to Windows Server images, and remote access is described only via RDP, with no mention of SSH or Linux images. There are no examples or guidance for deploying or accessing Linux VMs, nor are there instructions for Linux administrators.
Recommendations:
  • Add explicit Linux/SSH examples for VM creation and remote access, including az vm create commands with --image UbuntuLTS and SSH key authentication.
  • Include guidance for both Windows and Linux VM images in all relevant steps, making it clear that either OS is supported.
  • Provide instructions for accessing VMs via SSH (for Linux) as well as RDP (for Windows), and clarify the differences.
  • Ensure that CLI and PowerShell examples are presented with equal prominence, or alternate which comes first.
  • Avoid using Windows-specific terminology (e.g., RDP) as the default; instead, use neutral language or mention both RDP and SSH.
  • Add troubleshooting or verification steps relevant to Linux environments (e.g., checking IPv6 connectivity from a Linux shell).
  • Where possible, use cross-platform tools and commands, or clearly indicate OS-specific steps.
GitHub Create pull request

Scan History

Date Scan ID Status Bias Status
2025-08-17 00:01 #83 in_progress ✅ Clean
2025-07-13 21:37 #48 completed ❌ Biased
2025-07-12 23:44 #41 in_progress ❌ Biased
2025-07-09 13:09 #3 cancelled ✅ Clean
2025-07-08 04:23 #2 cancelled ✅ Clean

Flagged Code Snippets

To access your virtual machines using a RDP connection, create an IPV4 public IP addresses for the virtual machines with [New-AzPublicIpAddress](/powershell/module/az.network/new-azpublicipaddress).
## Create IPv4 and IPv6 public IP addresses To access your virtual machines from the Internet, you need IPv4 and IPv6 public IP addresses for the load balancer. Create public IP addresses with [New-AzPublicIpAddress](/powershell/module/az.network/new-azpublicipaddress). The following example creates IPv4 and IPv6 public IP address named *dsPublicIP_v4* and *dsPublicIP_v6* in the *dsRG1* resource group:
### Create a load balancer rule A load balancer rule is used to define how traffic is distributed to the VMs. You define the frontend IP configuration for the incoming traffic and the backend IP pool to receive the traffic, along with the required source and destination port. To make sure only healthy VMs receive traffic, you can optionally define a health probe. Basic load balancer uses an IPv4 probe to assess health for both IPv4 and IPv6 endpoints on the VMs. Standard load balancer includes support for explicitly IPv6 health probes. Create a load balancer rule with [Add-AzLoadBalancerRuleConfig](/powershell/module/az.network/add-azloadbalancerruleconfig). The following example creates load balancer rules named *dsLBrule_v4* and *dsLBrule_v6* and balances traffic on *TCP* port *80* to the IPv4 and IPv6 frontend IP configurations:
### Create a virtual network Create a virtual network with [New-AzVirtualNetwork](/powershell/module/az.network/new-azvirtualnetwork). The following example creates a virtual network named *dsVnet* with *mySubnet*:
### Create load balancer Create a Standard Load Balancer with [New-AzLoadBalancer](/powershell/module/az.network/new-azloadbalancer). The following example creates a public Standard Load Balancer named *myLoadBalancer* using the IPv4 and IPv6 frontend IP configurations, backend pools, and load-balancing rules that you created in the preceding steps:
#### Create a network security group rule for port 80 Create a network security group rule to allow internet connections through port 80 with [New-AzNetworkSecurityRuleConfig](/powershell/module/az.network/new-aznetworksecurityruleconfig).
### Create NICs Create virtual NICs with [New-AzNetworkInterface](/powershell/module/az.network/new-aznetworkinterface). The following example creates two virtual NICs both with IPv4 and IPv6 configurations. (One virtual NIC for each VM you create for your app in the following steps).
The following figure shows a sample output that lists the private IPv4 and IPv6 addresses of the two VMs, and the frontend IPv4 and IPv6 IP addresses of the Load Balancer. ![IP summary of dual stack (IPv4/IPv6) application deployment in Azure](./media/virtual-network-ipv4-ipv6-dual-stack-powershell/dual-stack-application-summary.png) ## View IPv6 dual stack virtual network in Azure portal You can view the IPv6 dual stack virtual network in Azure portal as follows: 1. In the portal's search bar, enter *dsVnet*. 2. When **dsVnet** appears in the search results, select it. This launches the **Overview** page of the dual stack virtual network named *dsVnet*. The dual stack virtual network shows the two NICs with both IPv4 and IPv6 configurations located in the dual stack subnet named *dsSubnet*. ## Clean up resources When no longer needed, you can use the [Remove-AzResourceGroup](/powershell/module/az.resources/remove-azresourcegroup) command to remove the resource group, VM, and all related resources.