Guia de início rápido: criar uma zona DNS privada do Azure usando a CLI do Azure
Este guia de início rápido orienta você pelas etapas para criar sua primeira zona DNS privada e registro usando a CLI do Azure.
Uma zona DNS é utilizada para alojar os registos DNS para um domínio particular. Para começar a alojar o seu domínio no DNS do Azure, tem de criar uma zona DNS para esse nome de domínio. Cada registo DNS para o seu domínio é então criado no interior desta zona DNS. Para publicar uma zona DNS privada na sua rede virtual, especifique a lista de redes virtuais permitidas para resolver registos na zona. São as chamadas redes virtuais ligadas . Quando o registro automático está habilitado, o DNS do Azure também atualiza os registros de zona sempre que uma máquina virtual é criada, altera seu endereço IP ou é excluída.
Se não tiver uma subscrição do Azure, crie uma conta gratuita do Azure antes de começar.
Pré-requisitos
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, consulte Guia de início rápido para Bash no 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 Entrar com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure na primeira utilização. Para obter mais informações sobre as extensões, veja Utilizar extensões com o 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.
- Você também pode concluir este início rápido usando o Azure PowerShell.
Criar o grupo de recursos
Primeiro, crie um grupo de recursos para conter a zona DNS:
az group create --name MyAzureResourceGroup --location "East US"
Criar uma zona DNS privada
O exemplo a seguir cria uma rede virtual chamada myAzureVNet. Em seguida, ele cria uma zona DNS chamada private.contoso.com no grupo de recursos MyAzureResourceGroup, vincula a zona DNS à rede virtual MyAzureVnet e habilita o registro automático.
az network vnet create \
--name myAzureVNet \
--resource-group MyAzureResourceGroup \
--location eastus \
--address-prefix 10.2.0.0/16 \
--subnet-name backendSubnet \
--subnet-prefixes 10.2.0.0/24
az network private-dns zone create -g MyAzureResourceGroup \
-n private.contoso.com
az network private-dns link vnet create -g MyAzureResourceGroup -n MyDNSLink \
-z private.contoso.com -v myAzureVNet -e true
Se você quiser criar uma zona apenas para resolução de nomes (sem registro automático de nome de host), você pode usar o -e false
parâmetro.
Listar as zonas DNS privadas
Para enumerar as zonas DNS, utilize az network private-dns zone list
. Para obter ajuda, consulte az network dns zone list --help
.
Especificar o grupo de recursos lista apenas essas zonas no grupo de recursos:
az network private-dns zone list \
-g MyAzureResourceGroup
A omissão do grupo de recursos lista todas as zonas na subscrição:
az network private-dns zone list
Criar as máquinas virtuais de teste
Agora, vai criar duas máquinas virtuais para testar a zona DNS privada:
az vm create \
-n myVM01 \
--admin-username AzureAdmin \
-g MyAzureResourceGroup \
-l eastus \
--subnet backendSubnet \
--vnet-name myAzureVnet \
--nsg NSG01 \
--nsg-rule RDP \
--image win2016datacenter
az vm create \
-n myVM02 \
--admin-username AzureAdmin \
-g MyAzureResourceGroup \
-l eastus \
--subnet backendSubnet \
--vnet-name myAzureVnet \
--nsg NSG01 \
--nsg-rule RDP \
--image win2016datacenter
A criação de uma máquina virtual levará alguns minutos para ser concluída.
Criar um registo DNS adicional
Para criar um registo DNS, utilize o comando az network private-dns record-set [record type] add-record
. Para obter ajuda ao adicionar registos A, por exemplo, veja az network private-dns record-set A add-record --help
.
O exemplo a seguir cria um registro com o nome relativo db no private.contoso.com Zona DNS, no grupo de recursos MyAzureResourceGroup. O nome totalmente qualificado do conjunto de registros é db.private.contoso.com. O tipo de registo é "A", com o endereço IP "10.2.0.4".
az network private-dns record-set a add-record \
-g MyAzureResourceGroup \
-z private.contoso.com \
-n db \
-a 10.2.0.4
Ver os registos DNS
Para listar os registos DNS na sua zona, execute:
az network private-dns record-set list \
-g MyAzureResourceGroup \
-z private.contoso.com
Testar a zona privada
Agora você pode testar a resolução de nomes para sua zona privada private.contoso.com .
Configurar as VMs para permitir ICMP de entrada
Pode utilizar o comando ping para testar a resolução de nomes. Assim, configure a firewall em ambas as máquinas virtuais para permitir pacotes ICMP de entrada.
Ligue a myVM01 e abra uma janela do Windows PowerShell com privilégios de administrador.
Execute o seguinte comando:
New-NetFirewallRule –DisplayName "Allow ICMPv4-In" –Protocol ICMPv4
Repita para myVM02.
Enviar pings para as VMs por nome
Na linha de comandos do Windows PowerShell para myVM02, envie um ping myVM01 com o nome de anfitrião registado automaticamente:
ping myVM01.private.contoso.com
Você deve ver uma saída semelhante ao que é mostrado abaixo:
PS C:\> ping myvm01.private.contoso.com Pinging myvm01.private.contoso.com [10.2.0.4] with 32 bytes of data: Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time=1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Ping statistics for 10.2.0.4: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 1ms, Average = 0ms PS C:\>
Agora, envie um ping para o nome db criado anteriormente:
ping db.private.contoso.com
Você deve ver uma saída semelhante ao que é mostrado abaixo:
PS C:\> ping db.private.contoso.com Pinging db.private.contoso.com [10.2.0.4] with 32 bytes of data: Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Reply from 10.2.0.4: bytes=32 time<1ms TTL=128 Ping statistics for 10.2.0.4: Packets: Sent = 4, Received = 4, Lost = 0 (0% loss), Approximate round trip times in milli-seconds: Minimum = 0ms, Maximum = 0ms, Average = 0ms PS C:\>
Clean up resources (Limpar recursos)
Quando não for mais necessário, exclua o grupo de recursos MyAzureResourceGroup para excluir os recursos criados neste início rápido.
az group delete --name MyAzureResourceGroup