Μετάβαση στο περιεχόμενο
Networks

Bring your own IP

BYOIP στο AWS: φέρτε τις δικές σας διευθύνσεις IPv4 στο EC2

BYOIP διαθέσιμοΗνωμένες ΠολιτείεςΕλέγχθηκε με βάση την τεκμηρίωση του AWS στις Μετάφραση από τα αγγλικά. Διαβάστε το πρωτότυπο

Αποδεικνύετε ότι ελέγχετε το εύρος με ένα πιστοποιητικό στην εγγραφή μητρώου του και ένα ROA που αναφέρει τα ASN του AWS, το εντάσσετε σε ένα address pool, και εκχωρείτε από αυτό διευθύνσεις Elastic IP όπως θα κάνατε από τις διευθύνσεις του ίδιου του AWS. Οι διευθύνσεις που φέρνετε δεν επιβαρύνονται με την ωριαία χρέωση δημόσιου IPv4.

Αυτός ο οδηγός καλύπτει το EC2 μέσω του AWS CLI. Το ίδιο εύρος μπορεί επίσης να πάει στο AWS Global Accelerator, που έχει τη δική του διαδικασία, ή μέσω του VPC IP Address Manager (IPAM), που προσθέτει έναν τρόπο απόδειξης ελέγχου μέσω DNS και την επιλογή ανακοίνωσης από το δικό σας ASN.

Τι δέχεται το AWS

Από την τεκμηρίωση του AWS, την ημέρα που την ελέγξαμε:

  • Μέγεθος. Το πιο συγκεκριμένο εύρος IPv4 που μπορείτε να φέρετε είναι ένα /24.
  • Μητρώο. Το ARIN, το RIPE NCC ή το APNIC, και καταχωρισμένο σε επιχείρηση ή ίδρυμα, ποτέ σε φυσικό πρόσωπο.
  • Ιστορικό. Το AWS μπορεί να ελέγξει τη φήμη του εύρους και να απορρίψει ένα με διευθύνσεις που έχουν κακό ιστορικό (πώς κρατάτε ένα μπλοκ καθαρό).
  • Ο χώρος legacy γίνεται δεκτός αλλά χρειάζεται και πάλι ROA.
  • Μία Region τη φορά ανά εύρος, και πέντε εύρη ανά Region εξ ορισμού: το AWS Support μπορεί να αυξήσει το όριο.
  • Πού. Σε κάθε εμπορική Region εκτός από τις Regions της Κίνας, και σε μια σειρά από Local Zones.
  • Μην αγγίζετε το routing registry. Το AWS ενημερώνει το ίδιο το RADb, και μια χειροκίνητη αλλαγή που περιλαμβάνει το ASN του AWS κάνει την παροχή να αποτύχει.

Πριν ξεκινήσετε

Ένα ROA για τα ASN του AWS. Πρέπει να εξουσιοδοτεί τα AS16509 και AS14618, και κάθε ASN που ανακοινώνει σήμερα το εύρος, με το μέγιστο μήκος ίσο με το μέγεθος του εύρους που φέρνετε. Στις AWS GovCloud (US) Regions το ROA αναφέρει αντί αυτών το AS8987, και στο AWS European Sovereign Cloud τα AS16509 και AS214101· μέσω IPAM, ορίστε το σε /24 ώστε να μπορείτε να χωρίσετε το μπλοκ. Αν μεταφέρετε το εύρος από το δικό σας δίκτυο, δημιουργήστε πρώτα το ROA για το τρέχον ASN σας, ώστε τίποτα από όσα λειτουργούν τώρα να μη γίνει άκυρο (RPKI και ROA). Ένα ROA μπορεί να χρειαστεί έως 24 ώρες για να φτάσει στο AWS.

Ένα ζεύγος κλειδιών και ένα πιστοποιητικό, φτιαγμένα με OpenSSL 1.0.2 ή νεότερο:

Shell
openssl genpkey -aes256 -algorithm RSA -pkeyopt rsa_keygen_bits:2048 -out private-key.pem
openssl req -new -x509 -key private-key.pem -days 365 | tr -d "\n" > certificate.pem

Το πιστοποιητικό στην εγγραφή μητρώου, σε μία γραμμή, μαζί με τους δείκτες BEGIN και END. Το πού μπαίνει εξαρτάται από το μητρώο, και το πεδίο έχει σημασία:

ΜητρώοΠού μπαίνει το πιστοποιητικό
RIPE NCCΜια νέα γραμμή descr στο αντικείμενο inetnum. Όχι remarks
ARINΣτα Public Comments του δικτύου, όχι του οργανισμού
APNICremarks στο αντικείμενο inetnum

Μπορείτε να αφαιρέσετε το πιστοποιητικό μόλις ολοκληρωθεί η παροχή.

Βήμα προς βήμα

01Υπογράψτε το μήνυμα εξουσιοδότησης. Το μήνυμα αναφέρει τον λογαριασμό σας, το εύρος και μια ημερομηνία λήξης:

Shell
text_message="1|aws|123456789012|203.0.113.0/24|20261231|SHA256|RSAPSS"
signed_message=$(echo -n $text_message | openssl dgst -sha256 -sigopt rsa_padding_mode:pss -sigopt rsa_pss_saltlen:-1 -sign private-key.pem -keyform PEM | openssl base64 | tr -- '+=/' '-_~' | tr -d "\n")

02Εντάξτε το εύρος στη Region όπου θα το χρησιμοποιήσετε:

Shell
aws ec2 provision-byoip-cidr --cidr 203.0.113.0/24 \
  --cidr-authorization-context Message="$text_message",Signature="$signed_message" \
  --region eu-central-1

03Περιμένετε. Η κατάσταση περνά από pending-provision σε provisioned. Το AWS αναφέρει ότι τα περισσότερα εύρη ολοκληρώνονται εντός δύο ωρών και κάποια χρειάζονται έως μία εβδομάδα: το aws ec2 describe-byoip-cidrs --max-results 5 --region eu-central-1 δείχνει πού βρίσκεται.

04Προετοιμάστε, και μετά αλλάξτε. Για να μείνει σύντομος ο χρόνος διακοπής, εκχωρήστε διευθύνσεις Elastic IP από το νέο pool και συνδέστε τις πριν ανακοινωθεί το εύρος. Το aws ec2 describe-public-ipv4-pools δίνει το ID του pool, και το aws ec2 allocate-address --public-ipv4-pool <pool-id> παίρνει μια διεύθυνση από αυτό.

05Ανακοινώστε. Σταματήστε να ανακοινώνετε το εύρος οπουδήποτε αλλού, και στη συνέχεια:

Shell
aws ec2 advertise-byoip-cidr --cidr 203.0.113.0/24 --region eu-central-1

Το AWS συνιστά να αποσύρετε πρώτα το εύρος από άλλες τοποθεσίες: όσο κάποιος άλλος το ανακοινώνει, το AWS δεν μπορεί να υποσχεθεί ότι η κίνηση γι' αυτό φτάνει στο δίκτυό του. Πρέπει να ανακοινώσετε ακριβώς το εύρος που εντάξατε, ποτέ ένα μέρος του.

06Ελέγξτε το από έξω. Το whois -r -h whois.ripe.net 203.0.113.0/24 | grep descr θα πρέπει να δείχνει το πιστοποιητικό, και ο validator του RIPEstat θα πρέπει να χαρακτηρίζει το εύρος έγκυρο για το AS16509: curl "https://stat.ripe.net/data/rpki-validation/data.json?resource=16509&prefix=203.0.113.0/24".

Λάθη που κοστίζουν μια μέρα

  • Το πιστοποιητικό σε λάθος πεδίο. Για το RIPE NCC, το AWS διαβάζει το descr και ρητά όχι το remarks. Το Azure θέλει το αντίθετο, οπότε ένα μπλοκ που μετακινείται μεταξύ των δύο cloud χρειάζεται αλλαγή στην εγγραφή.
  • Ένα ROA με λάθος μέγιστο μήκος. Το AWS απαιτεί να ισούται με το μέγεθος του εύρους που φέρνετε, ή /24 μέσω IPAM. Ένα μέγιστο μήκος πιο συγκεκριμένο από το εύρος που φέρνετε προκαλεί sub-prefix hijacks, και το AWS διατηρεί το δικαίωμα να σταματήσει να ανακοινώνει ένα εύρος του οποίου τα ROA δεν ακολουθούν τους κανόνες του.
  • Ανακοίνωση μέρους του εύρους. Το AWS ανακοινώνει ακριβώς ό,τι εντάξατε. Για να χρησιμοποιήσετε μικρότερο εύρος, κάντε deprovision και εντάξτε το ξανά.
  • Δύο δίκτυα που ανακοινώνουν ταυτόχρονα. Η κίνηση μοιράζεται ανάμεσά τους, και το AWS δεν θα αντιμετωπίσει το πρόβλημα.

Το δικό σας ASN

Μέσω του VPC IPAM, το AWS μπορεί να ανακοινώσει το εύρος σας από το δικό σας ASN αντί για το δικό του. Προσθέτετε το ίδιο πιστοποιητικό στην εγγραφή μητρώου του ASN σας (για το RIPE NCC, ως γραμμή descr στο aut-num), δημιουργείτε ένα δεύτερο ROA που αναφέρει το ASN σας, και το AWS συνιστά ένα αντικείμενο ASPA που αναφέρει τα AS16509 και AS14618 ως παρόχους σας: χωρίς αυτά, οι διαδρομές που προωθεί το AWS για εσάς αποτυγχάνουν στον έλεγχο ASPA. Μπορείτε να επαναφέρετε το origin στο ASN του AWS οποιαδήποτε στιγμή, και στο δικό σας το πολύ μία φορά την ώρα.

Αν μισθώνετε το μπλοκ

Ο μισθωμένος χώρος λειτουργεί, αρκεί το μητρώο να δείχνει ότι τον κατέχει οργανισμός. Ο κάτοχος κάνει την πλευρά του μητρώου: το πιστοποιητικό στην εγγραφή inetnum, την οποία μπορεί να επεξεργαστεί μόνο ο maintainer του κατόχου, και το ROA για τα AS16509 και AS14618. Τα υπόλοιπα τα κάνετε εσείς από τον λογαριασμό σας στο AWS.

Πού ταιριάζει η RTM Networks

Μισθώνουμε /24 και μεγαλύτερα από τον δικό μας χώρο διευθύνσεων του RIPE NCC, και πουλάμε μπλοκ στις περιοχές του RIPE NCC, του ARIN και του APNIC. Για χώρο που μισθώνετε από εμάς, προσθέτουμε το πιστοποιητικό σας για το AWS στην εγγραφή μητρώου και δημιουργούμε το ROA για τα ASN του AWS, ώστε το μόνο βήμα που σας μένει να είναι η παροχή (μίσθωση IPv4). Αν χρειάζεστε λιγότερες από 256 διευθύνσεις σε ένα instance EC2, μπορούμε να τις παραδώσουμε μέσω tunnel (tunnels GRE και WireGuard). Πώς αθροίζεται η ωριαία χρέωση IPv4, και πότε συμφέρει να φέρετε τις δικές σας: το πραγματικό κόστος του IPv4 στο cloud. Άλλοι πάροχοι: οδηγοί BYOIP.

Επικοινωνία

Φέρνετε τις δικές σας IP στο AWS;

Πείτε μας τον πάροχο, την περιοχή και πόσες διευθύνσεις χρειάζεστε. Μισθώνουμε /24 και μεγαλύτερα με έτοιμη τη δουλειά μητρώου για τον πάροχό σας, πουλάμε μπλοκ οριστικά ή παραδίδουμε λιγότερες διευθύνσεις μέσω tunnel. Συνήθως απαντάμε εντός 1-3 εργάσιμων ωρών.

Επικοινωνήστε μαζί μας

Συχνές ερωτήσεις

BYOIP στο AWS: ερωτήσεις

Χρεώνει το AWS για διευθύνσεις BYOIP;

Όχι. Το AWS χρεώνει 0,005 $ την ώρα για κάθε δημόσια διεύθυνση IPv4 που παρέχει, σε χρήση ή αδρανή, και η σελίδα τιμών του αναφέρει ότι οι διευθύνσεις που φέρνετε με BYOIP δεν χρεώνονται. Τα instances, η κίνηση και οι άλλες υπηρεσίες κοστίζουν όσο πάντα.

Πόσο διαρκεί το BYOIP στο AWS;

Το AWS αναφέρει ότι οι περισσότερες παροχές ολοκληρώνονται εντός δύο ωρών και προβλέπει έως μία εβδομάδα για εύρη που ανακοινώνονται δημόσια. Το ROA μπορεί να χρειαστεί έως 24 ώρες για να φτάσει στο AWS, και μια εγγραφή μητρώου που αλλάζει χειροκίνητα μέσω ενός LIR μπορεί να πάρει ημέρες.

Μπορώ να χρησιμοποιήσω το ίδιο μπλοκ σε πολλές AWS Regions;

Κάθε εύρος πηγαίνει σε μία Region τη φορά, αλλά ένα μεγαλύτερο μπλοκ μπορεί να χωριστεί σε /24 και να μεταφερθεί σε διαφορετικές Regions με ένα ROA και μία εγγραφή μητρώου. Μέσω IPAM, ορίστε το μέγιστο μήκος του ROA σε /24 ώστε να μπορεί να διαιρεθεί το μπλοκ.

Μπορεί το AWS να ανακοινώσει το εύρος BYOIP μου από το δικό μου ASN;

Ναι, μέσω της επιλογής bring-your-own-ASN στο VPC IPAM. Τότε χρειάζεστε ένα δεύτερο ROA για το ASN σας και το πιστοποιητικό στην εγγραφή μητρώου του ASN σας, και το AWS συνιστά ένα αντικείμενο ASPA που αναφέρει τα AS16509 και AS14618 ως παρόχους σας.

Μπορώ να φέρω μισθωμένο χώρο στο AWS;

Ναι, αν είναι καταχωρισμένος σε οργανισμό και όχι σε φυσικό πρόσωπο. Ο κάτοχος προσθέτει το πιστοποιητικό σας στην εγγραφή μητρώου και δημιουργεί το ROA για τα ASN του AWS: για χώρο που μισθώνετε από εμάς, κάνουμε και τα δύο.