Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
IP-Adressbereiche für AWS
Amazon Web Services (AWS) veröffentlicht seine aktuellen IP-Adressbereiche im JSON-Format.
Um die aktuellen Bereiche anzuzeigen, laden Sie die .json
-Datei herunter. Um einen Verlauf zu pflegen, speichern Sie nachfolgende Versionen
der .json
-Datei in Ihrem System. Um festzustellen, ob seit der letzten Speicherung der Datei
Änderungen vorgenommen wurden, prüfen Sie den Zeitpunkt der letzten Veröffentlichung
in der aktuellen Datei und vergleichen Sie ihn mit dem Zeitpunkt der Veröffentlichung
in der letzten Datei, die Sie gespeichert haben.
Inhalt
Download
Herunterladen von ip-ranges.json
Wenn Sie auf diese Datei programmgesteuert zugreifen, liegt es in Ihrer Verantwortung sicherzustellen, dass die Anwendung die Datei erst herunterlädt, nachdem das vom Server bereitgestellte TLS-Zertifikat erfolgreich überprüft wurde.
Syntax
Die Syntax von ip-ranges.json
ist wie folgt:
{ "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
-
Zeitpunkt der Veröffentlichung (als Zeit seit Unix-Epoche)
Typ: Zeichenkette
Example:
"syncToken": "1416435608"
- createDate
-
Datum und Uhrzeit der Veröffentlichung
Typ: Zeichenkette
Example:
"createDate": "2014-11-19-23-29-02"
- prefixes
-
Die IP-Präfixe für die IPv4-Adressbereiche
Typ: Array
- ipv6_prefixes
-
Die IP-Präfixe für die IPv6-Adressbereiche
Typ: Array
- ip_prefix
-
Der öffentliche IPv4-Adressbereich, in CIDR-Notation. Beachten Sie, dass AWS einen Präfix in spezifischeren Bereichen ankündigen kann. Zum Beispiel könnte der Präfix 96.127.0.0/17 in der Datei als 96.127.0.0/21, 96.127.8.0/21, 96.127.32.0/19 und 96.127.64.0/18 angekündigt werden.
Typ: Zeichenkette
Example:
"ip_prefix": "198.51.100.2/24"
- ipv6_prefix
-
Der öffentliche IPv6-Adressbereich, in CIDR-Notation. Beachten Sie, dass AWS einen Präfix in spezifischeren Bereichen ankündigen kann.
Typ: Zeichenkette
Example:
"ipv6_prefix": "2001:db8:1234::/64"
- network_border_group
-
Der Name der Netzwerkgrenzgruppe, die ein eindeutiger Satz von Availability Zones oder Local Zones ist, aus denen AWS IP-Adressen ankündigt.
Typ: Zeichenkette
Example:
"network_border_group": "us-west-2-lax-1"
- Region
-
Die AWS-Region oder
GLOBAL
für -Edge-Standorte. TheCLOUDFRONT
andROUTE53
ranges areGLOBAL
.Typ: Zeichenkette
Valid values:
ap-east-1
|ap-northeast-1
|ap-northeast-2
|ap-northeast-3
|ap-south-1
|ap-southeast-1
|ap-southeast-2
|ca-central-1
|cn-north-1
|cn-northwest-1
|eu-central-1
|eu-north-1
|eu-west-1
|eu-west-2
|eu-west-3
|sa-east-1
|us-east-1
|us-east-2
|us-gov-east-1
|us-gov-west-1
|us-west-1
|us-west-2
|GLOBAL
Example:
"region": "us-east-1"
- Service nicht zulässig
-
Die Untergruppe der IP-Adressbereiche. Die aufgelisteten Adressen für
API_GATEWAY
sind nur Egress. Geben SieAMAZON
an, um alle IP-Adressbereiche abzurufen (d. h. die jeweiligen Teilmengen sind auch in derAMAZON
-Teilmenge enthalten). Einige IP-Adressbereiche sind jedoch nur in derAMAZON
-Teilmenge (d. h. in keiner weiteren Teilmenge) enthalten.Typ: Zeichenkette
Valid values:
AMAZON
|AMAZON_APPFLOW
|AMAZON_CONNECT
|API_GATEWAY
|CHIME_MEETINGS
|CHIME_VOICECONNECTOR
|CLOUD9
|CLOUDFRONT
|CODEBUILD
|DYNAMODB
|EC2
|EC2_INSTANCE_CONNECT
|GLOBALACCELERATOR
|KINESIS_VIDEO_STREAMS
|ROUTE53
|ROUTE53_HEALTHCHECKS
|S3
|WORKSPACES_GATEWAYS
Example:
"service": "AMAZON"
Filtern der JSON-Datei
Sie können ein Befehlszeilen-Tool herunterladen, um die Informationen so zu filtern, dass Sie nur die gewünschten Informationen erhalten.
Windows
The AWS-Tools für Windows PowerShell includes a cmdlet, Get-AWSPublicIpAddressRange
, to parse this JSON file. Die folgenden Beispiele zeigen, wie Sie das Cmdlet verwenden.
Weitere Informationen finden Sie im Blogpost über das Abfragen der öffentlichen IP-Adressbereiche für AWS
Beispiel 1. Abrufen des Erstellungsdatums
PS C:\>
Get-AWSPublicIpAddressRange -OutputPublicationDate
Wednesday, August 22, 2018 9:22:35 PM
Beispiel 2. Abrufen der Informationen für eine bestimmte Region
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 ...
Beispiel 3. Abrufen aller IP-Adressen
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
Beispiel 4. Abrufen aller IPv4-Adressen
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 ...
Beispiel 5. Abrufen aller IPv6-Adressen
PS C:\>
Get-AWSPublicIpAddressRange | where {$_.IpAddressFormat -eq "Ipv6"} | select IpPrefix
IpPrefix -------- 2a05:d07c:2000::/40 2a05:d000:8000::/40 2406:dafe:2000::/40 ...
Beispiel 6. Abrufen aller IP-Adressen für einen bestimmten Service
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
The following example commands use the jq tool
Beispiel 1. Abrufen des Erstellungsdatums
$
jq .createDate < ip-ranges.json
"2016-02-18-17-22-15"
Beispiel 2. Abrufen der Informationen für eine bestimmte Region
$
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" }, ...
Beispiel 3. Abrufen aller IPv4-Adressen
$
jq -r '.prefixes | .[].ip_prefix' < ip-ranges.json
23.20.0.0/14 27.0.0.0/22 43.250.192.0/24 ...
Beispiel 4. Abrufen aller IPv6-Adressen
$
jq -r '.ipv6_prefixes | .[].ipv6_prefix' < ip-ranges.json
2a05:d07c:2000::/40 2a05:d000:8000::/40 2406:dafe:2000::/40 ...
Beispiel 5. Abrufen aller IPv4-Adressen für einen bestimmten Service
$
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 ...
Beispiel 6. Abrufen aller IPv4-Adressen für einen bestimmten Service in einer bestimmten Region
$
jq -r '.prefixes[] | select(.region=="us-east-1") | select(.service=="CODEBUILD") | .ip_prefix' < ip-ranges.json
34.228.4.208/28
Beispiel 7. Abrufen von Informationen für eine bestimmte Netzwerkgrenzgruppe
$
jq -r '.prefixes[] | select(.region=="us-west-2") | select(.network_border_group=="us-west-2-lax-1") | .ip_prefix' < ip-ranges.json
us-west-2-lax-1
Implementieren der Kontrolle ausgehenden Datenverkehrs
Um einer Instance nur den Zugriff auf AWS-Services zu erlauben, erstellen Sie eine
Sicherheitsgruppe mit Regeln, die ausgehenden Datenverkehr zu den CIDR-Blöcken in
der AMAZON
-Liste zulassen, abzüglich der CIDR-Blöcke, die auch in der EC2
-Liste enthalten sind. IP-Adressen in der EC2
-Liste können EC2-Instances zugewiesen werden.
Windows PowerShell
Das folgende PowerShell-Beispiel zeigt, wie Sie die IP-Adressen abrufen können, die
in der AMAZON
-Liste, aber nicht in der EC2
-Liste vorhanden sind. Kopieren Sie das Skript und speichern Sie es in einer Datei
mit dem Namen Select_address.ps1
.
$amazon_addresses = Get-AWSPublicIpAddressRange -ServiceKey amazon $ec2_addresses = Get-AWSPublicIpAddressRange -ServiceKey ec2 ForEach ($address in $amazon_addresses) { if( $ec2_addresses.IpPrefix -notcontains $address.IpPrefix) { ($address).IpPrefix } }
Sie können dieses Skript wie folgt ausführen:
PS C:\>
.\Select_address.ps1
13.32.0.0/15 13.35.0.0/16 13.248.0.0/20 13.248.16.0/21 13.248.24.0/22 13.248.28.0/22 27.0.0.0/22 43.250.192.0/24 43.250.193.0/24 ...
jq
Das folgende Beispiel zeigt, wie Sie die IP-Adressen in der Liste AMAZON
, aber nicht in der Liste EC2
für alle Regionen abrufen:
jq -r '[.prefixes[] | select(.service=="AMAZON").ip_prefix] - [.prefixes[] | select(.service=="EC2").ip_prefix] | .[]' < ip-ranges.json
52.94.22.0/24 52.94.17.0/24 52.95.154.0/23 52.95.212.0/22 54.239.0.240/28 54.239.54.0/23 52.119.224.0/21 ...
Das folgende Beispiel zeigt, wie Sie die Ergebnisse nach einer Region filtern:
jq -r '[.prefixes[] | select(.region=="us-east-1" and .service=="AMAZON").ip_prefix] - [.prefixes[] | select(.region=="us-east-1" and .service=="EC2").ip_prefix] | .[]' < ip-ranges.json
Python
Das folgende Python-Skript zeigt, wie Sie die IP-Adressen abrufen können, die in der
AMAZON
-Liste, aber nicht in der EC2
-Liste vorhanden sind. Kopieren Sie das Skript und speichern Sie es in einer Datei
mit dem Namen get_ips.py
.
#!/usr/bin/env python import requests ip_ranges = requests.get('https://ip-ranges.amazonaws.com/ip-ranges.json').json()['prefixes'] amazon_ips = [item['ip_prefix'] for item in ip_ranges if item["service"] == "AMAZON"] ec2_ips = [item['ip_prefix'] for item in ip_ranges if item["service"] == "EC2"] amazon_ips_less_ec2=[] for ip in amazon_ips: if ip not in ec2_ips: amazon_ips_less_ec2.append(ip) for ip in amazon_ips_less_ec2: print(str(ip))
Sie können dieses Skript wie folgt ausführen:
$
python ./get_ips.py
13.32.0.0/15 13.35.0.0/16 13.248.0.0/20 13.248.16.0/21 13.248.24.0/22 13.248.28.0/22 27.0.0.0/22 43.250.192.0/24 43.250.193.0/24 ...
Benachrichtigungen zu den IP-Adressbereichen von AWS
Wenn eine Änderung an den IP-Adressbereichen von AWS erfolgt, senden wir entsprechende
Benachrichtigungen an die Abonnenten des Themas AmazonIpSpaceChanged
Die Nutzlast enthält Informationen im folgenden Format:
{ "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
-
Datum und Zeitpunkt der Erstellung
Es kann vorkommen, dass Benachrichtigungen nicht in der richtigen Reihenfolge versandt werden. Daher wird empfohlen, die Zeitstempel zu überprüfen, um für die richtige Reihenfolge zu sorgen.
- synctoken
-
Zeitpunkt der Veröffentlichung (als Zeit seit Unix-Epoche)
- md5
-
Der kryptografische Hash-Wert der Datei
ip-ranges.json
Sie können diesen Wert verwenden, um zu überprüfen, ob die heruntergeladene Datei beschädigt ist. - URL
-
Der Speicherort der Datei
ip-ranges.json
Wenn Sie benachrichtigt werden möchten, wenn eine Änderung an den IP-Adressbereichen von AWS erfolgt, können Sie den Empfang von -Benachrichtigungen wie folgt abonnieren.Amazon SNS.
So melden Sie sich für Benachrichtigungen zu AWS-IP-Adressbereichen an
-
Öffnen Sie die Amazon SNS-Konsole unter https://console.aws.amazon.com/sns/v3/home
. -
In the navigation bar, change the Region to USA Ost (Nord-Virginia), if necessary. Sie müssen diese Region auswählen, da die SNS-Benachrichtigungen, die Sie abonnieren, in dieser Region erstellt wurden.
-
Wählen Sie im Navigationsbereich Subscriptions. aus.
-
Wählen Sie Create subscription.
-
In the Create subscription dialog box, do the following:
-
For Topic ARN, copy the following Amazon Resource Name (ARN):
arn:aws:sns:us-east-1:806199016981:AmazonIpSpaceChanged
-
Wählen Sie für Protocol das zu verwendende Protokoll aus (z. B.
Email
). -
For Endpoint, type the endpoint to receive the notification (for example, your email address).
-
Wählen Sie Create subscription.
-
-
Sie werden über den angegebenen Endpunkt kontaktiert und gebeten, Ihr Abonnement zu bestätigen. Wenn Sie beispielsweise eine E-Mail-Adresse angegeben haben, erhalten Sie eine E-Mail-Nachricht mit der Betreffzeile
AWS Notification - Subscription Confirmation
. Befolgen Sie die Anweisungen, um Ihr Abonnement zu bestätigen.
Benachrichtigungen hängen von der Verfügbarkeit des Endpunkts ab. Aus diesem Grund
sollten Sie die JSON-Datei regelmäßig überprüfen, um sicherzustellen, dass Sie über
die neuesten Bereiche verfügen. Weitere Informationen zur Zuverlässigkeit von Amazon
SNS erhalten Sie unter https://aws.amazon.com/sns/faqs/#Reliability
Wenn Sie diese Benachrichtigungen nicht mehr erhalten möchten, führen Sie die folgenden Schritte aus, um sich abzumelden.
So melden Sie sich von den Benachrichtigungen für AWS-IP-Adressbereiche ab
-
Öffnen Sie die Amazon SNS-Konsole unter https://console.aws.amazon.com/sns/v3/home
. -
Wählen Sie im Navigationsbereich Subscriptions. aus.
-
Aktivieren Sie das Kontrollkästchen für das Abonnement.
-
Wählen Sie Actions und dann Delete subscriptions.
-
Wenn Sie zur Bestätigung aufgefordert werden, wählen Sie Delete.
For more information about Amazon SNS, see the Entwicklerhandbuch für Amazon Simple Notification Service.
Versionshinweise
In der folgenden Tabelle werden Aktualisierungen der AWS-IP-Adressbereiche beschrieben. Wir fügen außerdem neue Regionscodes bei jedem Regionsstart hinzu.
Beschreibung | Datum der Veröffentlichung |
---|---|
Der KINESIS_VIDEO_STREAMS -Servicecode wurde hinzugefügt.
|
19. November 2020 |
Added the CHIME_MEETINGS and CHIME_VOICECONNECTOR service codes.
|
19. Juni 2020 |
Der AMAZON_APPFLOW -Servicecode wurde hinzugefügt.
|
9. Juni 2020 |
Fügen Sie Unterstützung für die Netzwerkgrenzgruppe hinzu. | 7. April 2020 |
Der WORKSPACES_GATEWAYS -Servicecode wurde hinzugefügt.
|
30. März 2020 |
Der API_GATEWAY -Servicecode wurde hinzugefügt.
|
26. September 2019 |
Der EC2_INSTANCE_CONNECT -Servicecode wurde hinzugefügt.
|
26. Juni 2019 |
Der DYNAMODB -Servicecode wurde hinzugefügt.
|
25. April 2019 |
Der GLOBALACCELERATOR -Servicecode wurde hinzugefügt.
|
20. Dezember 2018 |
Der AMAZON_CONNECT -Servicecode wurde hinzugefügt.
|
20. Juni 2018 |
Der CLOUD9 -Servicecode wurde hinzugefügt.
|
20. Juni 2018 |
Der CODEBUILD -Servicecode wurde hinzugefügt.
|
19. April 2018 |
Der S3 -Servicecode wurde hinzugefügt.
|
28. Februar 2017 |
Unterstützung für IPv6-Adressbereiche hinzugefügt. | 22. August 2016 |
Erstversion | 19. November 2014 |