Intervalos de endereços IP da AWS
A AWS publica seus intervalos de endereços IP atuais em formato JSON. Com essas informações, é possível identificar o tráfego da AWS. Também é possível usar essas informações para permitir ou negar tráfego de ou para alguns serviços da AWS.
nota
Somente alguns intervalos de endereços IP de serviços da AWS são publicados em ip-ranges.json; publicamos os intervalos de endereços IP para serviços nos quais os clientes geralmente desejam realizar a filtragem de saída
. Os serviços podem usar os intervalos de endereços IP para se comunicar com outros serviços ou os serviços podem usar os intervalos de IP para se comunicar com a rede de um cliente.
Para visualizar os intervalos atuais, baixe o arquivo .json
. Para manter o histórico, salve versões sucessivas do arquivo .json
em seu sistema. Para determinar se eles foram alterados desde a última vez que você salvou o arquivo, marque a hora da publicação no arquivo atual e compare-a com a hora da publicação no último arquivo que você salvou.
Os intervalos de endereços IP que você traz para a AWS por meio de “traga seus próprios endereços IP” (BYOIP) não estão incluídos no arquivo .json
.
Como alternativa, alguns serviços publicam seus intervalos de endereços usando listas de prefixos gerenciadas pela AWS. Para ter mais informações, consulte Listas de prefixos gerenciados pela AWS disponíveis.
Conteúdo
Baixar
Faça download de ip-ranges.json
Se você acessar esse arquivo programaticamente, é sua responsabilidade garantir que o aplicativo faz download do arquivo somente após a verificação bem-sucedida do certificado TLS apresentado pelo servidor.
Sintaxe
A sintaxe de ip-ranges.json
é como segue.
{ "syncToken": "
0123456789
", "createDate": "yyyy
-mm
-dd
-hh
-mm
-ss
", "prefixes": [ { "ip_prefix": "cidr
", "region": "region
", "network_border_group": "network_border_group
", "service": "subset
" } ], "ipv6_prefixes": [ { "ipv6_prefix": "cidr
", "region": "region
", "network_border_group": "network_border_group
", "service": "subset
" } ] }
- syncToken
-
A hora da publicação em formato de horário epoch Unix.
Tipo: sequência
Exemplo:
"syncToken": "1416435608"
- createDate
-
A data e hora da publicação, no formato UTC AA-MM-DD-hh-mm-ss.
Tipo: sequência
Exemplo:
"createDate": "2014-11-19-23-29-02"
- prefixos
-
Os prefixos IP para os intervalos de endereços IPv4.
Tipo: matriz
- ipv6_prefixes
-
Os prefixos IP para os intervalos de endereços IPv6.
Tipo: matriz
- ip_prefix
-
O intervalo de endereços IPv4 públicos, na notação CIDR. Observe que a AWS pode publicar um prefixo em intervalos mais específicos. Por exemplo, o prefixo 96.127.0.0/17 no arquivo pode ser publicado como 96.127.0.0/21, 96.127.8.0/21, 96.127.32.0/19 e 96.127.64.0/18.
Tipo: sequência
Exemplo:
"ip_prefix": "198.51.100.2/24"
- ipv6_prefix
-
O intervalo de endereços IPv6 públicos, na notação CIDR. Observe que a AWS pode publicar um prefixo em intervalos mais específicos.
Tipo: sequência
Exemplo:
"ipv6_prefix": "2001:db8:1234::/64"
- network_border_group
-
O nome do grupo de borda de rede, que é um conjunto exclusivo de zonas de disponibilidade ou zonas locais das quais a AWS publica endereços IP ou
GLOBAL
. O tráfego para serviçosGLOBAL
pode ser originado ou atraído para várias (até todas) zonas de disponibilidade ou zonas locais das quais a AWS publica endereços IP.Tipo: sequência
Exemplo:
"network_border_group": "us-west-2-lax-1"
- região
-
A região da AWS ou
GLOBAL
. O tráfego para serviçosGLOBAL
pode ser originado ou atraído para várias (até todas) as regiões da AWS.Tipo: sequência
Valores válidos:
af-south-1
|ap-east-1
|ap-northeast-1
|ap-northeast-2
|ap-northeast-3
|ap-south-1
|ap-south-2
|ap-southeast-1
|ap-southeast-2
|ap-southeast-3
|ap-southeast-4
|ca-central-1
|cn-north-1
|cn-northwest-1
|eu-central-1
|eu-central-2
|eu-north-1
|eu-south-1
|eu-south-2
|eu-west-1
|eu-west-2
|eu-west-3
|me-central-1
|me-south-1
|sa-east-1
|us-east-1
|us-east-2
|us-gov-east-1
|us-gov-west-1
|us-west-1
|us-west-2
|GLOBAL
Exemplo:
"region": "us-east-1"
- serviço
-
O subconjunto de intervalos de endereços IP. Os endereços listados para a
API_GATEWAY
são apenas de saída. EspecifiqueAMAZON
para obter todos os intervalos de endereços IP (o que significa que cada subconjunto também está no subconjuntoAMAZON
). No entanto, alguns intervalos de endereços IP estão apenas no subconjuntoAMAZON
(o que significa que eles também não estão disponíveis em outro subconjunto).Tipo: sequência
Valores válidos:
AMAZON
|AMAZON_APPFLOW
|AMAZON_CONNECT
|API_GATEWAY
|CHIME_MEETINGS
|CHIME_VOICECONNECTOR
|CLOUD9
|CLOUDFRONT
|CLOUDFRONT_ORIGIN_FACING
|CODEBUILD
|DYNAMODB
|EBS
|EC2
|EC2_INSTANCE_CONNECT
|GLOBALACCELERATOR
|IVS_REALTIME
|KINESIS_VIDEO_STREAMS
|MEDIA_PACKAGE_V2
|ROUTE53
|ROUTE53_HEALTHCHECKS
|ROUTE53_HEALTHCHECKS_PUBLISHING
|ROUTE53_RESOLVER
|S3
|WORKSPACES_GATEWAYS
Exemplo:
"service": "AMAZON"
Sobreposições de intervalos
Os intervalos de endereços IP retornados por qualquer código de serviço também são retornados pelo código de serviço AMAZON
. Por exemplo, todos os intervalos de endereços IP retornados pelo código de serviço S3
também são retornados pelo código de serviço AMAZON
.
Quando o serviço A usa recursos do serviço B, há intervalos de endereços IP que são retornados pelos códigos de serviço para o serviço A e o serviço B. Porém, esses intervalos de endereços IP são usados exclusivamente pelo serviço A e não podem ser usados pelo serviço B. Por exemplo, o Amazon S3 usa recursos do Amazon EC2 e, portanto, há intervalos de endereços IP que são retornados pelo códigos de serviço S3
e EC2
. Porém, esses intervalos de endereços IP são usados exclusivamente pelo Amazon S3. Portanto, o código de serviço S3
retorna todos os intervalos de endereços IP usados exclusivamente pelo Amazon S3. Para identificar os intervalos de endereços IP que são usados exclusivamente pelo Amazon EC2, localize aqueles que são retornados pelo código de serviço EC2
, mas não pelo código de serviço S3
.
Filtragem do arquivo JSON
Você pode fazer o download de uma ferramenta de linha de comando para ajudá-lo a filtrar as informações para apenas o que está procurando.
Windows
O AWS Tools for Windows PowerShell inclui um cmdlet, Get-AWSPublicIpAddressRange
, para analisar este arquivo JSON. Os exemplos a seguir demonstram sua utilização. Para obter mais informações, consulte Consultar os intervalos de endereços IP públicos da AWS
exemplo 1. Obter a data de criação
PS C:\>
Get-AWSPublicIpAddressRange -OutputPublicationDate
Wednesday, August 22, 2018 9:22:35 PM
exemplo 2. Obter as informações de uma Região específica
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 ...
exemplo 3. Obter todos os endereços IP
PS C:\>
(Get-AWSPublicIpAddressRange).IpPrefix
23.20.0.0/14 27.0.0.0/22 43.250.192.0/24 ... 2406:da00:ff00::/64 2600:1fff:6000::/40 2a01:578:3::/64 2600:9000::/28
exemplo 4. Obter todos os endereços IPv4
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 ...
exemplo 5. Obter todos os endereços IPv6
PS C:\>
Get-AWSPublicIpAddressRange | where {$_.IpAddressFormat -eq "Ipv6"} | select IpPrefix
IpPrefix -------- 2a05:d07c:2000::/40 2a05:d000:8000::/40 2406:dafe:2000::/40 ...
exemplo 6. Obter todos os endereços IP de um serviço específico
PS C:\>
Get-AWSPublicIpAddressRange -ServiceKey CODEBUILD | select IpPrefix
IpPrefix -------- 52.47.73.72/29 13.55.255.216/29 52.15.247.208/29 ...
Linux
Os comandos de exemplo a seguir usam a ferramenta jq
exemplo 1. Obter a data de criação
$
jq .createDate < ip-ranges.json
"2016-02-18-17-22-15"
exemplo 2. Obter as informações de uma Região específica
$
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" }, ...
exemplo 3. Obter todos os endereços IPv4
$
jq -r '.prefixes | .[].ip_prefix' < ip-ranges.json
23.20.0.0/14 27.0.0.0/22 43.250.192.0/24 ...
exemplo 4. Obter todos os endereços IPv6
$
jq -r '.ipv6_prefixes | .[].ipv6_prefix' < ip-ranges.json
2a05:d07c:2000::/40 2a05:d000:8000::/40 2406:dafe:2000::/40 ...
exemplo 5. Obter todos os endereços IPv4 de um serviço específico
$
jq -r '.prefixes[] | select(.service=="CODEBUILD") | .ip_prefix' < ip-ranges.json
52.47.73.72/29 13.55.255.216/29 52.15.247.208/29 ...
exemplo 6. Obter todos os endereços IPv4 de um serviço específico em uma Região específica
$
jq -r '.prefixes[] | select(.region=="us-east-1") | select(.service=="CODEBUILD") | .ip_prefix' < ip-ranges.json
34.228.4.208/28
exemplo 7. Obter informações para determinado grupo de borda de rede
$
jq -r '.prefixes[] | select(.region=="us-west-2") | 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 ...
Como implementar o controle de saída
Para permitir que os recursos que você criou com um serviço da AWS acessem somente outros serviços da AWS, você pode usar as informações do intervalo de endereços IP no arquivo ip-ranges.json para realizar a filtragem de saída.
nota
Alguns serviços da AWS são criados no EC2 e usam o espaço de endereço IP do EC2. Se você bloquear o tráfego para o espaço de endereço IP do EC2, também bloqueará o tráfego para esses serviços que não são do EC2.
Notificações de intervalos de endereços IP da AWS
Sempre que houver uma alteração em intervalos de endereços IP da AWS, poderemos enviar notificações para os assinantes do tópico AmazonIpSpaceChanged
. A carga útil contém informações no seguinte formato:
{ "create-time":"
yyyy
-mm
-dd
Thh
:mm
:ss
+00:00", "synctoken":"0123456789
", "md5":"6a45316e8bc9463c9e926d5d37836d33
", "url":"https://ip-ranges.amazonaws.com/ip-ranges.json" }
- create-time
-
A data e hora de criação.
As notificações podem ser entregues fora de ordem. Portanto, recomendamos que você verifique as marcas de data/hora para garantir a ordem correta.
- synctoken
-
A hora da publicação em formato de horário epoch Unix.
- md5
-
O valor de hash criptográfico do arquivo
ip-ranges.json
. Você pode usar esse valor para verificar se o arquivo baixado está corrompido. - url
-
A localização do arquivo
ip-ranges.json
.
Se você deseja ser notificado sempre que houver uma alteração nos intervalos de endereços IP da AWS, é possível fazer a assinatura como segue para receber notificações usando o Amazon SNS.
Para assinar as notificações de intervalo de endereço IP da AWS
Abra o console do Amazon SNS em https://console.aws.amazon.com/sns/v3/home
. -
Na barra de navegação, altere a região para Leste dos EUA (Norte da Virgínia), se necessário. É necessário selecionar esta Região porque as notificações do SNS que você está assinando foram criadas nesta Região.
-
No painel de navegação, escolha Subscriptions.
-
Selecione Create subscription.
-
Na caixa de diálogo Criar assinatura, faça o seguinte:
-
Para o ARN do tópico, copie o seguinte ARN (nome de recurso da Amazon):
arn:aws:sns:us-east-1:806199016981:AmazonIpSpaceChanged
-
Para o Protocolo, escolha o protocolo a ser usado (por exemplo,
Email
). -
Para o Endpoint, digite o endpoint no qual receber a notificação (por exemplo, seu endereço de e-mail).
-
Selecione Criar assinatura.
-
-
Você será contatado no endpoint especificado, pedindo que confirme sua assinatura. Por exemplo, se você tiver especificado um endereço de e-mail, receberá uma mensagem de e-mail com a linha de assunto
AWS Notification - Subscription Confirmation
. Siga as instruções para confirmar sua assinatura.
As notificações estão sujeitas à disponibilidade do endpoint. Portanto, você deve verificar o arquivo JSON periodicamente para garantir que tem os intervalos mais recentes. Para obter mais informações sobre confiabilidade do Amazon SNS, consulte https://aws.amazon.com/sns/faqs/#Reliability
Se não deseja mais receber essas notificações, use o procedimento a seguir para cancelar a assinatura.
Para cancelar a assinatura de notificações de intervalos de endereço IP da AWS
-
Abra o console do Amazon SNS em https://console.aws.amazon.com/sns/v3/home
. -
No painel de navegação, escolha Subscriptions.
-
Marque a caixa de seleção da assinatura.
-
Selecione Ações, Excluir assinaturas.
-
Quando a confirmação for solicitada, escolha Excluir.
Para obter mais informações sobre tópicos do Amazon SNS, consulte o Guia do desenvolvedor do Amazon Simple Notification Service.
Notas de release
A tabela a seguir descreve as atualizações da sintaxe do ip-ranges.json
. Também adicionamos novos códigos de região com cada lançamento da região.
Descrição | Data de lançamento |
---|---|
Adicionado o código de serviço IVS_REALTIME . |
11 de junho de 2024 |
Adicionado o código de serviço MEDIA_PACKAGE_V2 . |
9 de maio de 2023 |
Adicionado o código de serviço CLOUDFRONT_ORIGIN_FACING . |
12 de outubro de 2021 |
Adicionado o código de serviço ROUTE53_RESOLVER . |
24 de junho de 2021 |
Adicionado o código de serviço EBS . |
12 de maio de 2021 |
Adicionado o código de serviço KINESIS_VIDEO_STREAMS . |
19 de novembro de 2020 |
Adicionados os códigos de serviço CHIME_MEETINGS e CHIME_VOICECONNECTOR . |
19 de junho de 2020 |
Adicionado o código de serviço AMAZON_APPFLOW . |
9 de junho de 2020 |
Adicione suporte para o grupo de borda de rede. | 7 de abril de 2020 |
Adicionado o código de serviço WORKSPACES_GATEWAYS . |
30 de março de 2020 |
Adicionado o código de serviço ROUTE53_HEALTHCHECK_PUBLISHING . |
30 de janeiro de 2020 |
Adicionado o código de serviço API_GATEWAY . |
26 de setembro de 2019 |
Adicionado o código de serviço EC2_INSTANCE_CONNECT . |
26 de junho de 2019 |
Adicionado o código de serviço DYNAMODB . |
25 de abril de 2019 |
Adicionado o código de serviço GLOBALACCELERATOR . |
20 de dezembro de 2018 |
Adicionado o código de serviço AMAZON_CONNECT . |
20 de junho de 2018 |
Adicionado o código de serviço CLOUD9 . |
20 de junho de 2018 |
Adicionado o código de serviço CODEBUILD . |
19 de abril de 2018 |
Adicionado o código de serviço S3 . |
28 de fevereiro de 2017 |
Adicionado suporte para intervalos de endereços IPv6. | 22 de agosto de 2016 |
Lançamento inicial | 19 de novembro de 2014 |
Saiba mais
-
AMAZON_APPFLOW
: Intervalos de endereços IP -
AMAZON_CONNECT
: Configurar sua rede -
CHIME_MEETINGS
— Configuração para mídia e sinalização -
CLOUDFRONT
: Localizações e intervalos de endereço IP dos servidores de borda do CloudFront -
DYNAMODB
: Intervalos de endereços IP -
EC2_INSTANCE_CONNECT
— Pré-requisitos do EC2 Instance Connect -
GLOBALACCELERATOR
: Localizações e intervalos de endereços IP dos servidores de borda do Global Accelerator -
ROUTE53
: Intervalos de endereço IP dos servidores do Amazon Route 53 -
ROUTE53_HEALTHCHECKS
: Intervalos de endereço IP dos servidores do Amazon Route 53 -
ROUTE53_HEALTHCHECKS_PUBLISHING
: Intervalos de endereço IP dos servidores do Amazon Route 53 -
WORKSPACES_GATEWAYS
: Servidores de gateway PCoIP