Neste artigo, você cria uma máquina virtual no Azure com o portal do Azure. A máquina virtual é criada junto com a rede de pilha dupla como parte dos procedimentos. Você pode escolher a partir do portal do Azure, da CLI do Azure ou do Azure PowerShell para concluir as etapas neste artigo. Quando concluída, a máquina virtual suporta comunicação IPv4 e IPv6.
Pré-requisitos
Use o ambiente Bash no Azure Cloud Shell. Para mais informações, veja Get started with Azure Cloud Shell.
Se preferir executar comandos de referência da CLI localmente, instale a CLI do Azure. Se estiver a utilizar o Windows ou macOS, considere executar a CLI do Azure num contentor Docker. Para obter mais informações, consulte Como executar a CLI do Azure em um contêiner do Docker.
Se estiver a utilizar uma instalação local, inicie sessão no CLI do Azure ao utilizar o comando az login. Para concluir o processo de autenticação, siga os passos apresentados no seu terminal. Para outras opções de entrada, consulte Autenticar no Azure usando a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre extensões, consulte Usar e gerenciar extensões com a CLI do Azure.
Execute o comando az version para localizar a versão e as bibliotecas dependentes instaladas. Para atualizar para a versão mais recente, execute o comando az upgrade.
- Este tutorial requer a versão 2.0.28 ou posterior da CLI do Azure. Se estiver usando o Azure Cloud Shell, a versão mais recente já está instalada.
- Uma conta do Azure com uma subscrição ativa.
Crie uma conta gratuitamente.
- Azure PowerShell instalado localmente ou Azure Cloud Shell.
- Entre no Azure PowerShell e selecione a assinatura que deseja usar. Para obter mais informações, consulte Entrar com o Azure PowerShell.
- Certifique-se do seu Az. O módulo de rede é 4.3.0 ou posterior. Para verificar o módulo instalado, use o comando Get-InstalledModule -Name "Az.Network". Se o módulo exigir uma atualização, use o comando Update-Module -Name "Az. Rede".
Se optar por instalar e utilizar o PowerShell localmente, este artigo requer a versão 5.4.1 ou posterior do módulo Azure PowerShell. Execute Get-Module -ListAvailable Az para localizar a versão instalada. Se precisar de atualizar, veja Install Azure PowerShell module (Instalar o módulo do Azure PowerShell). Se você estiver executando o PowerShell localmente, também precisará executar Connect-AzAccount para criar uma conexão com o Azure.
Criar um grupo de recursos e uma rede virtual
Nesta seção, tu crias um grupo de recursos e uma rede virtual de dupla camada para a máquina virtual no portal do Azure.
Criar um grupo de recursos
Inicie sessão no portal do Azure.
No portal, procure e selecione Grupos de recursos.
Selecione + Criar.
No separador Básicos , introduza ou selecione os seguintes valores:
| Configuração |
Valor |
|
Subscription |
Selecione a sua subscrição. |
|
Grupo de recursos |
Introduza myResourceGroup. |
|
Região |
Selecione (EUA) Leste dos EUA 2. |
Selecione Rever + criar e, em seguida, selecione Criar.
Criar uma rede virtual
Na caixa de pesquisa na parte superior do portal, digite Rede virtual. Selecione Redes virtuais nos resultados da pesquisa.
Selecione + Criar.
Na guia Noções básicas de Criar rede virtual, insira ou selecione as seguintes informações.
| Configuração |
Valor |
|
Detalhes do projeto |
|
| Subscrição |
Selecione a sua subscrição. |
| Grupo de recursos |
Selecione myResourceGroup. |
|
Detalhes da instância |
|
| Nome |
Introduza myVNet. |
| Região |
Selecione E.U.A. Leste 2. |
Selecione o separador Endereços IP ou Avançar>Avançar.
Deixe o espaço de endereço IPv4 padrão de 10.0.0.0/16. Se o padrão estiver ausente ou diferente, insira um espaço de endereço IPv4 de 10.0.0.0/16.
Selecione a sub-rede padrão .
Na página Editar sub-rede, digite myBackendSubnet em Nome da sub-rede e selecione Salvar.
Selecione Adicionar espaço de endereço IPv6 no menu suspenso.
No espaço de endereçamento IPv6, edite o espaço de endereço padrão e altere seu valor para 2404:f800:8000:122::/63.
Para adicionar uma sub-rede IPv6, selecione + Adicionar uma sub-rede e insira ou selecione as seguintes informações:
| Configuração |
Valor |
|
Sub-rede |
|
| Nome da sub-rede |
Introduza myBackendSubnet. |
| Intervalo de endereços |
Deixe o padrão de 2404:f800:8000:122::. |
| Tamanho |
Deixe o padrão de /64. |
Selecione Adicionar.
Selecione Rever + criar.
Selecione Criar.
Nesta seção, você cria uma rede virtual de pilha dupla de grupo de recursos para a máquina virtual com a CLI do Azure.
Crie um grupo de recursos com az group create chamado myResourceGroup na localização eastus2.
az group create \
--name myResourceGroup \
--location eastus2
Use az network vnet create para criar uma rede virtual.
az network vnet create \
--resource-group myResourceGroup \
--location eastus2 \
--name myVNet \
--address-prefixes 10.0.0.0/16 2404:f800:8000:122::/63 \
--subnet-name myBackendSubnet \
--subnet-prefixes 10.0.0.0/24 2404:f800:8000:122::/64
Nesta secção, crias uma rede virtual de duas pilhas para a máquina virtual utilizando o Azure PowerShell.
Crie um grupo de recursos com New-AzResourceGroup chamado myResourceGroup na localização eastus2.
$rg =@{
Name = 'myResourceGroup'
Location = 'eastus2'
}
New-AzResourceGroup @rg
Use New-AzVirtualNetwork e New-AzVirtualNetworkSubnetConfig para criar uma rede virtual.
## Create backend subnet config ##
$subnet = @{
Name = 'myBackendSubnet'
AddressPrefix = '10.0.0.0/24','2404:f800:8000:122::/64'
}
$subnetConfig = New-AzVirtualNetworkSubnetConfig @subnet
## Create the virtual network ##
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
AddressPrefix = '10.0.0.0/16','2404:f800:8000:122::/63'
Subnet = $subnetConfig
}
New-AzVirtualNetwork @net
Criar endereços IP públicos
Você cria dois endereços IP públicos nesta seção, IPv4 e IPv6 no portal do Azure.
Criar endereço IP público IPv4
Na caixa de pesquisa na parte superior do portal, introduza Endereço IP público. Selecione Endereços IP públicos nos resultados da pesquisa.
Selecione + Criar.
Insira ou selecione as seguintes informações em Criar endereço IP público.
| Configuração |
Valor |
|
Detalhes do projeto |
|
| Subscrição |
Selecione a sua subscrição. |
| Grupo de recursos |
Selecione myResourceGroup. |
| Localização |
Selecione E.U.A. Leste 2. |
| Zona de Disponibilidade |
Selecione Zona redundante. |
|
Detalhes da instância |
|
| Nome |
Digite myPublicIP-IPv4. |
| Versão do IP |
Selecione IPv4. |
| SKU |
Deixe o valor Padrão. |
| Escalão de serviço |
Deixe o padrão de Regional. |
|
Atribuição de endereço IP |
|
| Preferência de encaminhamento |
Deixe o padrão de rede da Microsoft. |
| Tempo limite de inatividade (minutos) |
Deixe o padrão de 4. |
| Etiqueta de nome DNS |
Digite myPublicIP-IPv4. |
Selecione Rever + criar e, em seguida, Criar.
Criar endereço IP público IPv6
Na caixa de pesquisa na parte superior do portal, introduza Endereço IP público. Selecione Endereços IP públicos nos resultados da pesquisa.
Selecione + Criar.
Insira ou selecione as seguintes informações em Criar endereço IP público.
| Configuração |
Valor |
|
Detalhes do projeto |
|
| Subscrição |
Selecione a sua subscrição. |
| Grupo de recursos |
Selecione myResourceGroup. |
| Localização |
Selecione E.U.A. Leste 2. |
| Zona de Disponibilidade |
Selecione Zona redundante. |
|
Detalhes da instância |
|
| Nome |
Digite myPublicIP-IPv6. |
| Versão do IP |
Selecione IPv6. |
| SKU |
Deixe o valor Padrão. |
| Escalão de serviço |
Deixe o padrão de Regional. |
|
Atribuição de endereço IP |
|
| Etiqueta de nome DNS |
Digite myPublicIP-IPv6. |
Selecione Rever + criar e, em seguida, Criar.
Você cria dois endereços IP públicos nesta seção, IPv4 e IPv6 com a CLI do Azure.
Use az network public-ip create para criar os endereços IP públicos.
az network public-ip create \
--resource-group myResourceGroup \
--name myPublicIP-Ipv4 \
--sku Standard \
--version IPv4 \
--zone 1 2 3
az network public-ip create \
--resource-group myResourceGroup \
--name myPublicIP-Ipv6 \
--sku Standard \
--version IPv6 \
--zone 1 2 3
Você cria dois endereços IP públicos nesta seção, IPv4 e IPv6.
Use New-AzPublicIpAddress para criar os endereços IP públicos.
$ip4 = @{
Name = 'myPublicIP-IPv4'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
IpAddressVersion = 'IPv4'
Zone = 1,2,3
}
New-AzPublicIpAddress @ip4
$ip6 = @{
Name = 'myPublicIP-IPv6'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
Sku = 'Standard'
AllocationMethod = 'Static'
IpAddressVersion = 'IPv6'
Zone = 1,2,3
}
New-AzPublicIpAddress @ip6
Criar a máquina virtual
Nesta seção, você cria a máquina virtual e seus recursos de suporte.
Criar a máquina virtual
Na caixa de pesquisa na parte superior do portal, digite Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione + Criar e, em seguida, Máquina virtual do Azure.
Na guia Noções básicas, insira ou selecione as seguintes informações.
| Configuração |
Valor |
|
Detalhes do projeto |
|
| Subscrição |
Selecione a sua subscrição. |
| Grupo de recursos |
Selecione myResourceGroup. |
|
Detalhes da instância |
|
| Nome da máquina virtual |
Insira myVM. |
| Região |
Selecione E.U.A. Leste 2. |
| Opções de disponibilidade |
Selecione Sem necessidade de redundância de infraestrutura. |
| Tipo de segurança |
selecione Standard. |
| Imagem |
Selecione Ubuntu Server 20.04 LTS - Gen2. |
| Tamanho |
Selecione o tamanho padrão. |
|
Conta de administrador |
|
| Tipo de autenticação |
Selecione a chave pública SSH. |
| Username |
Introduza um nome de utilizador. |
| Origem da chave pública SSH |
Selecione Gerar novo par de chaves. |
| Nome do par de chaves |
Digite mySSHKey. |
|
Regras de porta de entrada |
|
| Portas de entrada públicas |
Selecione Nenhuma. |
Selecione o separador Rede, ou Seguinte: Discos, depois Seguinte: Rede.
Insira ou selecione as seguintes informações no separador Rede.
| Configuração |
Valor |
|
Interface de Rede |
|
| Rede virtual |
Selecione myVNet. |
| Sub-rede |
Selecione myBackendSubnet (10.1.0.0/24,2404:f800:8000:122:/64). |
| IP público |
Selecione myPublicIP-IPv4. |
| Grupo de segurança de rede NIC |
Selecione Avançadas. |
| Configurar grupo de segurança de rede |
Selecione Criar novo.
Digite myNSG em Nome.
Selecione OK. |
Selecione Rever e criar.
Selecione Criar.
Gerar novo par de chaves aparece. Selecione Transferir chave privada e criar recurso.
A chave privada é transferida para o computador local. Copie a chave privada para um diretório no seu computador. No exemplo a seguir, é ~/.ssh.
Uma interface de rede é criada automaticamente e anexada à rede virtual escolhida durante a criação. Nesta seção, você adiciona a configuração IPv6 à interface de rede existente.
Na caixa de pesquisa na parte superior do portal, digite Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione myVM ou o nome da máquina virtual existente.
Selecione Rede em Configurações.
O nome da sua interface de rede padrão será myvmxx, com xx um número aleatório. Neste exemplo, é myvm281. Selecione myvm281 ao lado de Interface de Rede:.
Nas propriedades da interface de rede, selecione Configurações de IP em Configurações.
Em Configurações de IP, selecione + Adicionar.
Em Adicionar configuração IP, insira ou selecione as seguintes informações.
| Configuração |
Valor |
| Nome |
Digite ipv6config. |
| Versão do IP |
Selecione IPv6. |
|
Configurações de endereço IP privado |
|
| Alocação |
Deixe o padrão de Dinâmico. |
| Endereço IP público |
Selecione Associar. |
| Endereço IP público |
Selecione myPublicIP-IPv6. |
Selecione OK.
Nesta seção, você cria a máquina virtual e seus recursos de suporte.
Criar um grupo de segurança de rede
Crie um grupo de segurança de rede com az network nsg create. As regras padrão no grupo de segurança de rede negam todo o acesso de entrada proveniente da internet.
az network nsg create \
--resource-group myResourceGroup \
--name myNSG
Criar interface de rede
Você usa az network nic create para criar a interface de rede para a máquina virtual. Os endereços IP públicos e o NSG criado anteriormente estão associados à NIC. A interface de rede está ligada à rede virtual que criou anteriormente.
az network nic create \
--resource-group myResourceGroup \
--name myNIC1 \
--vnet-name myVNet \
--subnet myBackEndSubnet \
--network-security-group myNSG \
--public-ip-address myPublicIP-IPv4
Criar configuração de IP IPv6
Use az network nic ip-config create para criar a configuração IPv6 para a NIC.
az network nic ip-config create \
--resource-group myResourceGroup \
--name myIPv6config \
--nic-name myNIC1 \
--private-ip-address-version IPv6 \
--vnet-name myVNet \
--subnet myBackendSubnet \
--public-ip-address myPublicIP-IPv6
Criar a máquina virtual
Use az vm create para criar a máquina virtual.
az vm create \
--resource-group myResourceGroup \
--name myVM \
--nics myNIC1 \
--image Ubuntu2204 \
--admin-username azureuser \
--authentication-type ssh \
--generate-ssh-keys
Nesta seção, você cria a máquina virtual e seus recursos de suporte.
Criar um grupo de segurança de rede
Crie um grupo de segurança de rede com New-AzNetworkSecurityGroup. As regras padrão no grupo de segurança de rede negam todo o acesso de entrada proveniente da internet.
$nsg = @{
Name = 'myNSG'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
}
New-AzNetworkSecurityGroup @nsg
Criar interface de rede
Você usa New-AzNetworkInterface e New-AzNetworkInterfaceIpConfig para criar a interface de rede para a máquina virtual. Os endereços IP públicos e o NSG criado anteriormente estão associados à NIC. A interface de rede está ligada à rede virtual que criou anteriormente.
## Place the virtual network into a variable. ##
$net = @{
Name = 'myVNet'
ResourceGroupName = 'myResourceGroup'
}
$vnet = Get-AzVirtualNetwork @net
## Place the network security group into a variable. ##
$ns = @{
Name = 'myNSG'
ResourceGroupName = 'myResourceGroup'
}
$nsg = Get-AzNetworkSecurityGroup @ns
## Place the IPv4 public IP address into a variable. ##
$pub4 = @{
Name = 'myPublicIP-IPv4'
ResourceGroupName = 'myResourceGroup'
}
$pubIPv4 = Get-AzPublicIPAddress @pub4
## Place the IPv6 public IP address into a variable. ##
$pub6 = @{
Name = 'myPublicIP-IPv6'
ResourceGroupName = 'myResourceGroup'
}
$pubIPv6 = Get-AzPublicIPAddress @pub6
## Create IPv4 configuration for NIC. ##
$IP4c = @{
Name = 'ipconfig-ipv4'
Subnet = $vnet.Subnets[0]
PrivateIpAddressVersion = 'IPv4'
PublicIPAddress = $pubIPv4
}
$IPv4Config = New-AzNetworkInterfaceIpConfig @IP4c
## Create IPv6 configuration for NIC. ##
$IP6c = @{
Name = 'ipconfig-ipv6'
Subnet = $vnet.Subnets[0]
PrivateIpAddressVersion = 'IPv6'
PublicIPAddress = $pubIPv6
}
$IPv6Config = New-AzNetworkInterfaceIpConfig @IP6c
## Command to create network interface for VM ##
$nic = @{
Name = 'myNIC1'
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
NetworkSecurityGroup = $nsg
IpConfiguration = $IPv4Config,$IPv6Config
}
New-AzNetworkInterface @nic
Criar a máquina virtual
Use os seguintes comandos para criar a máquina virtual:
$cred = Get-Credential
## Place network interface into a variable. ##
$nic = @{
Name = 'myNIC1'
ResourceGroupName = 'myResourceGroup'
}
$nicVM = Get-AzNetworkInterface @nic
## Create a virtual machine configuration for VMs ##
$vmsz = @{
VMName = 'myVM'
VMSize = 'Standard_DS1_v2'
}
$vmos = @{
ComputerName = 'myVM'
Credential = $cred
}
$vmimage = @{
PublisherName = 'Debian'
Offer = 'debian-11'
Skus = '11'
Version = 'latest'
}
$vmConfig = New-AzVMConfig @vmsz `
| Set-AzVMOperatingSystem @vmos -Linux `
| Set-AzVMSourceImage @vmimage `
| Add-AzVMNetworkInterface -Id $nicVM.Id
## Create the virtual machine for VMs ##
$vm = @{
ResourceGroupName = 'myResourceGroup'
Location = 'eastus2'
VM = $vmConfig
SshKeyName = 'mySSHKey'
}
New-AzVM @vm -GenerateSshKey
Instalar nginx
Nesta secção, cria uma regra de grupo de segurança de rede para permitir tráfego HTTP e instala nginx na máquina virtual usando a funcionalidade Run Command.
Criar uma regra de segurança de entrada
Na caixa de pesquisa na parte superior do portal, insira Grupo de segurança de rede. Selecione Grupos de segurança de rede nos resultados da pesquisa.
Selecione myNSG.
Selecione regras de segurança de entrada nas Definições.
Selecione + Adicionar.
Introduza ou selecione as seguintes informações:
| Configuração |
Valor |
| Fonte |
Deixe o padrão de Qualquer. |
| Intervalos de portas de origem |
Mantenha o padrão de *. |
| Destino |
Deixe o padrão de Qualquer. |
| Serviço |
Selecione HTTP. |
| Ação |
Deixe o padrão de Permitir. |
| Priority |
Introduza 100. |
| Nome |
Introduza myNSGRuleHTTP. |
Selecione Adicionar.
Instalar nginx com o comando Run
Na caixa de pesquisa na parte superior do portal, digite Máquina virtual. Selecione Máquinas virtuais nos resultados da pesquisa.
Selecione myVM.
Em Operações, selecione Executar comando.
Selecione RunShellScript.
Introduza os seguintes comandos:
sudo apt-get update
sudo apt-get install -y nginx
Selecione Executar.
Espere até que o comando esteja concluído. O painel de saída mostra Ativação bem-sucedida quando completo.
Criar uma regra de segurança de entrada
Use az network nsg rule create para criar uma regra de grupo de segurança de rede que permita o tráfego HTTP.
az network nsg rule create \
--resource-group myResourceGroup \
--nsg-name myNSG \
--name myNSGRuleHTTP \
--protocol '*' \
--direction inbound \
--source-address-prefix '*' \
--source-port-range '*' \
--destination-address-prefix '*' \
--destination-port-range 80 \
--access allow \
--priority 100
Instalar nginx
Usa az vm run-command invoke para instalar o nginx na máquina virtual.
az vm run-command invoke \
--resource-group myResourceGroup \
--name myVM \
--command-id RunShellScript \
--scripts "sudo apt-get update && sudo apt-get install -y nginx"
Criar uma regra de segurança de entrada
Use Get-AzNetworkSecurityGroup e Add-AzNetworkSecurityRuleConfig para criar uma regra de grupo de segurança de rede que permita tráfego HTTP.
## Place the network security group into a variable. ##
$nsg = @{
Name = 'myNSG'
ResourceGroupName = 'myResourceGroup'
}
$nsgObj = Get-AzNetworkSecurityGroup @nsg
## Create the network security group rule. ##
$nsgRule = @{
Name = 'myNSGRuleHTTP'
Protocol = '*'
Direction = 'Inbound'
Priority = 100
SourceAddressPrefix = '*'
SourcePortRange = '*'
DestinationAddressPrefix = '*'
DestinationPortRange = 80
Access = 'Allow'
}
$nsgObj | Add-AzNetworkSecurityRuleConfig @nsgRule | Set-AzNetworkSecurityGroup
Instalar nginx
Utilize Invoke-AzVMRunCommand para instalar nginx na máquina virtual.
$vm = @{
ResourceGroupName = 'myResourceGroup'
Name = 'myVM'
CommandId = 'RunShellScript'
ScriptString = 'sudo apt-get update && sudo apt-get install -y nginx'
}
Invoke-AzVMRunCommand @vm
Testar a conectividade dual-stack
Verifique se o nginx está a funcionar ligando-se ao endereço IPv4 público da máquina virtual.
Na caixa de pesquisa na parte superior do portal, introduza Endereço IP público. Selecione Endereços IP públicos nos resultados da pesquisa.
Selecione myPublicIP-IPv4.
Note o endereço público IPv4 na Visão Geral em endereço IP. Neste exemplo, é 203.0.113.77.
Abra o seu navegador web e navegue por http://203.0.113.77. Substitua o endereço IP pelo endereço público IPv4 da sua máquina virtual.
A página de boas-vindas padrão nginx é exibida, confirmando que o servidor web está a funcionar e é acessível via IPv4.
Use az network public-ip show para exibir os endereços IP da máquina virtual.
az network public-ip show \
--resource-group myResourceGroup \
--name myPublicIP-IPv4 \
--query ipAddress \
--output tsv
Abra o seu navegador web e navegue até ao endereço IPv4 apresentado. A página de boas-vindas padrão nginx confirma que o servidor web está a funcionar e acessível.
Use o seguinte comando para mostrar o endereço IPv6:
az network public-ip show \
--resource-group myResourceGroup \
--name myPublicIP-IPv6 \
--query ipAddress \
--output tsv
Use Get-AzPublicIpAddress para exibir os endereços IP da máquina virtual.
$ip4 = @{
ResourceGroupName = 'myResourceGroup'
Name = 'myPublicIP-IPv4'
}
Get-AzPublicIPAddress @ip4 | select IpAddress
Abra o seu navegador web e navegue até ao endereço IPv4 apresentado. A página de boas-vindas padrão nginx confirma que o servidor web está a funcionar e acessível.
Use o seguinte comando para mostrar o endereço IPv6:
$ip6 = @{
ResourceGroupName = 'myResourceGroup'
Name = 'myPublicIP-IPv6'
}
Get-AzPublicIPAddress @ip6 | select IpAddress
Limpar recursos
Quando terminar com os recursos criados neste artigo, exclua o grupo de recursos e todos os recursos que ele contém:
Na caixa de pesquisa que se encontra na parte superior do portal, introduza myResourceGroup. Selecione myResourceGroup nos resultados da pesquisa em Grupos de recursos.
Selecione Eliminar grupo de recursos.
Digite myResourceGroup para DIGITE O NOME DO GRUPO DE RECURSOS e selecione Excluir.
Quando não for mais necessário, use o comando az group delete para remover o grupo de recursos, a máquina virtual e todos os recursos relacionados.
az group delete \
--name myResourceGroup
Quando não for mais necessário, use o comando Remove-AzResourceGroup para remover o grupo de recursos, a máquina virtual e todos os recursos relacionados.
Remove-AzResourceGroup -Name 'myResourceGroup'
Próximos passos
Neste artigo, você aprendeu como criar uma máquina virtual do Azure com uma rede de pilha dupla.
Para obter mais informações sobre IPv6 e endereços IP no Azure, consulte: