Bring your own IP
BYOIP στο Azure: φέρτε τις δικές σας διευθύνσεις IPv4 ως custom IP prefix
Αποδεικνύετε ότι το εύρος είναι δικό σας με ένα ROA που αναφέρει το ASN της Microsoft και ένα πιστοποιητικό στην εγγραφή WHOIS/RDAP του, και στη συνέχεια το εντάσσετε και παράγετε από αυτό public IP prefixes και διευθύνσεις.
Αυτός ο οδηγός ακολουθεί το ενιαίο μοντέλο (unified model), για εύρος που χρησιμοποιείται σε μία περιοχή, μέσω του Azure CLI. Ένα εύρος δεν μπορεί να περάσει στο μοντέλο global/regional, ένα γονικό prefix με περιφερειακά θυγατρικά, χωρίς να ενταχθεί ξανά από την αρχή.
Τι δέχεται το Azure
Από την τεκμηρίωση της Microsoft, την ημέρα που την ελέγξαμε:
- Μέγεθος. Ένα unified prefix «must be between /21 and /24» (σε μετάφραση: «πρέπει να είναι μεταξύ /21 και /24»). Ένα global γονικό είναι επίσης από /21 έως /24, με περιφερειακά θυγατρικά από /22 έως /26.
- Μητρώο και όνομα. Το εύρος «must be owned by you and registered under your name» (σε μετάφραση: «πρέπει να ανήκει σε εσάς και να είναι καταχωρισμένο στο όνομά σας») σε ένα Περιφερειακό Μητρώο Διαδικτύου, μεταξύ των οποίων το ARIN, το RIPE NCC και το APNIC. Τίποτα για καθεστώς PA, PI ή legacy.
- Ποιος κάνει το origin. Η Microsoft, με το AS8075, ή το AS8070 για το US Gov Cloud. Οι σελίδες BYOIP της Microsoft δεν τεκμηριώνουν επιλογή για δικό σας ASN. Η εντολή CLI του βήματος 1,
az network custom-ip prefix create, αναφέρει πράγματι μια παράμετρο--asn, που περιγράφεται μόνο ως «The ASN for CIDR advertising» (σε μετάφραση: «Το ASN για την ανακοίνωση του CIDR»), οπότε ρωτήστε τη Microsoft πριν βασιστείτε σε αυτήν. - Περιοχές. Μία περιοχή ανά prefix, και πέντε prefixes ανά περιοχή εξ ορισμού, περισσότερα κατόπιν αιτήματος.
- Τιμή. «There's no charge to provision or use custom IP prefixes» (σε μετάφραση: «Δεν υπάρχει χρέωση για την παροχή ή τη χρήση custom IP prefixes»), ούτε για τα public IP prefixes και τις διευθύνσεις που παράγονται από αυτά. Η κίνηση χρεώνεται με τις τιμές εξερχόμενης κίνησης προς το διαδίκτυο.
- Χρόνος. Περίπου 30 λεπτά για την παροχή και τρεις έως τέσσερις ώρες για τη θέση σε λειτουργία παγκοσμίως.
- Περιορισμοί. Χωρίς Internet Routing Preference, Global Tier, ExpressRoute Microsoft peering ή Standard v2 public IPs. Το reverse DNS λειτουργεί από δικές σας ζώνες στο Azure DNS, το Windows Server Activation μπορεί να χρειαστεί έως μία εβδομάδα, και ένα εύρος που έχει ενταχθεί δεν μπορεί να αλλάξει subscription.
Πριν ξεκινήσετε
Ένα ROA για το AS8075, με το μήκος του prefix ακριβώς όπως θα το ανακοινώσει η Microsoft και ημερομηνία λήξης που καλύπτει τον χρόνο που θέλετε να ανακοινώνεται (RPKI και ROA). Υπολογίστε τουλάχιστον 24 ώρες για να το δει η Microsoft. Η Microsoft συνιστά επίσης ένα ROA για κάθε ASN που ανακοινώνει σήμερα το εύρος.
Ένα ζεύγος κλειδιών και ένα αυτοϋπογεγραμμένο πιστοποιητικό, φτιαγμένα με OpenSSL:
openssl genrsa -out byoipprivate.key 2048
openssl req -new -x509 -key byoipprivate.key -days 180 | tr -d "\n" > byoippublickey.cerΤο πιστοποιητικό στην εγγραφή WHOIS/RDAP του prefix, μαζί με τους δείκτες BEGIN και END, χωρίς κενά ή αλλαγές γραμμής:
| Μητρώο | Πού μπαίνει το πιστοποιητικό |
|---|---|
| RIPE NCC | remarks στο αντικείμενο inetnum |
| ARIN | Στα Comments της εγγραφής του prefix |
| APNIC | remarks στο αντικείμενο inetnum, μέσω του MyAPNIC |
Ένα υπογεγραμμένο μήνυμα εξουσιοδότησης: το ID του subscription σας, το prefix και την ημερομηνία λήξης του ROA, με αυτή τη σειρά:
byoipauth="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx|203.0.113.0/24|20270430"
byoipauthsigned=$(echo $byoipauth | tr -d "\n" | openssl dgst -sha256 -sign byoipprivate.key -keyform PEM | openssl base64 | tr -d "\n")Η Microsoft δεν ζητά Letter of Authorization ούτε route object.
Βήμα προς βήμα
01Εντάξτε το εύρος, σε ένα υπάρχον resource group. Σε περιοχή με availability zones, κάντε το zone-redundant ή δέστε το σε μία ζώνη:
az network custom-ip prefix create --name byoip-203-0-113-0-24 \
--resource-group byoip-rg --location westeurope --cidr 203.0.113.0/24 --zone 1 2 3 \
--authorization-message "$byoipauth" --signed-message "$byoipauthsigned"02Περιμένετε το Provisioned. Το commissionedState που επιστρέφει το az network custom-ip prefix show περνά από Provisioning σε Provisioned. Ένα πρόωρο ValidationFailed σημαίνει ότι το ROA, το πιστοποιητικό ή το μήνυμα δεν επαληθεύτηκαν: το πεδίο FailedReason λέει ποιο.
03Παράγετε διευθύνσεις. Δημιουργήστε ένα public IP prefix από το εύρος, μετά διευθύνσεις Standard SKU από αυτό, και συνδέστε τις σε VM ή load balancers: δεν ανακοινώνονται ακόμη.
az network public-ip prefix create --name pip-203-0-113-0-28 --resource-group byoip-rg \
--location westeurope --length 28 --custom-ip-prefix-name byoip-203-0-113-0-24 --zone 1 2 304Θέστε το σε λειτουργία (commission). Αν το εύρος είναι ενεργό αλλού, δύο ταυτόχρονες ανακοινώσεις «could potentially create BGP routing instability or traffic loss» (σε μετάφραση: «θα μπορούσαν να προκαλέσουν αστάθεια δρομολόγησης BGP ή απώλεια κίνησης»). Θέστε το πρώτα σε λειτουργία μέσα στην περιοχή (Commission, και μετά την επιλογή μόνο για την περιοχή, στο portal, ή -NoInternetAdvertise στο PowerShell), δοκιμάστε, αποσύρετε την παλιά ανακοίνωση, και μετά θέστε το σε λειτουργία παγκοσμίως:
az network custom-ip prefix update --name byoip-203-0-113-0-24 --resource-group byoip-rg --state commissionΤο εύρος ανακοινώνεται εν μέρει όσο είναι Commissioning, πρώτα από την περιοχή και μετά από το δίκτυο της Microsoft με το AS8075, μέχρι να γίνει Commissioned.
Λάθη που κοστίζουν μια μέρα
- Το πιστοποιητικό στο descr. Για το RIPE NCC, η Microsoft λέει remarks, ενώ το AWS διαβάζει το descr και ρητά όχι τα remarks, οπότε ένα μπλοκ που μετακινείται μεταξύ των δύο cloud χρειάζεται αλλαγή στην εγγραφή του.
- Μια ημερομηνία που δεν ταιριάζει. Η ημερομηνία στο υπογεγραμμένο μήνυμα είναι η ημερομηνία λήξης του ROA, σε μορφή
yyyymmdd: αν δεν υπάρχει, η Microsoft λέει να επιλέξετε την ημερομηνία μέχρι την οποία θέλετε να ανακοινώνεται το εύρος. - Ένα ROA με λάθος μήκος. Μια αναντιστοιχία με το prefix που εντάσσετε αποτυγχάνει ως
InvalidPrefixLengthInROA. - Αποχώρηση με λάθος σειρά. Διαγράψτε κάθε παραγόμενο public IP prefix και μετά κάντε decommission το εύρος (τρεις έως τέσσερις ώρες) πριν αλλάξετε ή διαγράψετε το ROA. Διαφορετικά η Microsoft συνεχίζει να ανακοινώνει ένα εύρος που δεν είναι πλέον εξουσιοδοτημένη να ανακοινώνει.
Αν μισθώνετε το μπλοκ
Ο κανόνας της Microsoft είναι το εμπόδιο: το εύρος «must be owned by you and registered under your name» (σε μετάφραση: «πρέπει να ανήκει σε εσάς και να είναι καταχωρισμένο στο όνομά σας»). Ένα μπλοκ καταχωρισμένο μόνο στον εκμισθωτή δεν το πληροί όπως είναι διατυπωμένο, και η Microsoft δεν λέει αν μετράει μια εκχώρηση σε εσάς μέσα στο allocation του κατόχου, οπότε ρωτήστε τον κάτοχο και τη Microsoft πριν υπογράψετε. Ο κάτοχος δημιουργεί τότε το ROA για το AS8075 και προσθέτει το πιστοποιητικό σας στα remarks της εγγραφής. Και το reverse DNS χρειάζεται τον κάτοχο: το Azure το εξυπηρετεί μόνο από μια reverse zone που φιλοξενείτε στο Azure DNS, την οποία ο κάτοχος σας εκχωρεί (delegation). Δεν χρειάζεται Letter of Authorization.
Πού ταιριάζει η RTM Networks
Μισθώνουμε /24 και μεγαλύτερα από τον δικό μας χώρο διευθύνσεων του RIPE NCC, και πουλάμε μπλοκ στις περιοχές του RIPE NCC, του ARIN και του APNIC. Για χώρο που μισθώνετε από εμάς, καταχωρίζουμε την εκχώρηση στον οργανισμό σας, δημιουργούμε το ROA για το AS8075 και προσθέτουμε το πιστοποιητικό σας στην εγγραφή μητρώου (μίσθωση IPv4). Αν η Microsoft θέλει κάτι περισσότερο από μια εκχώρηση στο όνομά σας, η αγορά του μπλοκ το λύνει (αγορά IPv4). Αν δεν λειτουργείτε δικό σας LIR, γινόμαστε χορηγός LIR για χώρο PI και legacy και για αριθμούς AS (χορηγία). Για λιγότερες από 256 διευθύνσεις σε ένα VM του Azure, ανακοινώνουμε ένα μπλοκ και το παραδίδουμε μέσω WireGuard, αφού το Azure μπλοκάρει το GRE, σε οποιοδήποτε μέγεθος έως και μία μόνο διεύθυνση (tunnels WireGuard). Άλλοι πάροχοι: οδηγοί BYOIP.
Επικοινωνία
Φέρνετε τις δικές σας IP στο Azure;
Πείτε μας τον πάροχο, την περιοχή και πόσες διευθύνσεις χρειάζεστε. Μισθώνουμε /24 και μεγαλύτερα με έτοιμη τη δουλειά μητρώου για τον πάροχό σας, πουλάμε μπλοκ οριστικά ή παραδίδουμε λιγότερες διευθύνσεις μέσω tunnel. Συνήθως απαντάμε εντός 1-3 εργάσιμων ωρών.

