AWS BYOIP 2026: $43.80 pro IPv4 oder ein eigenes /24
Kurz gesagt (geprüft am 2026-11-04): AWS berechnet $0,005 pro Stunde für jede öffentliche IPv4-Adresse, die AWS selbst stellt, ob genutzt oder ungenutzt: $3,65 im Monat, $43,80 im Jahr pro Adresse. Für Adressen, die Sie selbst mitbringen (BYOIP), fällt diese Gebühr nicht an. Beim Marktmedian vom Oktober 2026 (etwa $6.500 für ein /24) hat sich ein gekauftes /24 nach etwa 7 Monaten bezahlt gemacht, wenn Sie alle 256 Adressen nutzen, bei 50 Adressen nach etwa 36 Monaten. Ein gemietetes /24 zum Durchschnitt vom Oktober 2026 ($0,49 pro IP, etwa $125 im Monat) ist ab etwa 35 öffentlichen IPs günstiger als AWS-Adressen. Darunter zahlen Sie besser weiter an AWS. Marktpreise sind datierte Beobachtungen; für ein Angebot siehe IPv4-Preise.
Was AWS berechnet und was BYOIP wegnimmt
Seit Februar 2024 berechnet AWS jede öffentliche IPv4-Adresse. Die Preisseite von Amazon VPC (geprüft am 2026-11-04) nennt $0,005 pro Stunde für eine genutzte und dieselben $0,005 für eine ungenutzte Adresse und schreibt über BYOIP-Adressen: "These public IPv4 addresses are not charged." Ein Free Tier für öffentliche IPv4 nennt die Seite nicht; das dort beschriebene Free Tier gilt für Amazon VPC IP Address Manager (IPAM).
Ein Monat hat in der AWS-Abrechnung 730 Stunden, also:
- 1 Adresse: $3,65 im Monat, $43,80 im Jahr;
- 50 Adressen: $182,50 im Monat, $2.190 im Jahr;
- 256 Adressen: $934,40 im Monat, $11.212,80 im Jahr.
Die letzte Zeile zählt mehr, als es scheint: Nach BYOIP dürfen Sie bei AWS jede Adresse eines /24 nutzen, auch Netz- und Broadcast-Adresse (EC2-BYOIP-Anforderungen). IPAM ist für BYOIP in einer Region und einem Konto kostenlos; das Advanced Tier, nötig ab zwei Regionen oder Konten, kostet $0,00027 pro aktiver IP und Stunde, etwa $0,20 im Monat pro Adresse.
Die Regeln von AWS für einen mitgebrachten Bereich
Aus der EC2-BYOIP-Dokumentation, geprüft am 2026-11-04:
- Registry. Der Bereich muss bei ARIN, RIPE NCC oder APNIC registriert sein, auf ein Unternehmen oder eine Institution, nicht auf eine Person. LACNIC und AFRINIC stehen nicht auf der Liste.
- Größe. Der kleinste IPv4-Bereich ist ein /24. Ein /25 können Sie nicht mitbringen.
- ROA. Eine Route Origin Authorization für die Amazon-ASNs 16509 und 14618, mit maximaler Länge gleich dem mitgebrachten Bereich (IPAM verlangt /24). Legen Sie zuerst eine ROA für Ihre heutige Origin-ASN an, sonst können bestehende Routen brechen. Die European Sovereign Cloud nutzt stattdessen die ASNs 16509 und 214101.
- Kontrollnachweis. Ein selbstsigniertes X.509-Zertifikat im Registry-Eintrag (bei RIPE: eine neue
descr-Zeile iminetnum, nichtremarks) oder die DNS-TXT-Methode von IPAM. - Reputation. AWS "might investigate the reputation" und kann einen Bereich mit schlechter Historie ablehnen. Prüfen Sie einen Block vor dem Kauf: siehe unseren IPv4-Blacklist-Check.
- Limits. Fünf BYOIP-Bereiche pro Region und Konto (mehr auf Anfrage), jeder Bereich in nur einer Region zugleich. Das meiste Provisioning ist in zwei Stunden fertig; AWS lässt sich bis zu einer Woche Zeit.
Bereich vorab prüfen: byoip_check.js
Das Skript liest nur öffentliche Daten (RIPEstat und RDAP, kein AWS-Konto) und beantwortet zwei Fragen: Ist das Präfix bereit fürs Provisioning, und ab wie vielen öffentlichen IPs schlägt ein /24 den AWS-Preis? Übergeben Sie Präfixe oder eine ASN. Speichern Sie es als byoip_check.js:
// byoip_check.js - is a prefix ready for AWS BYOIP, and when does a /24 beat AWS public IPv4?
// usage: bun byoip_check.js <prefix | ASN> [prefix ...] e.g. bun byoip_check.js AS204057
// Public data only (RIPEstat, RDAP), no AWS account needed.
const AWS_IP_HOUR = 0.005 // aws.amazon.com/vpc/pricing/, in-use or idle, checked 2026-11-04
const BUY_IP = 25.40 // ip4.market /24 90-day median per IP, 80 sales to 2026-10-26
const LEASE_IP_MONTH = 0.49 // IPv4Center all-region /24 lease average, page updated 2026-10-28
const AMAZON = [16509, 14618] // ASNs the ROA must authorize (EC2 BYOIP prerequisites)
const stat = async (call, q) =>
(await (await fetch(`https://stat.ripe.net/data/${call}/data.json?${q}`)).json()).data
let prefixes = process.argv.slice(2)
if (prefixes.length === 1 && /^as\d+$/i.test(prefixes[0])) {
const d = await stat('announced-prefixes', `resource=${prefixes[0]}`)
prefixes = d.prefixes.map(p => p.prefix).filter(p => p.includes('.')).sort().slice(0, 5)
}
for (const pfx of prefixes) {
const len = +pfx.split('/')[1]
const rdap = await (await fetch(`https://rdap.org/ip/${pfx}`)).json().catch(() => ({}))
const raw = JSON.stringify(rdap)
const origins = (await stat('prefix-overview', `resource=${pfx}`)).asns.map(a => a.asn)
const rpki = {}
for (const asn of [...origins, ...AMAZON])
rpki[asn] = (await stat('rpki-validation', `resource=AS${asn}&prefix=${pfx}`)).status
const ok = len <= 24 && AMAZON.every(a => rpki[a] === 'valid') && raw.includes('BEGIN CERTIFICATE')
console.log(`\n${pfx} ${rdap.handle ?? '?'} ${rdap.type ?? '?'} ${rdap.country ?? ''}`)
console.log(` size /${len} (AWS takes /24 or larger): ${len <= 24 ? 'ok' : 'too small'}`)
for (const [asn, s] of Object.entries(rpki))
console.log(` ROA AS${asn}${AMAZON.includes(+asn) ? ' (Amazon)' : ' (origin today)'}: ${s}`)
console.log(` X.509 certificate in the registry record: ${raw.includes('BEGIN CERTIFICATE') ? 'yes' : 'no'}`)
console.log(` ready to provision: ${ok ? 'yes' : 'no'}`)
}
// Cost: AWS-provided public IPv4 vs a /24 brought in (BYOIP addresses carry no AWS IPv4 charge)
const awsMonth = n => n * AWS_IP_HOUR * 730
const buy = 256 * BUY_IP, lease = 256 * LEASE_IP_MONTH
const usd = v => '$' + Math.round(v).toLocaleString('en-US')
console.log(`\npublic IPs | AWS per month | AWS per year | lease /24 per month | buy /24 pays back in`)
for (const n of [10, 35, 50, 100, 256])
console.log(`${String(n).padStart(10)} | ${usd(awsMonth(n)).padStart(13)} | ${usd(awsMonth(n) * 12).padStart(12)} | ${
(usd(lease) + (awsMonth(n) > lease ? ' (cheaper)' : ' (dearer)')).padStart(19)} | ${
(buy / awsMonth(n)).toFixed(1).padStart(6)} months`)
console.log(`/24 to buy: ${usd(buy)} once (+ broker fee, LIR or sponsoring LIR); lease: ${usd(lease)} a month`)
bun byoip_check.js AS204057
Ausgabe, ausgeführt auf einem DCXV Cloud-Server mit Bun 1.4.4 am 2026-11-04 (unser eigenes AS204057; die anderen vier Präfixe lieferten dasselbe Ergebnis wie das erste):
116.204.153.0/24 116.204.153.0 - 116.204.153.255 ALLOCATED PA CZ
size /24 (AWS takes /24 or larger): ok
ROA AS14618 (Amazon): invalid_asn
ROA AS16509 (Amazon): invalid_asn
ROA AS204057 (origin today): valid
X.509 certificate in the registry record: no
ready to provision: no
public IPs | AWS per month | AWS per year | lease /24 per month | buy /24 pays back in
10 | $37 | $438 | $125 (dearer) | 178.1 months
35 | $128 | $1,533 | $125 (cheaper) | 50.9 months
50 | $183 | $2,190 | $125 (cheaper) | 35.6 months
100 | $365 | $4,380 | $125 (cheaper) | 17.8 months
256 | $934 | $11,213 | $125 (cheaper) | 7.0 months
/24 to buy: $6,502 once (+ broker fee, LIR or sponsoring LIR); lease: $125 a month
Unsere Präfixe sind zu Recht nicht bereit: Sie werden nur von AS204057 angekündigt und haben weder eine Amazon-ROA noch ein Zertifikat. invalid_asn für 16509 und 14618 sehen Sie genau vor Schritt 3, valid brauchen Sie danach. Die Preiskonstanten stehen datiert oben im Skript: Ersetzen Sie sie, sobald Sie ein Angebot haben.
Kaufen, mieten oder weiter an AWS zahlen
| Öffentliche IPv4 bei AWS | Günstigster Weg (Preise Oktober 2026) | Worauf achten |
|---|---|---|
| Unter etwa 35 | AWS-Adressen behalten | Ungenutzte Elastic IPs kosten dieselben $0,005 pro Stunde |
| Etwa 35 bis 100 | Ein /24 mieten und mitbringen | Der Vermieter muss Amazon-ROA und Zertifikat anlegen |
| Etwa 100 bis 256 | Ein /24 kaufen | Amortisation in 7 bis 18 Monaten; der Block bleibt ein Wert |
| Mehrere Regionen | Ein /22 oder größer kaufen, in /24 teilen | Eine ROA und ein Eintrag decken alle ab |
| AWS später verlassen | Kaufen | Der Block zieht mit um, AWS-Adressen nicht |
Die Tabelle nutzt die Zahlen vom Oktober 2026 aus dem Skript: den 90-Tage-Median von ip4.market mit $25,40 pro IP aus 80 /24-Verkäufen bis 2026-10-26 und den regionsübergreifenden Mietdurchschnitt für /24 von IPv4Center mit $0,49 pro IP und Monat (Seite aktualisiert 2026-10-28). Ein Kauf braucht außerdem einen LIR oder sponsernden LIR und eine Maklergebühr; die veröffentlichte Gebühr von DCXV für ein /24-Geschäft beträgt EUR 2,00 pro IP. Nach einem RIPE-Transfer darf der Block 24 Monate nicht weiter übertragen werden, die Nutzung bei AWS hindert das nicht. Beide Wege vergleicht IPv4 mieten oder kaufen.
Zwei praktische Punkte. Bei einer Miete funktioniert BYOIP nur, wenn der Vermieter die Amazon-ASNs in die ROA und Ihr Zertifikat in den Eintrag aufnimmt: Fragen Sie vor der Unterschrift. Und wenn Sie auch AWS-Support bezahlen: Er ist ein Anteil an der gesamten Rechnung, IPv4-Gebühren eingeschlossen, wie unser Guide zu AWS-Support und Abrechnung zeigt.
Wo DCXV ins Spiel kommt
DCXV vermittelt IPv4 in den Regionen RIPE, ARIN und APNIC: Wir finden ein sauberes /24 zum Kauf oder zur Miete, prüfen seine Historie und wickeln den Transfer ab, damit ROA und Zertifikat starten können, sobald der Block auf Sie läuft. Schreiben Sie uns, wie viele Adressen Sie bei AWS in welchen Regionen nutzen, über den IPv4-Bereich von DCXV oder an ipv4@dcxv.com.
