

# Crie uma VPC
<a name="create-vpc"></a>

Use os procedimentos a seguir para criar uma nuvem privada virtual (VPC). Uma VPC deve ter recursos adicionais, como sub-redes, tabelas de rotas e gateways, antes que você possa criar recursos da AWS na VPC.

**Topics**
+ [Criar uma VPC e outros recursos de VPC](#create-vpc-and-other-resources)
+ [Criar apenas uma VPC](#create-vpc-only)
+ [Criar uma VPC usando a AWS CLI](#create-vpc-cli)

Para obter informações sobre como modificar VPCs, consulte [Adicionar ou remover um bloco CIDR da sua VPC](add-ipv4-cidr.md).

## Criar uma VPC e outros recursos de VPC
<a name="create-vpc-and-other-resources"></a>

Use o procedimento a seguir para criar uma VPC, mais os recursos adicionais de VPC necessários para executar sua aplicação, como sub-redes, tabelas de rotas, gateways da Internet e gateways NAT. Para obter exemplos de configurações de VPC, consulte [Exemplos de VPC](vpc-examples-intro.md).

**Para criar uma VPC, sub-redes e outros recursos de VPC usando o console**

1. Abra o console do Amazon VPC em [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. No painel da VPC, escolha **Criar VPC**.

1. Em **Resources to create** (Recursos a serem criados), escolha **VPC and more** (VPC e mais).

1. Mantenha a opção **Geração automática de tags de nome** selecionada para criar tags de nome para os recursos da VPC ou desmarque-a para fornecer suas próprias tags de nome para os recursos da VPC.

1. Em **Bloco CIDR IPv4**, digite uma faixa de endereços IPv4 para sua VPC. Uma VPC deve ter uma faixa de endereços IPv4.

1. (Opcional) Para oferecer suporte ao tráfego de IPv6, escolha **Bloco CIDR IPv6**, **Bloco CIDR IPv6 fornecido pela Amazon**.

1. Escolha uma opção de **Locação**. Essa opção define se as instâncias do EC2 que você executa na VPC serão executadas em hardware compartilhado com outras Contas da AWS ou em hardware dedicado somente para seu uso. Se você escolher que a locação da VPC seja `Default`, as instâncias do EC2 executadas nessa VPC usarão o atributo de locação especificado quando você executar a instância. Para obter mais informações, consulte [Iniciar uma instância usando parâmetros definidos](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html) no *Guia do usuário do Amazon EC2*. Se você escolher a locação da VPC para ser `Dedicated`, as instâncias sempre serão executadas como [Instâncias dedicadas](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-instance.html) no hardware dedicado ao seu uso. Se estiver usando o AWS Outposts, o seu Outpost vai requerer conectividade privada; você deve usar a locação `Default`.

1. Em **Número de zonas de disponibilidade (AZs)**, recomendamos que você provisione sub-redes em pelo menos duas zonas de disponibilidade para um ambiente de produção. Para escolher as AZs para suas sub-redes, expanda **Personalizar AZs**. Caso contrário, deixe a AWS escolhê-los para você.

1. Para configurar suas sub-redes, escolha valores para **Número de sub-redes públicas** e **Número de sub-redes privadas**. Para escolher os intervalos de endereços IP para suas sub-redes, expanda **Personalizar blocos CIDR de sub-redes**. Caso contrário, deixe a AWS escolhê-los para você.

1. (Opcional) Se os recursos em uma sub-rede privada precisarem de acesso à Internet pública via IPv4, em **gateways NAT**, escolha o número de AZs nos quais criar gateways NAT. Em produção, recomendamos que você implante um gateway NAT em cada AZ com recursos que precisem de acesso à Internet pública. Observe que existe um custo associado aos gateways NAT. Para obter mais informações, consulte [Preços de gateways NAT](nat-gateway-pricing.md).

1. (Opcional) Se os recursos em uma sub-rede privada precisarem de acesso à Internet pública via IPv6, escolha **Sim** em **Gateway da Internet somente de saída**.

1. (Opcional) Se você precisar acessar o Amazon S3 diretamente da sua VPC, escolha **Endpoints da VPC**, **Gateway do S3**. Isso cria um endpoint da VPC de gateway para o Amazon S3. Para obter mais informações, consulte [Gateway endpoints](https://docs.aws.amazon.com/vpc/latest/privatelink/gateway-endpoints.html) no *Guia do AWS PrivateLink*.

1. (Opcional) Em **opções de DNS**, as duas opções de resolução de nomes de domínio estão habilitadas por padrão. Se o padrão não atender às suas necessidades, você poderá desabilitar essas opções.

1. (Opcional) Para adicionar uma tag à sua VPC, expanda **Tags adicionais**, escolha **Adicionar nova tag** e digite uma chave de tag e um valor de tag.

1. No painel **Visualização**, é possível visualizar as relações entre os recursos da VPC que você configurou. Linhas sólidas representam relações entre recursos. As linhas pontilhadas representam o tráfego de rede para gateways NAT, gateway da Internet e endpoints de gateway. Após criar a VPC, será possível visualizar os recursos em sua VPC nesse formato a qualquer momento usando a guia **Mapa de recursos**. Para obter mais informações, consulte [Visualizar os recursos em sua VPC](view-vpc-resource-map.md).

1. Ao concluir a configuração da sua VPC, escolha **Criar VPC**.

## Criar apenas uma VPC
<a name="create-vpc-only"></a>

Siga o procedimento abaixo para criar uma VPC sem recursos de VPC adicionais usando o console da Amazon VPC.

**Para criar uma VPC sem recursos de VPC adicionais usando o console**

1. Abra o console do Amazon VPC em [https://console.aws.amazon.com/vpc/](https://console.aws.amazon.com/vpc/).

1. No painel da VPC, escolha **Criar VPC**.

1. Em **Recursos a serem criados**, escolha **Somente VPC**.

1. (Opcional) Em **Tag de nome**, insira um nome para a sua VPC. Ao fazer isso, é criada uma tag com a chave `Name` e o valor especificado.

1. Em **IPv4 CIDR block** (Bloco CIDR IPv4), execute uma das seguintes ações:
   + Escolha **Entrada manual de CIDR IPv4** e insira um intervalo de endereços IPv4 para a sua VPC.
   + Escolha **Bloco CIDR IPv4 alocado pelo IPAM**, selecione seu grupo de endereços IPV4 do IP Address Manager (IPAM) da Amazon VPC e uma máscara de rede. O tamanho do bloco CIDR é limitado pelas regras de alocação no grupo do IPAM. O IPAM é um recurso de VPC que facilita o planejamento, o rastreamento e o monitoramento de endereços IP de suas workloads da AWS. Para obter mais informações, consulte o [Manual do usuário do Amazon VPC IPAM](https://docs.aws.amazon.com/vpc/latest/ipam/what-it-is-ipam.html).

     Se você estiver usando o IPAM para gerenciar seus endereços IP, recomendamos que você escolha essa opção. Caso contrário, o bloco CIDR que você especificar para sua VPC pode se sobrepor a uma alocação de CIDR do IPAM.

1. (Opcional) Para criar uma VPC de pilha dupla, especifique um intervalo de endereços IPv6 para sua VPC. Em **IPv6 CIDR block** (Bloco CIDR IPv6), execute uma das seguinte ações:
   + Escolha o **bloco CIDR IPv6 alocado pelo IPAM** se estiver usando o Amazon VPC IP Address Manager e quiser provisionar um CIDR IPv6 de um grupo do IPAM. Se você usar o bloco CIDR com o endereço IPv6 alocado pelo IPAM para provisionar CIDRs com o endereço IPv6 para as VPCs, você obterá o benefício de CIDRs com o endereço IPv6 contíguos para a criação de VPCs. Os CIDRs alocados de forma contígua se tratam de CIDRs que são alocados sequencialmente. Esses CIDRs possibilitam simplificar as regras de segurança e de rede. Além disso, os CIDRs com o endereço IPv6 podem ser agregados em uma única entrada em componentes de rede e de segurança, como listas de controle de acesso, tabelas de rotas, grupos de segurança e firewalls.

     Você tem duas opções para provisionar um intervalo de endereços de IP para a VPC no **bloco CIDR**:
     + **Comprimento da máscara de rede**: Escolha essa opção para selecionar um comprimento de máscara de rede para o CIDR. Execute um destes procedimentos:
       + Se um comprimento de máscara de rede padrão estiver previamente escolhido para o grupo do IPAM, é possível optar por **Padrão" para o comprimento de máscara de rede do IPAM** e utilizar o comprimento padrão estabelecido para o grupo do IPAM pelo administrador do IPAM. Para informações detalhadas sobre a regra opcional de alocação de comprimento de máscara de rede padrão, consulte o *Guia do usuário do IPAM do Amazon VPC* na seção sobre [a criação de um grupo de IPv6 regional](https://docs.aws.amazon.com/vpc/latest/ipam/create-ipv6-reg-pool.html).
       + Caso não haja um comprimento de máscara de rede padrão definido para o grupo do IPAM, é necessário selecionar um comprimento de máscara de rede que seja mais específico que o comprimento da máscara de rede do CIDR associado ao grupo do IPAM. Por exemplo, se o CIDR do grupo do IPAM for /50, você poderá escolher um comprimento de máscara de rede entre **/52** e **/60** para a VPC. Os comprimentos possíveis da máscara de rede estão entre **/44** e **/60** em incrementos de /4.
     + **Selecione um CIDR**: escolha essa opção para inserir manualmente um endereço IPv6. Você só pode escolher um comprimento de máscara de rede que seja mais específico do que o comprimento da máscara de rede do CIDR do grupo do IPAM. Por exemplo, se o CIDR do grupo do IPAM for /50, você poderá escolher um comprimento de máscara de rede entre **/52** e **/60** para a VPC. Os possíveis comprimentos de máscara de rede IPv6 estão entre **/44** e **/60** em incrementos de /4.
   + Escolha **Bloco CIDR IPv6 fornecido pela Amazon** para solicitar um bloco CIDR IPv6 do grupo de endereços IPv6 da Amazon. Em **Network Border Group** (Grupo de borda de rede), selecione o grupo do qual a AWS anuncia endereços IP. A Amazon fornece um tamanho de bloco CIDR IPv6 fixo de **/56**.
   + Escolha **CIDR IPv6 de minha propriedade** para provisionar um CIDR IPv6 que você já trouxe para o AWS. Para obter mais informações sobre como trazer seus próprios intervalos de endereços de IP para a AWS, consulte [Traga seus próprios endereços IP (BYOIP)](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html) no *Guia do usuário do Amazon EC2*. Você pode provisionar um intervalo de endereços IP para a VPC usando as seguintes opções para o bloco **CIDR**:
     + **Sem preferência**: Escolha essa opção para usar o comprimento da máscara de rede de **/56**. 
     + **Selecionar um CIDR**: escolha essa opção para inserir manualmente um endereço IPv6 e escolher um comprimento de máscara de rede que seja mais específico do que o tamanho do CIDR do BYOIP. Por exemplo, se o CIDR do grupo BYOIP for /50, você poderá escolher um comprimento de máscara de rede entre **/52** e **/60** para o VPC. Os possíveis comprimentos de máscara de rede IPv6 estão entre **/44** e **/60** em incrementos de /4.

1. (Opcional) Escolha uma opção de **Locação**. Essa opção define se as instâncias do EC2 que você executa na VPC serão executadas em hardware compartilhado com outras Contas da AWS ou em hardware dedicado somente para seu uso. Se você escolher `Default` para a locação da VPC, as instâncias do EC2 executadas nessa VPC usarão o atributo de locação especificado na execução da instância. Para obter mais informações, consulte [Iniciar uma instância usando parâmetros definidos](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html) no *Guia do usuário do Amazon EC2*. Se você escolher a locação da VPC para ser `Dedicated`, as instâncias sempre serão executadas como [Instâncias dedicadas](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-instance.html) no hardware dedicado ao seu uso. Se estiver usando o AWS Outposts, o seu Outpost vai requerer conectividade privada; você deve usar a locação `Default`.

1. (Opcional) Para adicionar uma tag à sua VPC, escolha **Adicionar nova tag** e insira uma chave de tag e um valor de tag.

1. Escolha **Criar VPC**.

1. Após criar uma VPC, você pode criar sub-redes. Para obter mais informações, consulte [Criar uma sub-rede](create-subnets.md).

## Criar uma VPC usando a AWS CLI
<a name="create-vpc-cli"></a>

O procedimento a seguir contém exemplos de comandos da AWS CLI para criar uma VPC, mais os recursos adicionais de VPC necessários para executar uma aplicação. Caso execute todos os comandos nesse procedimento, você criará uma VPC, uma sub-rede pública, uma sub-rede privada, uma tabela de rotas para cada sub-rede, um gateway da Internet, um gateway da Internet somente de saída e um gateway NAT público. Se você não precisar de todos esses recursos, poderá usar somente os comandos de exemplo necessários.

**Pré-requisitos**  
Antes de começar, instale e configure a AWS CLI. Ao configurar a AWS CLI, você recebe uma solicitação por credenciais da AWS. Os exemplos neste procedimento pressupõem que você também tenha configurado uma região padrão. Caso contrário, adicione a opção `--region` para cada comando. Para obter informações, consulte [Instalação e configuração da AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) e [Configuração da AWS CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).

**Tags**  
É possível adicionar tags a um recurso depois de criá-lo usando o comando [create-tags](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-tags.html). Como alternativa, é possível adicionar a opção `--tag-specification` ao comando de criação do recurso conforme descrito a seguir.

```
--tag-specifications ResourceType=vpc,Tags=[{Key=Name,Value=my-project}]
```

**Para criar uma VPC mais recursos de VPC com a AWS CLI**

1. Use o comando [create-vpc](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-vpc.html) a seguir para criar uma VPC com o bloco CIDR IPv4 especificado.

   ```
   aws ec2 create-vpc --cidr-block 10.0.0.0/24 --query Vpc.VpcId --output text
   ```

   Como alternativa, para criar uma VPC de pilha dupla, adicione a opção `--amazon-provided-ipv6-cidr-block` para adicionar um bloco CIDR IPv6 fornecido pela Amazon, conforme mostrado no exemplo a seguir.

   ```
   aws ec2 create-vpc --cidr-block 10.0.0.0/24 --amazon-provided-ipv6-cidr-block --query Vpc.VpcId --output text
   ```

   Esses comandos retornam o ID da nova VPC. Veja um exemplo a seguir.

   ```
   vpc-1a2b3c4d5e6f1a2b3
   ```

1. [VPC de pilha dupla] Obtenha o bloco CIDR IPv6 associado à sua VPC usando o comando [describe-vpcs](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-vpcs.html) a seguir.

   ```
   aws ec2 describe-vpcs --vpc-id vpc-1a2b3c4d5e6f1a2b3 --query Vpcs[].Ipv6CidrBlockAssociationSet[].Ipv6CidrBlock --output text
   ```

   O seguinte é um exemplo de saída.

   ```
   2600:1f13:cfe:3600::/56
   ```

1. Crie uma ou mais sub-redes, dependendo do seu caso de uso. Em um ambiente de produção, recomendamos que você inicie recursos em ao menos duas zonas de disponibilidade. Use um dos comandos a seguir para criar cada sub-rede.
   + **Sub-rede somente IPv4**: para criar uma sub-rede com um bloco CIDR IPv4 específico, use o comando [create-subnet](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-subnet.html) a seguir.

     ```
     aws ec2 create-subnet --vpc-id vpc-1a2b3c4d5e6f1a2b3 --cidr-block 10.0.1.0/20 --availability-zone us-east-2a --query Subnet.SubnetId --output text
     ```
   + **Sub-rede de pilha dupla**: se você criou uma VPC de pilha dupla, é possível usar a opção `--ipv6-cidr-block` para criar uma sub-rede de pilha dupla, conforme mostrado no comando a seguir.

     ```
     aws ec2 create-subnet --vpc-id vpc-1a2b3c4d5e6f1a2b3 --cidr-block 10.0.1.0/20 --ipv6-cidr-block 2600:1f13:cfe:3600::/64 --availability-zone us-east-2a --query Subnet.SubnetId --output text
     ```
   + **Sub-rede somente IPv6**: se você criou uma VPC de pilha dupla, é possível usar a opção `--ipv6-native` para criar uma sub-rede somente IPv6, conforme mostrado no comando a seguir.

     ```
     aws ec2 create-subnet --vpc-id vpc-1a2b3c4d5e6f1a2b3 --ipv6-native --ipv6-cidr-block 2600:1f13:cfe:3600::/64 --availability-zone us-east-2a --query Subnet.SubnetId --output text
     ```

   Esses comandos retornam o ID da nova sub-rede. Veja um exemplo a seguir.

   ```
   subnet-1a2b3c4d5e6f1a2b3
   ```

1. Se você precisar de uma sub-rede pública para seus servidores da Web ou para um gateway NAT, faça o seguinte:

   1. Crie um gateway da Internet usando o comando [create-internet-gateway](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-internet-gateway.html) a seguir. O comando retorna o ID do novo gateway da Internet.

      ```
      aws ec2 create-internet-gateway --query InternetGateway.InternetGatewayId --output text
      ```

   1. Anexe o gateway da Internet à sua VPC usando o comando [attach-internet-gateway](https://docs.aws.amazon.com/cli/latest/reference/ec2/attach-internet-gateway.html) a seguir. Use o ID do gateway da Internet retornado da etapa anterior.

      ```
      aws ec2 attach-internet-gateway --vpc-id vpc-1a2b3c4d5e6f1a2b3 --internet-gateway-id igw-id
      ```

   1. Crie uma tabela de rotas personalizada para sua sub-rede pública usando o comando [create-route-table](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-route-table.html) a seguir. O comando retorna o ID da nova tabela de rotas.

      ```
      aws ec2 create-route-table --vpc-id vpc-1a2b3c4d5e6f1a2b3 --query RouteTable.RouteTableId --output text
      ```

   1. Crie uma rota na tabela de rotas que envie todo o tráfego IPv4 para o gateway da Internet usando o comando [create-route](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-route.html) a seguir. Use o ID da tabela de rotas para a sub-rede pública.

      ```
      aws ec2 create-route --route-table-id rtb-id-public --destination-cidr-block 0.0.0.0/0 --gateway-id igw-id
      ```

   1. Associe a tabela de rotas à sub-rede pública usando o comando [associate-route-table](https://docs.aws.amazon.com/cli/latest/reference/ec2/associate-route-table.html) a seguir. Use o ID da tabela de rotas para a sub-rede pública e o ID da sub-rede pública.

      ```
      aws ec2 associate-route-table --route-table-id rtb-id-public --subnet-id subnet-id-public-subnet
      ```

1. [IPv6] Também é possível adicionar um gateway da Internet apenas de saída para que instâncias em uma sub-rede privada possam acessar a Internet por IPv6 (por exemplo, para obter atualizações de software), mas os hosts na Internet não possam acessar suas instâncias.

   1. Crie um gateway da Internet somente de saída usando o comando [create-egress-only-internet-gateway](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-egress-only-internet-gateway.html) a seguir. O comando retorna o ID do novo gateway da Internet.

      ```
      aws ec2 create-egress-only-internet-gateway --vpc-id vpc-1a2b3c4d5e6f1a2b3 --query EgressOnlyInternetGateway.EgressOnlyInternetGatewayId --output text
      ```

   1. Crie uma tabela de rotas personalizada para sua sub-rede privada usando o comando [create-route-table](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-route-table.html) a seguir. O comando retorna o ID da nova tabela de rotas.

      ```
      aws ec2 create-route-table --vpc-id vpc-1a2b3c4d5e6f1a2b3 --query RouteTable.RouteTableId --output text
      ```

   1. Crie uma rota na tabela de rotas para a sub-rede privada que envie todo o tráfego IPv6 para o gateway da Internet somente de saída usando o comando [create-route](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-route.html) a seguir. Use o ID da tabela de rotas retornada na etapa anterior.

      ```
      aws ec2 create-route --route-table-id rtb-id-private --destination-cidr-block ::/0 --egress-only-internet-gateway eigw-id
      ```

   1. Associe a tabela de rotas à sub-rede privada usando o comando [associate-route-table](https://docs.aws.amazon.com/cli/latest/reference/ec2/associate-route-table.html) a seguir.

      ```
      aws ec2 associate-route-table --route-table-id rtb-id-private --subnet-id subnet-id-private-subnet
      ```

1. Se você precisar de um gateway NAT para seus recursos em uma sub-rede privada, faça o seguinte:

   1. Crie um endereço IP elástico para o gateway NAT usando o comando [allocate-address](https://docs.aws.amazon.com/cli/latest/reference/ec2/allocate-address.html) a seguir.

      ```
      aws ec2 allocate-address --domain vpc --query AllocationId --output text
      ```

   1. Crie um gateway NAT na sub-rede pública usando o comando [create-nat-gateway](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-nat-gateway.html) a seguir. Use o ID de alocação retornado da etapa anterior.

      ```
      aws ec2 create-nat-gateway --subnet-id subnet-id-public-subnet --allocation-id eipalloc-id
      ```

   1. (Opcional) Se você já criou uma tabela de rotas para a sub-rede privada na etapa 5, pule essa etapa. Caso contrário, use o comando [create-route-table](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-route-table.html) a seguir para criar uma tabela de rotas para sua sub-rede privada. O comando retorna o ID da nova tabela de rotas.

      ```
      aws ec2 create-route-table --vpc-id vpc-1a2b3c4d5e6f1a2b3 --query RouteTable.RouteTableId --output text
      ```

   1. Crie uma rota na tabela de rotas para a sub-rede privada que envie todo o tráfego IPv4 para o gateway NAT usando o comando [create-route](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-route.html) a seguir. Use o ID da tabela de rotas para a sub-rede privada que você criou nesta etapa ou na etapa 5.

      ```
      aws ec2 create-route --route-table-id rtb-id-private --destination-cidr-block 0.0.0.0/0 --gateway-id nat-id
      ```

   1. (Opcional) Se você já associou uma tabela de rotas para a sub-rede privada na etapa 5, pule essa etapa. Caso contrário, use o comando [associate-route-table](https://docs.aws.amazon.com/cli/latest/reference/ec2/associate-route-table.html) a seguir para associar a tabela de rotas à sub-rede privada. Use o ID da tabela de rotas para a sub-rede privada que você criou nesta etapa ou na etapa 5.

      ```
      aws ec2 associate-route-table --route-table-id rtb-id-private --subnet-id subnet-id-private-subnet
      ```