AWS BYOIP в 2026: $43.80 за IPv4 или собственный блок /24
Коротко (проверено 2026-11-04): AWS берет $0.005 в час за каждый публичный IPv4-адрес, который выдает сам, используется он или простаивает: $3.65 в месяц, $43.80 в год за адрес. За адреса, которые вы приносите сами (BYOIP), такой платы нет. По рыночной медиане октября 2026 года (около $6,500 за /24) купленный /24 окупается примерно за 7 месяцев, если вы используете все 256 адресов, и примерно за 36 месяцев при 50 адресах. Арендованный /24 по средней цене октября 2026 года ($0.49 за IP, около $125 в месяц) выгоднее адресов AWS примерно от 35 публичных IP. Если адресов меньше, продолжайте платить AWS. Рыночные цены - это датированные наблюдения; за предложением обращайтесь на страницу цены на IPv4.
Сколько берет AWS и что убирает BYOIP
С февраля 2024 года AWS выставляет счет за каждый публичный IPv4-адрес. Страница цен Amazon VPC (проверено 2026-11-04) указывает $0.005 в час за используемый адрес и столько же за простаивающий, а об адресах BYOIP пишет: "These public IPv4 addresses are not charged." Бесплатного уровня для публичных IPv4 на странице нет; описанный там бесплатный уровень относится к Amazon VPC IP Address Manager (IPAM).
Месяц в счетах AWS - это 730 часов, значит:
- 1 адрес: $3.65 в месяц, $43.80 в год;
- 50 адресов: $182.50 в месяц, $2,190 в год;
- 256 адресов: $934.40 в месяц, $11,212.80 в год.
Последняя строка важнее, чем кажется: после BYOIP AWS разрешает использовать все адреса /24, включая адрес сети и широковещательный (требования EC2 BYOIP). IPAM для BYOIP бесплатен в одном регионе и одном аккаунте; Advanced Tier, нужный для двух и более регионов или аккаунтов, стоит $0.00027 за активный IP в час, то есть около $0.20 в месяц за адрес.
Правила AWS для принесенного диапазона
Из документации EC2 BYOIP, проверено 2026-11-04:
- Реестр. Диапазон должен быть зарегистрирован в ARIN, RIPE NCC или APNIC на компанию или организацию, а не на физическое лицо. LACNIC и AFRINIC в этом списке нет.
- Размер. Наименьший диапазон IPv4 - /24. Принести /25 нельзя.
- ROA. Route Origin Authorization для ASN Amazon 16509 и 14618 с максимальной длиной, равной размеру диапазона (IPAM требует /24). Сначала создайте ROA для вашего текущего ASN, иначе существующие маршруты могут сломаться. Для European Sovereign Cloud нужны ASN 16509 и 214101.
- Доказательство контроля. Самоподписанный сертификат X.509 в записи реестра (в RIPE - новая строка
descrв объектеinetnum, неremarks) или метод DNS TXT через IPAM. - Репутация. AWS "might investigate the reputation" и может отказать диапазону с плохой историей. Проверьте блок до покупки: смотрите нашу проверку IPv4 по черным спискам.
- Ограничения. Пять диапазонов BYOIP на регион на аккаунт (больше - по запросу), каждый диапазон одновременно только в одном регионе. Большая часть provisioning завершается за два часа; AWS оставляет себе до недели.
Проверьте диапазон до старта: byoip_check.js
Скрипт читает только публичные данные (RIPEstat и RDAP, аккаунт AWS не нужен) и отвечает на два вопроса: готов ли префикс к provisioning и с какого числа публичных IP собственный /24 дешевле AWS. Передайте ему префиксы или ASN. Сохраните как 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
Вывод: запуск на облачном сервере DCXV, Bun 1.4.4, 2026-11-04 (наш собственный AS204057; остальные четыре префикса дали тот же результат, что и первый):
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
Наши префиксы закономерно не готовы: их анонсирует только AS204057, и у них нет ROA для Amazon и сертификата. invalid_asn для 16509 и 14618 - ровно то, что вы увидите до шага 3, а valid - то, что нужно после него. Ценовые константы датированы в начале скрипта: замените их, когда получите предложение.
Купить, арендовать или дальше платить AWS
| Публичных IPv4 в AWS | Самый дешевый путь (цены октября 2026) | На что обратить внимание |
|---|---|---|
| Меньше примерно 35 | Оставить адреса AWS | Простаивающий Elastic IP стоит те же $0.005 в час |
| Примерно 35-100 | Арендовать /24 и принести его | Арендодатель должен создать ROA для Amazon и сертификат |
| Примерно 100-256 | Купить /24 | Окупаемость 7-18 месяцев; блок остается активом |
| Несколько регионов | Купить /22 или больше и разделить на /24 | Один ROA и одна запись покрывают все части |
| Планируете уйти из AWS | Купить | Блок уходит с вами, адреса AWS - нет |
Таблица опирается на данные октября 2026 из скрипта: 90-дневная медиана ip4.market - $25.40 за IP по 80 продажам /24 до 2026-10-26, средняя цена аренды /24 по всем регионам от IPv4Center - $0.49 за IP в месяц (страница обновлена 2026-10-28). Для покупки нужен LIR или спонсирующий LIR и комиссия брокера; опубликованная комиссия DCXV за сделку с /24 - EUR 2.00 за IP. После трансфера в RIPE блок нельзя передать повторно в течение 24 месяцев, но использовать его в AWS это не мешает. Сравните оба пути в статье аренда или покупка IPv4.
Два практических момента. При аренде BYOIP работает, только если арендодатель согласен добавить ASN Amazon в ROA и ваш сертификат в запись: спросите до подписания. А если вы еще и платите за поддержку AWS, помните, что она считается как доля всего счета, включая плату за IPv4, как показывает наш гайд по поддержке и биллингу AWS.
Где здесь DCXV
DCXV - брокер IPv4 в регионах RIPE, ARIN и APNIC: мы найдем чистый /24 для покупки или аренды, проверим его историю и проведем трансфер, чтобы шаги с ROA и сертификатом начались, как только блок будет на вас. Напишите, сколько адресов вы используете в AWS и в каких регионах, через IPv4-раздел DCXV или на ipv4@dcxv.com.
