

# Descobrir os intervalos de endereços IP para os Serviços da AWS
<a name="aws-ip-work-with"></a>

O arquivo JSON de intervalos de endereços IP da AWS fornecido pela AWS pode ser um recurso valioso para descobrir os endereços IP de vários serviços da AWS e utilizar essas informações para aprimorar a segurança e o controle de acesso da sua rede. Analisando os dados detalhados contidos nesse arquivo JSON, você pode identificar com precisão os intervalos de endereços IP associados a serviços e regiões específicas da Serviços da AWS.

Por exemplo, você pode utilizar os intervalos de endereços IP para configurar políticas robustas de segurança de rede, configurando regras granulares de firewall para permitir ou negar acesso a determinados recursos da AWS. Essas informações também podem ser úteis para toda uma variedade de tarefas da AWS Network Firewall. Esse nível de controle é essencial para proteger dados e aplicações, garantindo que somente tráfego autorizado possa alcançar os serviços da Serviços da AWS necessários. Além disso, ter essa inteligência de IP pode ajudar a garantir que suas aplicações sejam configuradas adequadamente para se comunicar com os endpoints da AWS certos, melhorando a confiabilidade e a performance gerais. 

Além das regras de firewall, o arquivo `ip-ranges.json` também pode ser usado para configurar uma filtragem de saída sofisticada na infraestrutura de rede. Entendendo os intervalos de endereços IP de destino para os diferentes Serviços da AWS, você poderá configurar políticas de roteamento ou utilizar soluções avançadas de segurança de rede, como permitir ou bloquear seletivamente o tráfego de saída com base no destino pretendido. Esse controle de saída é essencial para reduzir o risco de vazamento de dados e acesso não autorizado.

É importante observar que o arquivo `ip-ranges.json` é atualizado regularmente, assim sendo, manter uma cópia local atualizada é essencial para garantir que você tenha as informações mais precisas e atuais. Ao aproveitar continuamente o conteúdo desse arquivo, você pode gerenciar com eficiência o acesso à rede e a segurança das suas aplicações baseadas na AWS, fortalecendo sua postura geral de segurança na nuvem.

Os exemplos a seguir podem ajudar você a filtrar os intervalos de endereços IP da AWS para obter apenas o que você está procurando. No Linux, você pode baixar e usar a [ferramenta jq](https://stedolan.github.io/jq/) para analisar uma cópia local do arquivo JSON. O [AWS Tools for Windows PowerShell](https://docs.aws.amazon.com/powershell/latest/userguide/) inclui um cmdlet, [Get-AWSPublicIpAddressRange](https://docs.aws.amazon.com/powershell/latest/reference/items/Get-AWSPublicIpAddressRange.html), que você pode usar para analisar esse arquivo JSON. Para obter mais informações, consulte [Querying the Public IP Address Ranges for AWS](https://aws.amazon.com/blogs/developer/querying-the-public-ip-address-ranges-for-aws/).

Para obter o arquivo JSON, consulte [Baixe o arquivo JSON](aws-ip-ranges.md#aws-ip-download). Para obter mais informações sobre a sintaxe do arquivo JSON, consulte [Sintaxe para o intervalo de endereços IP da AWS em JSON](aws-ip-syntax.md).

**Topics**
+ [Obter a data de criação do arquivo](#filter-ip-ranges-creation-date)
+ [Obter os endereços IP de uma região específica](#filter-ip-ranges-region)
+ [Obter todos os endereços IPv4](#filter-ip-ranges-ipv4)
+ [Obter todos os endereços IPv4 de um serviço específico](#filter-ip-ranges-ipv4-service)
+ [Obter todos os endereços IPv4 de um serviço específico em uma Região específica](#filter-ip-ranges-ipv4-service-region)
+ [Obter todos os endereços IPv6](#filter-ip-ranges-ipv6)
+ [Obter todos os endereços IPv6 de um serviço específico](#filter-ip-ranges-ipv6-service)
+ [Obter todos os endereços IP de um grupo fronteiriço específico](#filter-ip-ranges-border-group)

## Obter a data de criação do arquivo
<a name="filter-ip-ranges-creation-date"></a>

O exemplo a seguir obtém a data de criação do arquivo `ip-ranges.json`.

------
#### [ jq ]

```
$ jq .createDate < ip-ranges.json

"2024-08-01-17-22-15"
```

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

```
PS C:\> Get-AWSPublicIpAddressRange -OutputPublicationDate

Thursday, August 1, 2024 9:22:35 PM
```

------

## Obter os endereços IP de uma região específica
<a name="filter-ip-ranges-region"></a>

O exemplo a seguir filtra o arquivo JSON para obter os endereços IP da região especificada.

------
#### [ jq ]

```
$ jq '.prefixes[] | select(.region=="us-east-1")' < ip-ranges.json

{
  "ip_prefix": "23.20.0.0/14",
  "region": "us-east-1",
  "network_border_group": "us-east-1",
  "service": "AMAZON"
},
{
  "ip_prefix": "50.16.0.0/15",
  "region": "us-east-1",
  "network_border_group": "us-east-1",
  "service": "AMAZON"
},
{
  "ip_prefix": "50.19.0.0/16",
  "region": "us-east-1",
  "network_border_group": "us-east-1",
  "service": "AMAZON"
},
...
```

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

```
PS C:\> Get-AWSPublicIpAddressRange -Region us-east-1

IpPrefix        Region      NetworkBorderGroup         Service
--------        ------       -------                   -------
23.20.0.0/14    us-east-1    us-east-1                 AMAZON
50.16.0.0/15    us-east-1    us-east-1                 AMAZON
50.19.0.0/16    us-east-1    us-east-1                 AMAZON
...
```

------

## Obter todos os endereços IPv4
<a name="filter-ip-ranges-ipv4"></a>

O exemplo a seguir filtra o arquivo JSON para obter os endereços IPv4.

------
#### [ jq ]

```
$ jq -r '.prefixes | .[].ip_prefix' < ip-ranges.json

23.20.0.0/14
27.0.0.0/22
43.250.192.0/24
...
```

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

```
PS C:\> Get-AWSPublicIpAddressRange | where {$_.IpAddressFormat -eq "Ipv4"} | select IpPrefix

IpPrefix
--------
23.20.0.0/14
27.0.0.0/22
43.250.192.0/24
...
```

------

## Obter todos os endereços IPv4 de um serviço específico
<a name="filter-ip-ranges-ipv4-service"></a>

O exemplo a seguir filtra o arquivo JSON para obter os endereços IPv4 do serviço especificado.

------
#### [ jq ]

```
$ jq -r '.prefixes[] | select(.service=="GLOBALACCELERATOR") | .ip_prefix' < ip-ranges.json

13.248.117.0/24
15.197.34.0/23
15.197.36.0/22
...
```

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

```
PS C:\> Get-AWSPublicIpAddressRange -ServiceKey GLOBALACCELERATOR | where {$_.IpAddressFormat -eq "Ipv4"} | select IpPrefix

IpPrefix
--------
13.248.117.0/24
15.197.34.0/23
15.197.36.0/22
...
```

------

## Obter todos os endereços IPv4 de um serviço específico em uma Região específica
<a name="filter-ip-ranges-ipv4-service-region"></a>

O exemplo a seguir filtra o arquivo JSON para obter os endereços IPv4 do serviço especificado na região especificada.

------
#### [ jq ]

```
$ jq -r '.prefixes[] | select(.region=="us-east-1") | select(.service=="GLOBALACCELERATOR") | .ip_prefix' < ip-ranges.json

13.248.124.0/24
99.82.166.0/24
99.82.171.0/24
...
```

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

```
PS C:\> Get-AWSPublicIpAddressRange -Region us-east-1 -ServiceKey GLOBALACCELERATOR | where {$_.IpAddressFormat -eq "Ipv4"} | select IpPrefix

IpPrefix
--------
13.248.117.0/24
99.82.166.0/24
99.82.171.0/24
...
```

------

## Obter todos os endereços IPv6
<a name="filter-ip-ranges-ipv6"></a>

O exemplo a seguir filtra o arquivo JSON para obter os endereços IPv6.

------
#### [ jq ]

```
$ jq -r '.ipv6_prefixes | .[].ipv6_prefix' < ip-ranges.json

2a05:d07c:2000::/40
2a05:d000:8000::/40
2406:dafe:2000::/40
...
```

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

```
PS C:\> Get-AWSPublicIpAddressRange | where {$_.IpAddressFormat -eq "Ipv6"} | select IpPrefix

IpPrefix
--------
2a05:d07c:2000::/40
2a05:d000:8000::/40
2406:dafe:2000::/40
...
```

------

## Obter todos os endereços IPv6 de um serviço específico
<a name="filter-ip-ranges-ipv6-service"></a>

O exemplo a seguir filtra o arquivo JSON para obter os endereços IPv6 do serviço especificado.

------
#### [ jq ]

```
$ jq -r '.ipv6_prefixes[] | select(.service=="GLOBALACCELERATOR") | .ipv6_prefix' < ip-ranges.json
                            
2600:1f01:4874::/47
2600:1f01:4802::/47
2600:1f01:4860::/47
2600:9000:a800::/40
...
```

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

```
PS C:\> Get-AWSPublicIpAddressRange -ServiceKey GLOBALACCELERATOR | where {$_.IpAddressFormat -eq "Ipv6"} | select IpPrefix

IpPrefix
--------
2600:1f01:4874::/47
2600:1f01:4802::/47
2600:1f01:4860::/47
2600:9000:a800::/40
...
```

------

## Obter todos os endereços IP de um grupo fronteiriço específico
<a name="filter-ip-ranges-border-group"></a>

O exemplo a seguir filtra o arquivo JSON para obter todos os endereços IP do grupo fronteiriço especificado.

------
#### [ jq ]

```
$ jq -r '.prefixes[] | select(.network_border_group=="us-west-2-lax-1") | .ip_prefix' < ip-ranges.json
70.224.192.0/18
52.95.230.0/24
15.253.0.0/16
...
```

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

```
PS C:\> Get-AWSPublicIpAddressRange | where {$_.NetworkBorderGroup -eq "us-west-2-lax-1"} | select IpPrefix

IpPrefix
--------
70.224.192.0/18
52.95.230.0/24
15.253.0.0/16
...
```

------