CINXE.COM
<!doctype html> <html> <head> <title></title> <meta charset="utf-8" /> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1" /> <link rel="stylesheet" href="/_css/2022/iana_website.css"/> <link rel="shortcut icon" type="image/ico" href="/_img/bookmark_icon.ico"/> <script type="text/javascript" src="/_js/jquery.js"></script> <script type="text/javascript" src="/_js/iana.js"></script> <script type="text/javascript" src="/_js/chartjs/chart.bundle.min.js"></script> <script> function stacked_bar(id, value, total, stepSize = 50, postfix_str = "%") { girdColor = ['#fff', '#ff0000', '#ccc']; titleText = 'Percentage Available (/12)'; if (stepSize === 10) { stepSize = 20; girdColor = ['#fff', 'red', '#fff', '#fff', '#fff', '#ccc']; titleText = 'Percentage Available'; } const data = { labels: [""], datasets: [{ label: "", barThickness: 25, data: [value], backgroundColor: "#51C048", hoverBackgroundColor: "#51C048" }, { label: "", barThickness: 25, data: [total - value], backgroundColor: "#ddd", hoverBackgroundColor: "#ddd" }, ], }; bar_ctx = document.getElementById(id); bar_chart = new Chart(bar_ctx, { type: 'bar', data: data, options: { plugins: { legend: { display: false }, title: { display: true, text: titleText, position: 'bottom', }, tooltips: { enabled: false, }, }, animation: { duration: 0 }, indexAxis: 'y', responsive: true, scales: { x: { stacked: true, grid: { drawBorder: true, lineWidth: 2, drawTicks: false, color: girdColor, offset: false, }, ticks: { min: 0, max: 100, stepSize: stepSize, callback: function (value) { return value + postfix_str; // convert it to percentage }, }, }, y: { stacked: true, barThickness: 30, ticks: { beginAtZero: true }, } } } }); } </script> <script> function display_i_chart() { bar_ctx = document.getElementById('chart-asn-aval'); bar_chart = new Chart(bar_ctx, { type: 'horizontalBar', data: { labels: [], datasets: [{ label: "Allocated", data: [], backgroundColor: "#33d38c" }, { label: "Received Block", data: [], backgroundColor: "#ddd", }, ], }, options: { title: { display: true, text: 'ASN Allocated Blocks', position: 'bottom', }, legend: { display: false, position: 'bottom', fontSize: 5, }, tooltips: { enabled: false, }, scales: { x: { stacked: true, gridLines: { drawBorder: true, color: ['#fff', '#fff', '#fff', '#fff', '#fff', '#fff', '#fff', '#fff', 'red', '#fff', '#ccc'] }, ticks: { min: 0, max: 100, stepSize: 10, callback: function (value) { return value + '%'; // convert it to percentage } } }, y: { scaleBeginAtZero: true, stacked: true, ticks: { beginAtZero: true } }, } // scales } // options }); } function display_status_chart(id) { ctx = document.getElementById(id).getContext('2d'); myChart = new Chart(ctx, { type: 'pie', data: { labels: [], datasets: [{ data: [], borderWidth: 1, backgroundColor: ["#ccc", "#FA3EAB", "#33d38c", "#1FA4E4"] }] }, options: { legend: { display: true, position: 'bottom', }, title: { display: true, text: "Allocations by Status", position: "bottom" }, } }); } </script> <script> function bar_chart_percent(id, labels, data, title, stepSize = 50) { gridColor = ['#ccc', 'red', '#ccc']; if (stepSize === 20){ gridColor = ['#ccc', 'red', '#ccc', '#ccc', '#ccc']; } let ctx = document.getElementById(id).getContext('2d'); let myChart = new Chart(ctx, { type: 'bar', data: { labels: labels, datasets: [{ data: data, borderWidth: 1, backgroundColor: "#51C048" }] }, options: { responsive: true, maintainAspectRatio: false, plugins: { legend: { display: false, }, title: { display: true, text: title, position: "top" }, tooltip: { enabled: true, callbacks: { label: function (context) { const currentValue = context.raw; return currentValue + '%'; } } }, }, animation: false, scales: { x: { title: { display: true, text: "Date" }, }, y: { min: 0, max: 100, title: { display: true, text: "Percentage Available (/12)" }, grid: { drawBorder: true, offset: false, // lineWidth: 2, color: gridColor, }, ticks: { stepSize: stepSize, callback: function (value) { return value + '%'; // convert it to percentage } } } } } }); } </script> <script type="application/javascript"> function display_bar_chart(id, labels, data, title, xaxes_label='', yaxes_label='' ) { ctx = document.getElementById(id).getContext('2d'); myChart = new Chart(ctx, { type: 'bar', data: { labels: labels, datasets: [{ data: data, borderWidth: 1, backgroundColor: "#6078ff" }] }, options: { animation: false, responsive: true, maintainAspectRatio: false, plugins: { legend: { display: false, }, title: { display: true, text: title, position: "top", }, }, scales: { x: { title: { display: true, text: xaxes_label }, }, y: { title: { display: true, text: yaxes_label }, ticks: { beginAtZero: true } } } } }); } </script> </head> <body> <header> <div id="header"> <div id="logo"> <a href="/"><img src="/_img/2022/iana-logo-header.svg" alt="Homepage"/></a> </div> <div class="navigation"> <ul> <li><a href="/domains">Domains</a></li> <li><a href="/protocols">Protocols</a></li> <li><a href="/numbers">Numbers</a></li> <!-- <li><a href="/news">News</a></li>--> <li><a href="/about">About</a></li> </ul> </div> </div> </header> <div id="body"> <article class="hemmed sidenav"> <main> <h1>APNIC ASN Allocations</h1> <p> Allocations of autonomous system numbers are made to regional Internet registries according to their needs, based on allocation rates they publish. Specifically, RIRs are eligible for further allocations if their available address space is 80% allocated, or the available pool does not satisfy two months of need based on the previous six months' average allocation rate. </p> <h2>Current Pool and Eligibility</h2> <div id="rir-map"> <div class="rir-cur"> <canvas id="current-status"></canvas> <script> stacked_bar('current-status', 23, 100, stepSize=10 ) </script> <noscript> <table class="iana-table" style="width: 100%"> <thead> <tr> <th></th> <th></th> </tr> </thead> <tbody> <tr> <td>Percentage Available</td> <td>23%</td> </tr> </tbody> </table> </noscript> </div> <table class="iana-table rir-cur"> <thead> <tr> <th></th> <th></th> </tr> </thead> <tbody> <tr> <td>Eligibility</td> <td class="text-right">Not Eligible</td> </tr> <tr> <td>Available</td> <td class="text-right">466</td> </tr> <tr> <td>Two Month Need</td> <td class="text-right">258</td> </tr> <tr> <td>Monthly Average</td> <td class="text-right">129</td> </tr> <tr> <td>Last Allocation by IANA</td> <td class="text-right">2,048 ASNs (2023-05-10)</td> </tr> </tbody> </table> </div> <h2>12-Month Forecast</h2> <p> The graph below uses APNIC's current average allocation rate to forecast their available ASN space over the next 12 months. This can be used to estimate if APNIC will become eligible to apply for additional AS Numbers in the near future. </p> <div class="rir-chart"> <canvas id="ipv6-forecast"></canvas> <script> bar_chart_percent( 'ipv6-forecast', ['2024-11', '2024-12', '2nd Month', '2025-02', '2025-03', '2025-04', '2025-05', '2025-06', '2025-07', '2025-08', '2025-09', '2025-10', '2025-11'], [23, 16.7, 10.4, 4.1, -2.2, -8.5, -14.79, -21.09, -27.39, -33.69, -39.99, -46.29, -52.59], "", 20) </script> <noscript> <table class="iana-table" style="width: 320px"> <thead> <tr> <th>Date</th> <th class="text-right">Percentage Allocation</th> </tr> </thead> <tbody> <tr> <td>2024-11</td> <td class="text-right">23%</td> </tr> <tr> <td>2024-12</td> <td class="text-right">16.7%</td> </tr> <tr> <td>2ND MONTH</td> <td class="text-right">10.4%</td> </tr> <tr> <td>2025-02</td> <td class="text-right">4.1%</td> </tr> <tr> <td>2025-03</td> <td class="text-right">-2.2%</td> </tr> <tr> <td>2025-04</td> <td class="text-right">-8.5%</td> </tr> <tr> <td>2025-05</td> <td class="text-right">-14.79%</td> </tr> <tr> <td>2025-06</td> <td class="text-right">-21.09%</td> </tr> <tr> <td>2025-07</td> <td class="text-right">-27.39%</td> </tr> <tr> <td>2025-08</td> <td class="text-right">-33.69%</td> </tr> <tr> <td>2025-09</td> <td class="text-right">-39.99%</td> </tr> <tr> <td>2025-10</td> <td class="text-right">-46.29%</td> </tr> <tr> <td>2025-11</td> <td class="text-right">-52.59%</td> </tr> </tbody> </table> </noscript> </div> <h2>Allocations by Country</h2> <p> Total number of ASN blocks allocated to individual countries from APNIC. </p> <div class="rir-chart"> <canvas id="asn-country"></canvas> <script> display_bar_chart('asn-country', ['AF', 'AP', 'AS', 'AU', 'BD', 'BN', 'BR', 'BT', 'BZ', 'CA', 'CH', 'CK', 'CN', 'CO', 'DE', 'ES', 'FJ', 'FM', 'FR', 'GB', 'GU', 'HK', 'ID', 'IE', 'IM', 'IN', 'IO', 'JP', 'KE', 'KH', 'KI', 'KP', 'KR', 'LA', 'LK', 'MH', 'MM', 'MN', 'MO', 'MP', 'MU', 'MV', 'MX', 'MY', 'NC', 'NF', 'NL', 'NO', 'NP', 'NR', 'NU', 'NZ', 'PA', 'PF', 'PG', 'PH', 'PK', 'PW', 'RU', 'SB', 'SC', 'SE', 'SG', 'TH', 'TK', 'TL', 'TO', 'TR', 'TV', 'TW', 'US', 'VN', 'VU', 'WF', 'WS', 'ZA'], [67, 1, 2, 2910, 1805, 10, 2, 36, 1, 9, 2, 2, 6538, 1, 4, 1, 18, 6, 1, 17, 9, 1175, 3444, 1, 1, 5845, 1, 1263, 1, 140, 4, 1, 1141, 39, 29, 1, 162, 69, 13, 2, 1, 17, 1, 375, 20, 2, 26, 3, 186, 5, 1, 715, 2, 6, 41, 608, 390, 3, 1, 11, 2, 4, 659, 617, 1, 14, 5, 1, 3, 408, 122, 929, 13, 1, 10, 1], "", "Country Code", "Allocated ASNs") </script> <noscript> <table class="iana-table" style="width: 320px"> <thead> <tr> <th>Country Code</th> <th class="text-right">Allocated ASN</th> </tr> </thead> <tbody> <tr> <td>AF</td> <td class="text-right">67</td> </tr> <tr> <td>AP</td> <td class="text-right">1</td> </tr> <tr> <td>AS</td> <td class="text-right">2</td> </tr> <tr> <td>AU</td> <td class="text-right">2,910</td> </tr> <tr> <td>BD</td> <td class="text-right">1,805</td> </tr> <tr> <td>BN</td> <td class="text-right">10</td> </tr> <tr> <td>BR</td> <td class="text-right">2</td> </tr> <tr> <td>BT</td> <td class="text-right">36</td> </tr> <tr> <td>BZ</td> <td class="text-right">1</td> </tr> <tr> <td>CA</td> <td class="text-right">9</td> </tr> <tr> <td>CH</td> <td class="text-right">2</td> </tr> <tr> <td>CK</td> <td class="text-right">2</td> </tr> <tr> <td>CN</td> <td class="text-right">6,538</td> </tr> <tr> <td>CO</td> <td class="text-right">1</td> </tr> <tr> <td>DE</td> <td class="text-right">4</td> </tr> <tr> <td>ES</td> <td class="text-right">1</td> </tr> <tr> <td>FJ</td> <td class="text-right">18</td> </tr> <tr> <td>FM</td> <td class="text-right">6</td> </tr> <tr> <td>FR</td> <td class="text-right">1</td> </tr> <tr> <td>GB</td> <td class="text-right">17</td> </tr> <tr> <td>GU</td> <td class="text-right">9</td> </tr> <tr> <td>HK</td> <td class="text-right">1,175</td> </tr> <tr> <td>ID</td> <td class="text-right">3,444</td> </tr> <tr> <td>IE</td> <td class="text-right">1</td> </tr> <tr> <td>IM</td> <td class="text-right">1</td> </tr> <tr> <td>IN</td> <td class="text-right">5,845</td> </tr> <tr> <td>IO</td> <td class="text-right">1</td> </tr> <tr> <td>JP</td> <td class="text-right">1,263</td> </tr> <tr> <td>KE</td> <td class="text-right">1</td> </tr> <tr> <td>KH</td> <td class="text-right">140</td> </tr> <tr> <td>KI</td> <td class="text-right">4</td> </tr> <tr> <td>KP</td> <td class="text-right">1</td> </tr> <tr> <td>KR</td> <td class="text-right">1,141</td> </tr> <tr> <td>LA</td> <td class="text-right">39</td> </tr> <tr> <td>LK</td> <td class="text-right">29</td> </tr> <tr> <td>MH</td> <td class="text-right">1</td> </tr> <tr> <td>MM</td> <td class="text-right">162</td> </tr> <tr> <td>MN</td> <td class="text-right">69</td> </tr> <tr> <td>MO</td> <td class="text-right">13</td> </tr> <tr> <td>MP</td> <td class="text-right">2</td> </tr> <tr> <td>MU</td> <td class="text-right">1</td> </tr> <tr> <td>MV</td> <td class="text-right">17</td> </tr> <tr> <td>MX</td> <td class="text-right">1</td> </tr> <tr> <td>MY</td> <td class="text-right">375</td> </tr> <tr> <td>NC</td> <td class="text-right">20</td> </tr> <tr> <td>NF</td> <td class="text-right">2</td> </tr> <tr> <td>NL</td> <td class="text-right">26</td> </tr> <tr> <td>NO</td> <td class="text-right">3</td> </tr> <tr> <td>NP</td> <td class="text-right">186</td> </tr> <tr> <td>NR</td> <td class="text-right">5</td> </tr> <tr> <td>NU</td> <td class="text-right">1</td> </tr> <tr> <td>NZ</td> <td class="text-right">715</td> </tr> <tr> <td>PA</td> <td class="text-right">2</td> </tr> <tr> <td>PF</td> <td class="text-right">6</td> </tr> <tr> <td>PG</td> <td class="text-right">41</td> </tr> <tr> <td>PH</td> <td class="text-right">608</td> </tr> <tr> <td>PK</td> <td class="text-right">390</td> </tr> <tr> <td>PW</td> <td class="text-right">3</td> </tr> <tr> <td>RU</td> <td class="text-right">1</td> </tr> <tr> <td>SB</td> <td class="text-right">11</td> </tr> <tr> <td>SC</td> <td class="text-right">2</td> </tr> <tr> <td>SE</td> <td class="text-right">4</td> </tr> <tr> <td>SG</td> <td class="text-right">659</td> </tr> <tr> <td>TH</td> <td class="text-right">617</td> </tr> <tr> <td>TK</td> <td class="text-right">1</td> </tr> <tr> <td>TL</td> <td class="text-right">14</td> </tr> <tr> <td>TO</td> <td class="text-right">5</td> </tr> <tr> <td>TR</td> <td class="text-right">1</td> </tr> <tr> <td>TV</td> <td class="text-right">3</td> </tr> <tr> <td>TW</td> <td class="text-right">408</td> </tr> <tr> <td>US</td> <td class="text-right">122</td> </tr> <tr> <td>VN</td> <td class="text-right">929</td> </tr> <tr> <td>VU</td> <td class="text-right">13</td> </tr> <tr> <td>WF</td> <td class="text-right">1</td> </tr> <tr> <td>WS</td> <td class="text-right">10</td> </tr> <tr> <td>ZA</td> <td class="text-right">1</td> </tr> </tbody> </table> </noscript> </div> <h2>Allocations for the Last Six Months</h2> <p> Number of ASNs allocated by APNIC to network operators in the last six months. </p> <div class="rir-chart"> <canvas id="asn-six"></canvas> <script> display_bar_chart('asn-six', ['2024-05', '2024-06', '2024-07', '2024-08', '2024-09', '2024-10'], [186, 161, 149, 158, 55, 63], "", "Date", "Allocated ASNs") </script> <noscript> <table class="iana-table" style="width: 320px"> <thead> <tr> <th>Date</th> <th class="text-right">Allocated ASN</th> </tr> </thead> <tbody> <tr> <td>2024-05</td> <td class="text-right">186</td> </tr> <tr> <td>2024-06</td> <td class="text-right">161</td> </tr> <tr> <td>2024-07</td> <td class="text-right">149</td> </tr> <tr> <td>2024-08</td> <td class="text-right">158</td> </tr> <tr> <td>2024-09</td> <td class="text-right">55</td> </tr> <tr> <td>2024-10</td> <td class="text-right">63</td> </tr> </tbody> </table> </noscript> </div> <div class="rir-footer"> Charts last updated <span class="last-updated">2024-11-23</span> <br/> Based on APNIC data published <span class="last-updated">2024-11-21</span> </div> APNIC </main> <nav id="sidenav"> <div class="navigation_box"> <h2>Number Resources</h2> <ul> <li id="nav_num_top"><a href="/numbers">Overview</a></li> <li id="nav_num_rir"><a href="/numbers/allocations/">RIR Allocation Data</a></li> <ul id="nav_num_rir_sub"> <li id="nav_num_rir_top"><a href="/numbers/allocations/">Overview</a></li> <li id="nav_num_rir_afrinic_ip"><a href="/numbers/allocations/afrinic/ipv6/">IPv6 (AFRINIC)</a></li> <li id="nav_num_rir_apnic_ip"><a href="/numbers/allocations/apnic/ipv6/">IPv6 (APNIC)</a></li> <li id="nav_num_rir_arin_ip"><a href="/numbers/allocations/arin/ipv6/">IPv6 (ARIN)</a></li> <li id="nav_num_rir_lacnic_ip"><a href="/numbers/allocations/lacnic/ipv6/">IPv6 (LACNIC)</a></li> <li id="nav_num_rir_ripe_ip"><a href="/numbers/allocations/ripencc/ipv6/">IPv6 (RIPE NCC)</a></li> <li id="nav_num_rir_afrinic_asn"><a href="/numbers/allocations/afrinic/asn/">ASN (AFRINIC)</a></li> <li id="nav_num_rir_apnic_asn"><a href="/numbers/allocations/apnic/asn/">ASN (APNIC)</a></li> <li id="nav_num_rir_arin_asn"><a href="/numbers/allocations/arin/asn/">ASN (ARIN)</a></li> <li id="nav_num_rir_lacnic_asn"><a href="/numbers/allocations/lacnic/asn/">ASN (LACNIC)</a></li> <li id="nav_num_rir_ripe_asn"><a href="/numbers/allocations/ripencc/asn/">ASN (RIPE NCC)</a></li> </ul> <li id="nav_num_abuse"><a href="/abuse">Abuse Issues</a></li> <ul id="nav_num_abuse_sub"> <li id="nav_num_abuse_top"><a href="/abuse">Overview</a></li> <li id="nav_num_abuse_answers"><a href="/abuse/answers">Questions and Answers</a></li> </ul> </ul> </div> </nav> </article> </div> <footer> <div id="footer"> <table class="navigation"> <tr> <td class="section"><a href="/domains">Domain Names</a></td> <td class="subsection"> <ul> <li><a href="/domains/root">Root Zone Registry</a></li> <li><a href="/domains/int">.INT Registry</a></li> <li><a href="/domains/arpa">.ARPA Registry</a></li> <li><a href="/domains/idn-tables">IDN Repository</a></li> </ul> </td> </tr> <tr> <td class="section"><a href="/numbers">Number Resources</a></td> <td class="subsection"> <ul> <li><a href="/abuse">Abuse Information</a></li> </ul> </td> </tr> <tr> <td class="section"><a href="/protocols">Protocols</a></td> <td class="subsection"> <ul> <li><a href="/protocols">Protocol Registries</a></li> <li><a href="/time-zones">Time Zone Database</a></li> </ul> </td> </tr> <tr> <td class="section"><a href="/about">About Us</a></td> <td class="subsection"> <ul> <li><a href="/performance">Performance</a></li> <li><a href="/reports">Reports</a></li> <li><a href="/reviews">Reviews</a></li> <li><a href="/about/excellence">Excellence</a></li> <!-- <li><a href="/news">News</a></li>--> <li><a href="/contact">Contact Us</a></li> </ul> </td> </tr> </table> <div id="custodian"> <p>The IANA functions coordinate the Internet鈥檚 globally unique identifiers, and are provided by <a href="http://pti.icann.org">Public Technical Identifiers</a>, an affiliate of <a href="http://www.icann.org/">ICANN</a>.</p> </div> <div id="legalnotice"> <ul> <li><a href="https://www.icann.org/privacy/policy">Privacy Policy</a></li> <li><a href="https://www.icann.org/privacy/tos">Terms of Service</a></li> </ul> </div> </div> </footer> <script> $(document).ready(function() { $("#nav_num_rir").addClass("selected") $("#nav_num_rir_apnic_asn").addClass("selected") }); </script> </body> </html>