Transfery IPv4 w LACNIC w 2026: zasady, opłaty, rok blokady
Krótka odpowiedź (sprawdzono 2026-11-10): LACNIC dopuszcza transfery IPv4 w obrębie Ameryki Łacińskiej i Karaibów oraz, od lipca 2020, do i z ARIN, APNIC i RIPE NCC. Najmniejszy blok to /24, odbiorca w regionie musi najpierw uzasadnić swoje zapotrzebowanie przed LACNIC, sprzedawca przez rok nie może otrzymać nowych adresów IPv4 od LACNIC, blok, który właśnie został przeniesiony, nie może zostać ponownie przeniesiony przez rok, a przestrzeń przydzielona przez sam LACNIC jest zablokowana na trzy lata. LACNIC pobiera opłatę administracyjną w wysokości US$ 1,037 poniżej /19 i US$ 1,555 od /19 wzwyż. Bloki zarejestrowane przez brazylijski NIC.br lub meksykański NIC México przechodzą przez te rejestry. Ceny adresów są na /ipv4/pricing.
Sprawdzono 2026-11-10. LACNIC: Policy Manual v2.21 (wersja internetowa sekcji 2, IPv4, i sekcji 11, wyczerpanie; LACNIC podaje, że rozstrzyga wersja PDF), transfery wewnątrzregionalne i transfery międzyregionalne (kroki i opłaty), lista oczekujących IPv4, kontakty w sprawie transferów, ogłoszenie inter-RIR z 2020-07-21 oraz status propozycji LAC-2023-7 (transfery czasowe: wycofana) i LAC-2020-1 (IPv6 jako warunek transferu: porzucona). Dane:
transfers_latest.jsonLACNIC (najnowszy wpis 2026-11-06) idelegated-lacnic-extended-latest(z datą 2026-11-10).
Zasady sekcji 2.3.2.18
Sekcja 2.3.2.18 Policy Manual LACNIC to cała polityka transferów i jest krótka. Obejmuje zarówno transfery w obrębie regionu, jak i transfery inter-RIR:
- Minimum /24. Nic mniejszego nie jest przenoszone.
- Odbiorca najpierw uzasadnia. Odbiorca w regionie musi uzasadnić przestrzeń przed LACNIC według zwykłych zasad dla przydziału początkowego lub dodatkowego. Dla ISP wnioskującego o /24 do /22 oznacza to 25% wykorzystane lub potrzebne od razu oraz roczny plan na 50% (sekcja 2.3.3.1.1); organizacja, która już posiada przestrzeń, musi wykazać jej wykorzystanie w 80% (2.3.4). Odbiorca w innym regionie stosuje zasady własnego rejestru.
- Weryfikacja posiadacza. LACNIC (lub drugi RIR) sprawdza, czy sprzedawca jest zarejestrowanym posiadaczem i czy blok nie jest przedmiotem sporu. W obrębie regionu obie strony podpisują dokument prawny transferu.
- Publiczny rejestr. Każdy transfer trafia do publicznego rejestru transferów: data, obie organizacje, adresy oraz, przy transferach inter-RIR, oba rejestry. Nasz skrypt poniżej go odczytuje.
- Sprzedawca czeka rok, zanim znów będzie mógł otrzymać IPv4 od LACNIC (2.3.2.18.5).
- Blok czeka rok, zanim będzie mógł zostać ponownie przeniesiony, w całości lub w części (2.3.2.18.6).
- Przestrzeń od LACNIC czeka trzy lata. Adresy przydzielone lub przypisane przez LACNIC nie mogą być przenoszone przez trzy lata od daty przydziału (2.3.2.18.9); te same trzy lata dotyczą bloków z rezerw na okres wyczerpania (sekcja 11).
- Przestrzeń legacy traci swój status. Blok legacy przeniesiony do regionu przestaje być legacy (2.3.2.18.10).
Nie ma klauzuli dotyczącej dzierżawy. Propozycja transferów czasowych, LAC-2023-7, została wycofana, więc transfer w LACNIC jest trwały. Jeśli potrzebujesz adresów tylko na jakiś czas, to jest dzierżawa, a nie transfer.
Opłaty, kroki i lista oczekujących LACNIC
Opłata LACNIC jest taka sama dla transferów w obrębie regionu i między regionami: US$ 1,037 za blok od /24 do /19 (bez /19), US$ 1,555 za /19 lub większy. Zaliczka w wysokości US$ 200 jest należna przy otwarciu wniosku (przez stronę regionalną; przy transferze przychodzącym przez odbiorcę) i nie podlega zwrotowi, jeśli zapotrzebowania nie da się uzasadnić; resztę płaci się po zatwierdzeniu. Każdy sprzedawca to osobny transfer z własną opłatą. Jeśli kategoria członkowska odbiorcy wzrośnie, LACNIC fakturuje różnicę; odbiorca, który nie jest jeszcze członkiem, płaci pełną opłatę za kategorię plus opłatę administracyjną i podpisuje umowę o świadczenie usług. Transfer trzeba zgłosić co najmniej 30 dni przed terminem płatności faktury odnowieniowej członka.
W przeliczeniu na IP opłata ma znaczenie tylko przy małych blokach: US$ 1,037 to około US$ 4.05 za adres przy /24 i około US$ 1.01 przy /22.
Kroki dla bloku opuszczającego LACNIC: kontakt administracyjny sprzedawcy składa formularz w MiLACNIC, analityk LACNIC prosi o dokumenty, wniosek zostaje wstępnie zatwierdzony, a RIR odbierający otrzymuje powiadomienie, ten RIR zatwierdza swojego odbiorcę, a następnie sprzedawca podpisuje zlecenie transferu i płaci. Odwrotny DNS i RPKI mogą nie być dostępne od razu po transferze inter-RIR, więc zaplanuj ROA dla nowego posiadacza; przypadek z ARIN do RIPE opisuje nasz przewodnik po transferach inter-RIR.
Dlaczego tak wielu kupuje: LACNIC wydał swój ostatni blok IPv4 2020-08-19 i prowadzi listę oczekujących. Według szacunków samego LACNIC ostatni wniosek na tej liście będzie czekał co najmniej 18 lat i otrzyma najwyżej 1,024 adresy; zapisać się mogą tylko członkowie z IPv6 od LACNIC, tylko w przypadku wniosku początkowego, a miejsce na liście przepada przy zakupie, sprzedaży lub fuzji. Porównanie po stronie RIPE: lista oczekujących RIPE a zakup /24.
LACNIC vs RIPE NCC vs ARIN
| LACNIC | RIPE NCC | ARIN | |
|---|---|---|---|
| Odbiorca uzasadnia zapotrzebowanie | Tak, przed LACNIC, według zasad przydziału | Tylko inter-RIR: plan wykorzystania 50% w ciągu pięciu lat | Tak, według NRPM 8.3 / 8.4 |
| Blokada otrzymanej przestrzeni | 1 rok; 3 lata dla przestrzeni przydzielonej przez LACNIC | 24 miesiące (RIPE-807 2.2.1) | Źródło nie mogło otrzymać IPv4 od ARIN w ciągu ostatnich 12 miesięcy |
| Opłata rejestru | US$ 1,037 poniżej /19, US$ 1,555 od /19 | Brak za transfer; obowiązuje opłata LIR | $500 opłaty dla źródła; opłata odbiorcy w 2027 $187.50 za /24 |
| Partnerzy inter-RIR | ARIN, APNIC, RIPE NCC (od lipca 2020) | ARIN, APNIC, LACNIC | APNIC, LACNIC, RIPE NCC |
| Lista oczekujących | Ostatni wniosek: co najmniej 18 lat (szacunek LACNIC) | 830 LIR, pierwszy w kolejce 501 dni (2026-11-09) | Sprzedawca 8.4 jest z niej wykluczony na 36 miesięcy |
Dane o RIPE i ARIN pochodzą z naszych weryfikacji z okresu 2026-10-29 do 2026-11-09 (RIPE-807, ARIN NRPM 8.4, cennik ARIN na 2027, statystyki listy oczekujących RIPE). AFRINIC nie ma w wierszu LACNIC: jego polityka transferów wymaga wzajemności i nie obowiązywała dla transferów inter-RIR, gdy ostatnio sprawdzaliśmy.
Brazylia i Meksyk: NIC.br i NIC México
Dwa kraje regionu mają rejestry krajowe. Strona transferów LACNIC kieruje organizacje z siedzibą w Brazylii do Registro.br (NIC.br, numeracao@registro.br), a te z Meksyku do IAR.MX (NIC México, ipmaster_iar@nic.mx). Polityka pozostaje polityką LACNIC; formularze, język i umowa należą do NIR, a kupujący spoza Brazylii lub Meksyku otrzymuje blok zarejestrowany gdzie indziej, bezpośrednio w LACNIC albo w innym regionie.
Te dwa NIR to większość rynku. W pliku delegacji LACNIC Brazylia posiada 43.6% adresów IPv4 regionu, a Meksyk 15.9%; w ciągu ostatnich 12 miesięcy 235 transferów, które trafiły do regionu LACNIC, przypadło organizacjom brazylijskim, a 34 meksykańskim. Brazylijski lub meksykański sprzedawca zaczyna więc od swojego NIR, nie od LACNIC, a pierwsze pytanie do sprzedawcy brzmi, który rejestr jest dla niego właściwy. W każdym przypadku sprawdź reputację bloku przed podpisaniem: sprawdzenie czarnych list IPv4 przed zakupem.
Co pokazuje rejestr transferów LACNIC
LACNIC publikuje każdy zarejestrowany transfer jako JSON, w tym samym formacie co inne rejestry, oraz zwykły plik delegacji. Poniższy skrypt odczytuje oba: transfery na rok z podziałem na przepływy wewnątrz LACNIC i inter-RIR, największe transfery od sprzedawcy do kupującego z ostatnich dwóch lat, rozmiary bloków i kraje odbiorców z ostatnich 12 miesięcy, wiek bloków w chwili sprzedaży oraz ile przestrzeni LACNIC wydał na tyle niedawno, że nadal obejmuje ją trzyletnia blokada. Bun lub Node 18+, bez zależności. Zapisz go jako lacnic_transfers.js:
// lacnic_transfers.js - who moves IPv4 in the LACNIC region, and what is still locked
// Bun or Node 18+, no dependencies. Usage: bun lacnic_transfers.js
const BASE = 'https://ftp.lacnic.net/pub/stats/lacnic/';
const get = async (p) => {
const r = await fetch(BASE + p);
if (!r.ok) throw new Error(p + ': HTTP ' + r.status);
return r;
};
const ip = (s) => s.split('.').reduce((a, o) => a * 256 + Number(o), 0);
const size = (n) => n.transfer_set.reduce((a, r) => a + ip(r.end_address) - ip(r.start_address) + 1, 0);
const pct = (a, b) => (b ? (100 * a / b).toFixed(1) : '0.0') + '%';
const fmt = (n) => n.toLocaleString('en-US');
const median = (a) => { a = [...a].sort((x, y) => x - y); return a.length ? a[a.length >> 1] : 0; };
const rir = (s) => (/RIPE/i.test(s) ? 'RIPE' : s); // the log spells RIPE three ways
const org = (o) => o.name.toUpperCase().replace(/[^\p{L}\p{N} ]/gu, '').replace(/ +/g, ' ').replace(/ (SA|LTDA|LIMITED|INC|SPA)$/, '');
const { transfers } = await (await get('transfers/transfers_latest.json')).json();
const dates = transfers.map((t) => t.transfer_date.slice(0, 10)).sort();
console.log(`Transfer log: ${transfers.length} entries, ${dates[0]} to ${dates.at(-1)}`);
// 1. per year: intra-LACNIC vs inbound / outbound, in addresses
const years = {};
for (const t of transfers) {
const y = t.transfer_date.slice(0, 4);
const v4 = (t.ip4nets || []).reduce((a, n) => a + size(n), 0);
if (!v4) continue;
const [src, dst] = [rir(t.source_rir), rir(t.recipient_rir)];
const k = src === dst ? 'intra' : dst === 'LACNIC' ? 'in<-' + src : 'out->' + dst;
const Y = (years[y] ??= { n: 0, ips: 0 });
Y.n++; Y.ips += v4; Y[k] = (Y[k] || 0) + v4;
}
console.log('\nYear transfers IPv4 addresses intra-LACNIC inter-RIR flows');
for (const [y, Y] of Object.entries(years).sort()) {
const flows = Object.keys(Y).filter((k) => /->|<-/.test(k)).map((k) => `${k} ${fmt(Y[k])}`).join(', ');
console.log(`${y} ${String(Y.n).padStart(9)} ${fmt(Y.ips).padStart(14)} ${pct(Y.intra || 0, Y.ips).padStart(12)} ${flows || '-'}`);
}
// 2. the largest single moves of each of the last two years (one seller -> one buyer)
for (const y of Object.keys(years).sort().slice(-2)) {
const pairs = {};
for (const t of transfers.filter((t) => t.transfer_date.startsWith(y))) {
const k = `${org(t.source_organization)} (${t.source_organization.country_code}) -> ${org(t.recipient_organization)} (${rir(t.recipient_rir)})`;
const v4 = (t.ip4nets || []).reduce((a, n) => a + size(n), 0);
if (v4) pairs[k] = (pairs[k] || 0) + v4;
}
console.log(`\nLargest ${y} pairs:`);
for (const [k, v] of Object.entries(pairs).sort((a, b) => b[1] - a[1]).slice(0, 3))
console.log(` ${fmt(v).padStart(9)} ${pct(v, years[y].ips).padStart(6)} ${k}`);
}
// 3. last 12 months: block sizes, countries, age of LACNIC-held blocks when they moved
const since = new Date(Date.now() - 365 * 864e5).toISOString().slice(0, 10);
const recent = transfers.filter((t) => t.transfer_date.slice(0, 10) >= since);
const bySize = {}, byCc = {}, ages = [];
let young = 0, blocks = 0;
for (const t of recent) {
// an inbound entry carries the transfer date as its registration date: age only for LACNIC sources
const age = (Date.parse(t.transfer_date.slice(0, 10)) - Date.parse(t.source_registration_date.slice(0, 10))) / 864e5 / 365.25;
for (const n of t.ip4nets || []) {
const pfx = '/' + (32 - Math.round(Math.log2(size(n))));
bySize[pfx] = (bySize[pfx] || 0) + 1;
blocks++;
if (t.source_rir !== 'LACNIC') continue;
ages.push(age);
if (age < 3) young++;
}
if (t.recipient_rir === 'LACNIC') {
const cc = t.recipient_organization.country_code;
byCc[cc] = (byCc[cc] || 0) + 1;
}
}
console.log(`\nLast 12 months (since ${since}): ${recent.length} transfers, ${blocks} IPv4 blocks`);
console.log('Block sizes: ' + Object.entries(bySize).sort((a, b) => b[1] - a[1]).slice(0, 5).map(([k, v]) => `${k} ${v}`).join(', '));
console.log('Recipient countries (LACNIC side): ' + Object.entries(byCc).sort((a, b) => b[1] - a[1]).slice(0, 5).map(([k, v]) => `${k} ${v}`).join(', '));
console.log(`Age of LACNIC-held blocks at transfer: median ${median(ages).toFixed(1)} years, under 3 years ${young} of ${ages.length}`);
// 4. delegated file: who holds the space, and what the 3-year rule still locks
const lines = (await (await get('delegated-lacnic-extended-latest')).text()).split('\n');
console.log('\nDelegated file header: ' + lines[0]);
const moved = new Set(transfers.flatMap((t) => (t.ip4nets || []).flatMap((n) => n.transfer_set.map((r) => r.start_address))));
const hold = {}; let total = 0, locked = 0, lockedN = 0;
const cutoff = new Date(Date.now() - 3 * 365.25 * 864e5).toISOString().slice(0, 10).replaceAll('-', '');
for (const l of lines) {
const f = l.split('|');
if (f[2] !== 'ipv4' || !/^(allocated|assigned)$/.test(f[6])) continue;
const n = Number(f[4]);
total += n; hold[f[1]] = (hold[f[1]] || 0) + n;
// a transferred block also carries a recent date: it is under the 1-year rule, not the 3-year one
if (f[5] >= cutoff && !moved.has(f[3])) { locked += n; lockedN++; }
}
console.log(`Delegated IPv4: ${fmt(total)} addresses; ` + Object.entries(hold).sort((a, b) => b[1] - a[1]).slice(0, 5)
.map(([k, v]) => `${k} ${pct(v, total)}`).join(', '));
console.log(`Delegated by LACNIC / NIRs since ${cutoff} (still inside the 3-year lock): ${lockedN} records, ${fmt(locked)} addresses`);
Uruchom go w pustym katalogu:
bun lacnic_transfers.js
Wynik, uruchomione na serwerze w chmurze DCXV z Bun 1.4.4 dnia 2026-11-10:
Transfer log: 1929 entries, 2016-09-14 to 2026-11-06
Year transfers IPv4 addresses intra-LACNIC inter-RIR flows
2016 5 59,392 100.0% -
2017 14 100,352 100.0% -
2018 26 86,016 100.0% -
2019 62 128,256 100.0% -
2020 58 188,928 81.4% out->RIPE 19,968, in<-RIPE 1,024, out->ARIN 13,824, in<-ARIN 256
2021 111 456,448 39.4% in<-RIPE 4,352, out->ARIN 25,344, in<-ARIN 23,296, out->APNIC 16,384, out->RIPE 207,104
2022 147 517,632 24.2% out->ARIN 14,336, in<-ARIN 5,632, out->RIPE 370,432, in<-RIPE 2,048
2023 185 295,424 63.9% in<-APNIC 7,424, out->ARIN 14,336, in<-ARIN 7,680, out->RIPE 35,328, out->APNIC 38,912, in<-RIPE 3,072
2024 225 278,016 82.0% in<-APNIC 14,336, out->APNIC 1,024, in<-ARIN 4,352, in<-RIPE 5,632, out->ARIN 16,384, out->RIPE 8,192
2025 752 7,748,352 5.6% out->RIPE 37,632, out->ARIN 7,117,824, in<-ARIN 149,504, in<-RIPE 5,376, in<-APNIC 256, out->APNIC 4,096
2026 344 1,535,488 20.9% in<-ARIN 74,752, in<-RIPE 21,248, in<-APNIC 512, out->ARIN 131,328, out->RIPE 856,064, out->APNIC 131,072
Largest 2025 pairs:
7,110,656 91.8% VTAL REDE NEUTRA DE TELECOMUNICACOES (BR) -> GLOBENET CABOS SUBMARINOS AMERICA (ARIN)
131,328 1.7% WIRELESS DATA SERVICE PROVIDER CORPORATION (US) -> COMUNICACIÓN CELULAR SA COMCEL (LACNIC)
65,536 0.8% TIM (BR) -> AMAZON DATA SERVICES URUGUAY SRL (LACNIC)
Largest 2026 pairs:
655,360 42.7% TIM (BR) -> LARUS (RIPE)
131,072 8.5% TELEFONICA MOVIL DE CHILE (CL) -> VIDEOTRON LTEE (ARIN)
65,536 4.3% TELEFONICA MOVIL DE CHILE (CL) -> EUROPEAN ION INVESTMENT GROUP SL (RIPE)
Last 12 months (since 2025-11-10): 383 transfers, 383 IPv4 blocks
Block sizes: /24 162, /22 98, /23 57, /20 23, /16 17
Recipient countries (LACNIC side): BR 235, MX 34, AR 21, CO 17, CL 12
Age of LACNIC-held blocks at transfer: median 13.9 years, under 3 years 2 of 345
Delegated file header: 2.3|lacnic|20261110|97654|19870101|20261106|-0300
Delegated IPv4: 181,941,760 addresses; BR 43.6%, MX 15.9%, AR 10.7%, CO 9.6%, CL 5.3%
Delegated by LACNIC / NIRs since 20231110 (still inside the 3-year lock): 174 records, 168,704 addresses
Jak to czytać:
- Rok 2025 to jedna transakcja. 752 transfery przeniosły 7,748,352 adresy, ale 7,110,656 z nich (91.8%) to 430 bloków, które jednego dnia, 2025-02-20, przeszły od V.tal w Brazylii do GlobeNet w regionie ARIN. GlobeNet jest częścią V.tal od fuzji w 2022 (DCD), więc najprawdopodobniej było to przeniesienie w obrębie jednej grupy, a nie sprzedaż rynkowa. Bez niego w 2025 przeniesiono około 638,000 adresów.
- Rok 2026 to rok odpływu. Do 2026-11-06 344 transfery przeniosły 1,535,488 adresów. Tylko 20.9% pozostało w regionie; 1,118,464 (72.8%) trafiło do regionu RIPE, ARIN i APNIC, a 96,512 napłynęło. Największy pojedynczy transfer to 655,360 adresów od TIM w Brazylii do Larus w regionie RIPE.
- Typowa transakcja jest mała. Spośród 383 bloków z ostatnich 12 miesięcy 162 to /24, 98 to /22, a 57 to /23; było 17 bloków /16.
- Sprzedawcy sprzedają starą przestrzeń. Mediana wieku bloku LACNIC w chwili transferu wynosiła 13.9 roku; tylko 2 z 345 były młodsze niż trzy lata, a rejestr nie mówi, czy były to odsprzedaże po upływie rocznej blokady.
- Trzyletnia blokada jest niewielka. 174 rekordy, 168,704 adresy (około 970 na rekord, mniej więcej /22), zostały delegowane od 2023-11-10 i nie zostały przeniesione: tej przestrzeni nie można sprzedać przed jej trzecią rocznicą.
Sumy roczne liczą adresy, a nie transakcje: jeden duży blok przeważa setki /24. Stronę RIPE tych samych miesięcy opisuje raport z rynku IPv4 za październik 2026.
Co to oznacza, jeśli kupujesz lub sprzedajesz przestrzeń LACNIC
- Zakup dla sieci w Ameryce Łacińskiej. Najpierw przygotuj uzasadnienie: LACNIC sprawdza zapotrzebowanie przed transferem, tak jak ARIN, a inaczej niż RIPE NCC we własnym regionie. Uwzględnij w budżecie opłatę administracyjną ponad cenę; przy /24 to zauważalna część.
- Zakup dla sieci w Europie. Blok LACNIC może trafić do LIR w RIPE jako transfer inter-RIR. LACNIC weryfikuje sprzedawcę, RIPE NCC stosuje wobec ciebie własne warunki inter-RIR, a blok podlega potem zasadom RIPE, w tym 24-miesięcznej blokadzie. Nasza strona o transferach inter-RIR wyjaśnia formalności.
- Sprzedaż. Sprawdź dwie daty: kiedy otrzymałeś blok (3 lata dla przydziałów LACNIC, 1 rok dla kupionego bloku) oraz fakturę odnowieniową (złóż wniosek co najmniej 30 dni wcześniej). Pamiętaj, że po sprzedaży przez rok nie możesz otrzymać IPv4 od LACNIC i że miejsce na liście oczekujących przepada przy sprzedaży.
- Płatność. Użyj rachunku escrow, który zwalnia środki po zmianie w rejestrze; kroki opisuje etapy płatności escrow za IPv4.
DCXV pośredniczy w transferach IPv4 między regionami i jest członkiem RIPE NCC (AS204057). Informacje o rejestrze dla tego regionu są na /ipv4/lacnic. Kupujesz lub sprzedajesz przestrzeń LACNIC? Porozmawiaj z naszym działem IPv4 lub napisz na ipv4@dcxv.com.
