IPv4 2026 жылы әлі де инвестиция ма? Алымнан кейінгі табыс
Қысқаша (2026-11-06 тексерілді): иә, бағаға бәс емес, табыс әкелетін актив ретінде. ip4.market 90 күндік медианасымен IP үшін $25.25 (индекс 2026-11-02 жаңартылған) сатып алынған /24 блогы шамамен $6,464 тұрады. IPv4Center орташа жалдау бағасымен, айына IP үшін $0.53, ол жылына шамамен $1,628 әкеледі: 25.2% жалпы табыс. Қалғанын тізілім шешеді. Сіз онсыз да төлейтін LIR ішінде бұл таза табыс та болады; ARIN-де 2027 жылғы алымнан кейін 20.7% қалады; тек осы блок үшін ашылған жаңа RIPE LIR-де EUR 1,894 жарна оны жылына 7.7% шығынға айналдырады. /22 блогы өз LIR-ін ұстауға жеткілікті табыс табады. Барлық сандар күні көрсетілген бақылаулар; баға есебі үшін IPv4 бағалары бетін қараңыз.
2025 жылғы құлдыраудан кейін не өзгерді
Алыпсатарлық сыйақы жоқ. 2026 жылғы шілдедегі нарық жазбаларымызда /24 IP үшін шамамен $30, ал жалдау айына $0.40 шамасында болды: 16% жалпы табыс. 2026 жылғы қарашаға дейін сатып алу бағасы жалдаудан көбірек түсті, сондықтан сол есеп 25.2% береді. Ірі блоктар адрес есебімен әлі де ең арзан: ip4.market индексі /22 үшін $19.00, /20 үшін $15.97 және /16 үшін $12.62 (тек екі сату) 90 күндік медианаларын көрсетеді. 2026 жылғы сатып алушы тек өсетін бағаға емес, табысқа төлейді.
Тұрақты шығындар керісінше жаққа қозғалды. 2027 жылдан бастап RIPE NCC RIPE-867 бойынша әр LIR шоты үшін EUR 1,894 алады, IP немесе трансфер үшін төлем жоқ, кіру жарнасы EUR 1,000 (2027 жарна схемасында не өзгерді қараңыз). 2026 жылғы 29 қыркүйектен бастап RIPE NCC қазіргі мүшелерге қосымша LIR шоттарын ашуға уақытша рұқсат бермейді (RIPE төлем беті, 2026-11-06 оқылды), сондықтан мүше блокты жаңа LIR-ге "қоя" алмайды. 2026 жылғы 19 сәуірде бекітілген ARIN 2027 тарифі /24 үшін жылына $288.75 (3X-Small) және /22 дейін $577.50 (2X-Small), сондай-ақ /24 трансфері үшін алушыдан бір реттік $187.50 алымды қамтиды.
Өзіңіз өлшеңіз: ipv4_asset.js
Скрипт әр блок өлшемінің өтімділігін және блоктардың бір иеде қанша уақыт тұратынын көру үшін RIPE NCC-тің IPv4 трансферлерінің ашық журналын оқиды. Содан кейін ол ЕОБ еуро бағамымен /24 және /22 үшін тізілімге байланысты жылдық таза табысты есептейді. Бағалар файл басындағы күні көрсетілген тұрақтылар: баға ұсынысын алғанда оларды өзгертіңіз. ipv4_asset.js ретінде сақтаңыз:
// ipv4_asset.js - is an IPv4 block still an investment? Liquidity from RIPE's own transfer log,
// then net lease yield after registry fees for a /24 and a /22.
// usage: bun ipv4_asset.js [transfers.json] (downloads RIPE's log when no file is given)
const LOG = 'https://www-static.ripe.net/dynamic/table-of-transfers/ipv4/transfers-allocations.json'
const BUY = { 24: 25.25, 22: 19.00 } // ip4.market price index, 90-day median $/IP, updated 2026-11-02
const LEASE = { 24: 0.53, 22: 0.58 } // IPv4Center lease page, avg $/IP/month, read 2026-11-06
const RIPE_LIR_EUR = 1894 // RIPE-867: annual fee per LIR account from 2027
const ARIN_RSP = { 24: 288.75, 22: 577.50 } // ARIN 2027 fee schedule, 3X-Small / 2X-Small
const file = process.argv[2]
const log = file ? await Bun.file(file).json() : await (await fetch(LOG)).json()
const ecb = await (await fetch('https://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml')).text()
const usdPerEur = +ecb.match(/currency='USD' rate='([\d.]+)'/)[1]
const ecbDate = ecb.match(/time='([\d-]+)'/)[1]
const ip = s => s.split('.').reduce((a, o) => a * 256 + +o, 0)
const size = b => b.includes('/') ? 2 ** (32 - +b.split('/')[1]) : ip(b.split('-')[1].trim()) - ip(b.split('-')[0].trim()) + 1
const day = d => { const [dd, mm, yy] = d.split('/'); return Date.UTC(+yy, mm - 1, +dd) }
const bucket = n => n <= 256 ? '/24' : n <= 1024 ? '/23-/22' : n <= 4096 ? '/21-/20' : n <= 32768 ? '/19-/17' : '/16+'
const rows = log.transfers.map(t => ({ ...t, ts: day(t.date), blocks: t.transferred_blocks.split(',').map(s => s.trim()) }))
const last = new Date(Math.max(...rows.map(r => r.ts))).toISOString().slice(0, 10)
console.log(`RIPE NCC IPv4 transfer log: ${rows.length} entries, newest ${last}`)
// 1. Liquidity: market (POLICY) transfers by block size, 2025 vs 2026 to date
const year = (r, y) => new Date(r.ts).getUTCFullYear() === y
const stats = y => {
const s = {}
for (const r of rows.filter(r => r.transferType === 'POLICY' && year(r, y)))
for (const b of r.blocks) {
const k = bucket(size(b)), o = (s[k] ??= { n: 0, ips: 0, temp: 0 })
o.n++; o.ips += size(b); if (r.transferStatus === 'TEMPORARY') o.temp++
}
return s
}
const s25 = stats(2025), s26 = stats(2026)
console.log('\nblock size | 2025 blocks | 2026 blocks (to ' + last + ') | 2026 addresses | temporary')
for (const k of ['/24', '/23-/22', '/21-/20', '/19-/17', '/16+'])
console.log(`${k.padEnd(10)} | ${String(s25[k]?.n ?? 0).padStart(11)} | ${String(s26[k]?.n ?? 0).padStart(24)} | ${
(s26[k]?.ips ?? 0).toLocaleString('en-US').padStart(14)} | ${String(s26[k]?.temp ?? 0).padStart(9)}`)
// 2. Holding period: the same block sold on again as a whole (permanent market transfers)
const seen = new Map(), holds = []
for (const r of rows.filter(r => r.transferType === 'POLICY' && r.transferStatus === 'PERMANENT').sort((a, b) => a.ts - b.ts))
for (const b of r.blocks) {
if (seen.has(b)) holds.push((r.ts - seen.get(b)) / 864e5)
seen.set(b, r.ts)
}
holds.sort((a, b) => a - b)
const med = holds[Math.floor(holds.length / 2)]
console.log(`\nblocks sold on again whole: ${holds.length} of ${seen.size} (${(100 * holds.length / seen.size).toFixed(1)}%)`)
console.log(`median time between the two sales: ${(med / 365.25).toFixed(1)} years; within 24 months: ${holds.filter(d => d < 730).length}`)
// 3. Net lease yield per year on the purchase price, by registry and occupancy
const usd = v => (v < 0 ? '-$' : '$') + Math.abs(Math.round(v)).toLocaleString('en-US')
console.log(`\nEUR 1 = $${usdPerEur} (ECB, ${ecbDate}); RIPE LIR fee EUR ${RIPE_LIR_EUR} = ${usd(RIPE_LIR_EUR * usdPerEur)}`)
console.log('block | price | lease/yr | held in | fee/yr | net yield 100% | 70% let')
for (const p of [24, 22]) {
const n = 2 ** (32 - p), cost = n * BUY[p], gross = n * LEASE[p] * 12
const fees = { 'a new RIPE LIR': RIPE_LIR_EUR * usdPerEur, 'ARIN (3X/2X-Small)': ARIN_RSP[p], 'an existing LIR': 0 }
const y = (f, occ) => ((100 * (gross * occ - f) / cost).toFixed(1) + '%').padStart(occ === 1 ? 14 : 7)
for (const [k, f] of Object.entries(fees))
console.log(`/${p} | ${usd(cost).padStart(7)} | ${usd(gross).padStart(8)} | ${k.padEnd(20)} | ${usd(f).padStart(6)} | ${y(f, 1)} | ${y(f, 0.7)}`)
}
console.log('fees per year; lease = list average, before the lessor\'s abuse handling and any broker or platform cut')
bun ipv4_asset.js
Нәтиже: DCXV бұлттық серверінде іске қосылды, Bun 1.4.4, 2026-11-06 (RIPE журналы 2026-11-05 дейін):
RIPE NCC IPv4 transfer log: 43896 entries, newest 2026-11-05
block size | 2025 blocks | 2026 blocks (to 2026-11-05) | 2026 addresses | temporary
/24 | 1419 | 1010 | 258,560 | 43
/23-/22 | 1622 | 997 | 850,944 | 21
/21-/20 | 453 | 334 | 935,936 | 5
/19-/17 | 214 | 216 | 2,981,888 | 10
/16+ | 53 | 48 | 6,291,456 | 2
blocks sold on again whole: 5041 of 32361 (15.6%)
median time between the two sales: 3.6 years; within 24 months: 0
EUR 1 = $1.1224 (ECB, 2026-11-05); RIPE LIR fee EUR 1894 = $2,126
block | price | lease/yr | held in | fee/yr | net yield 100% | 70% let
/24 | $6,464 | $1,628 | a new RIPE LIR | $2,126 | -7.7% | -15.3%
/24 | $6,464 | $1,628 | ARIN (3X/2X-Small) | $289 | 20.7% | 13.2%
/24 | $6,464 | $1,628 | an existing LIR | $0 | 25.2% | 17.6%
/22 | $19,456 | $7,127 | a new RIPE LIR | $2,126 | 25.7% | 14.7%
/22 | $19,456 | $7,127 | ARIN (3X/2X-Small) | $578 | 33.7% | 22.7%
/22 | $19,456 | $7,127 | an existing LIR | $0 | 36.6% | 25.6%
fees per year; lease = list average, before the lessor's abuse handling and any broker or platform cut
Сандар не айтады
- Шағын блоктардың тағдырын тізілім алымы шешеді. /24 прейскурант бағасымен жылына $1,628 әкеледі. Жаңа RIPE LIR $2,126 тұрады, сондықтан блок толық жалға берілсе де шығынды. Сол /24 ARIN-де 20.7% сақтайды, ал сізде бар LIR ішінде толық 25.2%. /22 блогы RIPE LIR-ін өзі ұстайды: толық жалда 25.7% таза.
- Жүктеме табыстың басты тәуекелі. 70% жалда болғанда, бар LIR-дегі /24 25.2%-дан 17.6%-ға, ал жаңа LIR-дегі /22 25.7%-дан 14.7%-ға түседі. Жалдаушылар арасындағы бір ай жалдау ақысыз бір ай алым дегенді білдіреді.
- Өтімді блоктар шағын блоктар. 2026 жылғы 1 қаңтардан 5 қарашаға дейін RIPE журналы иесін ауыстырған 1,010 /24 блогын және 997 /23 немесе /22 блогын көрсетеді, ал /16 және одан ірі блоктар 48. /24 бүкіл 2025 жылдағыдан (1,419) аз ауысты, ал /19-дан /17-ге дейінгі блоктар 2025 жылғы көрсеткіштен асып кетті (214-ке қарсы 216). Бір трансферде бірнеше блок болуы мүмкін; скрипт әрқайсысын санайды.
- Иелер блоктарды жылдар бойы ұстайды. RIPE нарығында тұтас сатылған 32,361 блоктың 5,041-і (15.6%) кейін сол блок ретінде қайта сатылды, медиана бойынша бірінші сатудан 3.6 жыл өткен соң, ал 24 ай ішінде бірде-біреуі сатылмады: трансферден кейінгі RIPE тыйымы деректерде көрінеді. Шығуды кемінде екі жыл алдын ала жоспарлаңыз.
- Тізілім жалдаулардың көбін көрсетпейді. 2026 жылы ауысқан 2,605 блоктың тек 81-і RIPE уақытша трансферлері болды. Жалдаулардың көбінде тіркелген иесі жалға беруші болып қалады, сондықтан тізілімнен қанша блок жалға берілгенін санау мүмкін емес.
Табыста көрінбейтін тәуекелдер
| Тәуекел | Активке не істейді | Нені тексеру керек |
|---|---|---|
| Баға | 2025 жылғы түзету ірі блоктарға қатты соқты | Прайспен емес, күні бар медианамен сатып алу |
| IPv6 | Жалдау сұранысын баяу азайтады; dual stack IPv4-ті ұстап тұр | Жалдаушыларыңыз кім және оларға IPv4 не үшін керек |
| Тізілім алымдары | Көлемге қарамай LIR үшін бір RIPE жарнасы | 2027 жылдан бастап блокқа шаққандағы алымыңыз |
| Бедел | Бір жаман жалдаушы блокты қара тізімге енгізуі мүмкін | Сатып алу алдындағы тарих, шарттағы abuse талаптары |
| Шығу | RIPE-де 24 ай тыйым, сатуда брокер комиссиясы | Шығу өлшемі және сатуға болатын күн |
Сатып алмас бұрын IPv4 қара тізімдері бойынша нұсқаулығымыздағы тексерулерден өтіңіз: бірінші күннен тізімде тұрған блок тазартылғанша ештеңе таппайды. Адрестерді өзіңіз пайдаланғыңыз келсе, IPv4 жалдау немесе сатып алу сол есепті жалдаушы тарапынан жасайды.
DCXV арқылы кіру және шығу
Актив оның шығуы қандай болса, сондай құнды. DCXV брокерлік комиссиясын сатушы төлейді: /24 немесе /23 үшін IP-ге EUR 2.00, /22-ден /19-ға дейін EUR 1.00 және /18-ден /14-ке дейін EUR 0.50; сатып алушы эскроу ақысын төлейді. Жоғарыдағы /24 үшін бұл EUR 512, шамамен $575 немесе оның 2026 жылғы қарашадағы бағасының 8.9%-ы (ЕОБ бағамы 2026-11-05); /22 үшін EUR 1,024, шамамен 5.9%. Біз RIPE, ARIN және APNIC аймақтарында сатып алу, жалдау және сатуды сүйемелдейміз және сіздің блогыңызды хостинг пен бұлт клиенттеріне жалға бере аламыз. Блок өлшемі мен тізілімді IPv4 бөліміне немесе ipv4@dcxv.com мекенжайына жіберіңіз.
