

# Gerenciar os endereços IPv6 para as instâncias do EC2
<a name="working-with-ipv6-addresses"></a>

Se a VPC e a sub-rede tiverem blocos CIDR IPv6 associados a elas, será possível atribuir um endereço IPv6 à instância durante ou após a execução. É possível acessar os endereços IPv6 de suas instâncias no console, nas páginas **Instâncias** ou **Interfaces de rede**. As tarefas a seguir configuram endereços IP para suas instâncias. Para configurar endereços IP nas interfaces de rede, consulte [Gerenciar os endereços IP para a interface de rede](managing-network-interface-ip-addresses.md).

**Topics**
+ [Atribuir um endereço IPv6 a uma instância](#assign-ipv6-address)
+ [Visualizar os endereços IPv6 de uma instância](#view-ipv6-addresses)
+ [Visualizar endereços IPv6 usando metadados de instância](#view-ipv6-addresses-imds)
+ [Cancelar a atribuição de um endereço IPv6 de uma instância](#unassign-ipv6-address)

## Atribuir um endereço IPv6 a uma instância
<a name="assign-ipv6-address"></a>

É possível especificar um endereço IPv6 no intervalo de endereços IPv6 da sub-rede ou deixar que o Amazon EC2 escolha um para você. Esse endereço é atribuído à interface de rede primária. Observe que os tipos de instância a seguir não oferecem suporte a endereços IPv6: C1, M1, M2, M3 e T1.

------
#### [ Console ]

**Para atribuir um endereço IPv6 na inicialização**  
Siga o procedimento para [iniciar uma instância](ec2-launch-instance-wizard.md). Ao definir as [Configurações de rede](ec2-instance-launch-parameters.md#liw-network-settings), escolha a opção **Atribuir IP IPv6 automaticamente**. Se você não vir essa opção, a sub-rede selecionada não tem um bloco CIDR IPv6 associado.

**Para atribuir um endereço IPv6 após a inicialização**

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

1. No painel de navegação, escolha **Instances (Instâncias)**.

1. Selecione a instância e escolha **Actions (Ações)**, **Networking (Redes)**, **Manage IP Addresses (Gerenciar endereços IP)**.

1. Expanda a interface de rede. Em **IPv6 addresses (Endereços IPv6)**, escolha **Assign new IP address (Atribuir novo endereço IP)**. 

1. Insira um endereço IPv6 no intervalo da sub-rede ou deixe o campo em branco para permitir que o Amazon EC2 escolha o endereço IPv6 para você. Se você não vir essa opção, a sub-rede da instância não tem um bloco CIDR IPv6 associado.

1. Escolha **Salvar**.

------
#### [ AWS CLI ]

**Para atribuir um endereço IPv6 na inicialização**  
Use o comando [run-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/run-instances.html) com a opção `--ipv6-addresses`. O exemplo a seguir atribui dois endereços IPv6.

```
--ipv6-addresses Ipv6Address=2001:db8::1234:5678:1.2.3.4 Ipv6Address=2001:db8::1234:5678:5.6.7.8
```

Para permitir que o Amazon EC2 escolha os endereços IPv6, use a opção `--ipv6-address-count`. O exemplo a seguir atribui dois endereços IPv6.

```
--ipv6-address-count 2
```

**Para atribuir um endereço IPv6 após a inicialização**  
Use o comando [assign-ipv6-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/assign-ipv6-addresses.html). O exemplo a seguir atribui dois endereços IPv6.

```
aws ec2 assign-ipv6-addresses \ 
    --network-interface-id eni-1234567890abcdef0 \
    --ipv6-addresses 2001:db8::1234:5678:1.2.3.4 2001:db8::1234:5678:5.6.7.8
```

Para permitir que o Amazon EC2 escolha os endereços IPv6, use a opção `--ipv6-address-count`. O exemplo a seguir atribui dois endereços IPv6.

```
aws ec2 assign-ipv6-addresses \
    --network-interface-id eni-1234567890abcdef0 \
    --ipv6-address-count 2
```

------
#### [ PowerShell ]

**Para atribuir um endereço IPv6 na inicialização**  
Use o cmdlet [New-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/New-EC2Instance.html) com o parâmetro `-Ipv6Address`. O exemplo a seguir atribui dois endereços IPv6.

```
-Ipv6Address $ipv6addr1,$ipv6addr2
```

Defina os endereços IPv6 da seguinte maneira.

```
$ipv6addr1 = New-Object Amazon.EC2.Model.InstanceIpv6Address
$ipv6addr1.Ipv6Address = "2001:db8::1234:5678:1.2.3.4"
$ipv6addr2 = New-Object Amazon.EC2.Model.InstanceIpv6Address
$ipv6addr2.Ipv6Address = "2001:db8::1234:5678:5.6.7.8"
```

Para permitir que o Amazon EC2 escolha os endereços IPv6, use o parâmetro `-Ipv6AddressCount`. O exemplo a seguir atribui dois endereços IPv6.

```
-Ipv6AddressCount 2
```

**Para atribuir um endereço IPv6 após a inicialização**  
Use o cmdlet [Register-EC2Ipv6AddressList](https://docs.aws.amazon.com/powershell/latest/reference/items/Register-EC2Ipv6AddressList.html). O exemplo a seguir atribui dois endereços IPv6.

```
Register-EC2Ipv6AddressList `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -Ipv6Address "2001:db8::1234:5678:1.2.3.4","2001:db8::1234:5678:5.6.7.8"
```

Para permitir que o Amazon EC2 escolha os endereços IPv6, use o parâmetro `-Ipv6AddressCount`. O exemplo a seguir atribui dois endereços IPv6.

```
Register-EC2Ipv6AddressList `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -Ipv6AddressCount 2
```

------

## Visualizar os endereços IPv6 de uma instância
<a name="view-ipv6-addresses"></a>

É possível visualizar os endereços IPv6 da sua instância.

------
#### [ Console ]

**Para visualizar os endereços IPv6 de uma instância**

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

1. No painel de navegação, escolha **Instances (Instâncias)**.

1. Selecione a instância.

1. Na guia **Networking (Redes)**, localize **IPv6 addresses (Endereços IPv6)**.

------
#### [ AWS CLI ]

**Para visualizar o endereço IPv6 de uma instância**  
Use o comando [describe-instances](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-instances.html).

```
aws ec2 describe-instances \
    --instance-ids i-1234567890abcdef0 \
    --query "Reservations[*].Instances[].Ipv6Address" \
    --output text
```

O seguinte é um exemplo de saída.

```
2001:db8::1234:5678:1.2.3.4
```

------
#### [ PowerShell ]

**Para visualizar o endereço IPv6 de uma instância**  
Use o cmdlet [Get-EC2Instance](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-EC2Instance.html).

```
(Get-EC2Instance `
    -InstanceId i-1234567890abcdef0).Instances.Ipv6Address
```

O seguinte é um exemplo de saída.

```
2001:db8::1234:5678:1.2.3.4
```

------

## Visualizar endereços IPv6 usando metadados de instância
<a name="view-ipv6-addresses-imds"></a>

Depois de se conectar à sua instância, é possível recuperar os endereços IPv6 usando metadados de instância. Primeiro, é necessário obter o endereço MAC da instância em `http://169.254.169.254/latest/meta-data/network/interfaces/macs/`.

------
#### [ IMDSv2 ]

**Linux**  
Execute o seguinte comando em sua instância Linux.

```
TOKEN=`curl -X PUT "http://169.254.169.254/latest/api/token" -H "X-aws-ec2-metadata-token-ttl-seconds: 21600"` \
&& curl -H "X-aws-ec2-metadata-token: $TOKEN" http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

**Windows**  
Execute os seguintes cmdlets na sua instância Windows.

```
[string]$token = Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token-ttl-seconds" = "21600"} `
    -Method PUT -Uri http://169.254.169.254/latest/api/token
```

```
Invoke-RestMethod -Headers @{"X-aws-ec2-metadata-token" = $token} `
    -Method GET -Uri http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

------
#### [ IMDSv1 ]

**Linux**  
Execute o seguinte comando em sua instância Linux.

```
curl http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

**Windows**  
Execute o seguinte cmdlet na sua instância Windows.

```
Invoke-RestMethod -Uri http://169.254.169.254/latest/meta-data/network/interfaces/macs/mac-address/ipv6s
```

------

## Cancelar a atribuição de um endereço IPv6 de uma instância
<a name="unassign-ipv6-address"></a>

É possível cancelar a atribuição de um endereço IPv6 de uma instância a qualquer momento.

------
#### [ Console ]

**Para cancelar a atribuição de um endereço IPv6 de uma instância**

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

1. No painel de navegação, escolha **Instances (Instâncias)**.

1. Selecione a instância e escolha **Actions (Ações)**, **Networking (Redes)**, **Manage IP Addresses (Gerenciar endereços IP)**.

1. Expanda a interface de rede. Em **IPv6 addresses (Endereços IPv6)**, selecione **Unassign (Cancelar atribuição)** ao lado de endereços IPv6.

1. Escolha **Salvar**.

------
#### [ AWS CLI ]

**Para cancelar a atribuição de um endereço IPv6 de uma instância**  
Use o comando [unassign-ipv6-addresses](https://docs.aws.amazon.com/cli/latest/reference/ec2/unassign-ipv6-addresses.html).

```
aws ec2 unassign-ipv6-addresses \ 
    --network-interface-id eni-1234567890abcdef0 \
    --ipv6-addresses 2001:db8::1234:5678:1.2.3.4
```

------
#### [ PowerShell ]

**Para cancelar a atribuição de um endereço IPv6 de uma instância**  
Use o cmdlet [Unregister-EC2Ipv6AddressList](https://docs.aws.amazon.com/powershell/latest/reference/items/Unregister-EC2Ipv6AddressList.html).

```
Unregister-EC2Ipv6AddressList `
    -NetworkInterfaceId eni-1234567890abcdef0 `
    -Ipv6Address 2001:db8::1234:5678:1.2.3.4
```

------