{"id":1766,"date":"2026-10-01T05:48:50","date_gmt":"2026-10-01T05:48:50","guid":{"rendered":"https:\/\/ip4.market\/blog\/?p=1766"},"modified":"2026-10-01T05:48:50","modified_gmt":"2026-10-01T05:48:50","slug":"rpki-roa-setup-for-new-ipv4-prefixes-full-walkthrough","status":"publish","type":"post","link":"https:\/\/ip4.market\/blog\/rpki-roa-setup-for-new-ipv4-prefixes-full-walkthrough\/","title":{"rendered":"RPKI ROA Setup for New IPv4 Prefixes: Full Walkthrough"},"content":{"rendered":"<p><strong>Setting up RPKI ROAs<\/strong> is one of the first things a network operator should do after acquiring a new IPv4 prefix \u2014 whether it came from the open market or a transfer from another organization. Without a valid Route Origin Authorization, your prefixes are exposed to route hijacking, accidental deaggregation, and plain old BGP misconfigurations that can take your address space offline. And there&#8217;s a bigger problem: Cloudflare, Google, AT&#038;T and other major providers now reject RPKI-invalid routes, so an unsecured prefix risks losing reachability \u2014 partial or total \u2014 across large chunks of the internet. This walkthrough covers everything from prerequisites to publishing your first ROA.<\/p>\n<h2>Why RPKI ROAs Matter for Newly Acquired IPv4 Prefixes<\/h2>\n<p>Here&#8217;s something that trips up buyers: when you acquire IPv4 addresses through a transfer, the routing reputation and validation state of that block do <em>not<\/em> automatically carry over to your organization. A ROA cryptographically tells the global routing system that <em>your<\/em> Autonomous System (AS) is the legitimate origin of the prefix. It also specifies the maximum prefix length you&#8217;re authorized to advertise.<\/p>\n<p>An example makes it clearer. Say you acquire <em>203.0.113.0\/24<\/em> and start announcing it from AS64512. Without a ROA, a misconfigured network somewhere else could originate that same prefix, and transit providers doing RPKI validation would treat both announcements as equally &#8220;unknown&#8221; \u2014 nothing gets rejected. With a properly signed ROA, the hijacked route gets marked <strong>invalid<\/strong> and dropped by participating networks.<\/p>\n<p>There&#8217;s a commercial angle too. Buyers doing due diligence increasingly check RPKI status before purchasing address space, and a correctly scoped ROA signals that someone is managing the resources professionally. Marketplaces such as IP4 Market, which verifies sellers and their holdings, tend to see cleaner transactions when RPKI records are already aligned with the transferring organization.<\/p>\n<h2>Prerequisites: RIR Accounts, Resources, and ROA Management Tools<\/h2>\n<p>Before touching any configuration, confirm a few things:<\/p>\n<ul>\n<li><strong>RIR account access:<\/strong> You need portal credentials for ARIN, RIPE NCC, APNIC, LACNIC, or AFRINIC \u2014 whichever registry holds the prefix. For ARIN that means an Organization ID and a registered POC with API keys. For RIPE, you need access to the resource holder&#8217;s SSO account, or a maintainer object with authority over the <em>route<\/em>\/<em>route6<\/em> objects.<\/li>\n<li><strong>Confirmed resource holdership:<\/strong> After a transfer, check that the prefix actually appears under <em>your<\/em> organization in the RIR database. Only the current resource holder can create ROAs, so a delayed registry update will block everything downstream.<\/li>\n<li><strong>A ROA strategy:<\/strong> Decide your ASN(s), the exact prefixes to authorize, and the maximum prefix length. Common practice is to set maxlen equal to the prefix length itself (a \/24 with maxlen \/24) unless you deliberately plan to deaggregate.<\/li>\n<li><strong>Tooling:<\/strong> Options include the RIR&#8217;s hosted ROA management (ARIN&#8217;s RPKI dashboard, RIPE&#8217;s ROA creation tool), self-hosted CA software like <em>krill<\/em> or Fort, validators such as Routinator, or automation through the RIR REST APIs.<\/li>\n<\/ul>\n<p>Most small and mid-size networks are better off with hosted RIR ROA management. Running your own CA infrastructure is an operational burden most people don&#8217;t need.<\/p>\n<h2>RPKI ROA Setup: Step-by-Step Configuration Walkthrough<\/h2>\n<p>With prerequisites in place, creating the ROA takes minutes. Really.<\/p>\n<ol>\n<li><strong>Log in to your RIR portal<\/strong> and go to the RPKI or ROA management section (in ARIN: <em>Resources \u2192 RPKI<\/em>; in RIPE: the ROA creation form under My Resources).<\/li>\n<li><strong>Select the prefix<\/strong> you want to authorize \u2014 say, 203.0.113.0\/24.<\/li>\n<li><strong>Enter your origin ASN.<\/strong> If you announce the prefix from multiple ASNs (during a migration, for instance), create one ROA per ASN.<\/li>\n<li><strong>Set the maximum prefix length.<\/strong> For a \/24 announced as a single route, use maxlen \/24. If you legitimately announce \/24 sub-prefixes out of a \/22, set maxlen \/24 to permit exactly that level of deaggregation.<\/li>\n<li><strong>Review and sign.<\/strong> The RIR&#8217;s CA signs the ROA and publishes it to the RPKI repository within seconds to a few minutes.<\/li>\n<\/ol>\n<p><em>A RIPE-specific note:<\/em> if you keep legacy route objects in the IRR, keep them synchronized with your ROAs. Mismatches between IRR data and RPKI records cause filtering headaches with peers who rely on either source.<\/p>\n<div class=\"result-box\">\n<p><strong>Tip:<\/strong> After signing, check propagation with Routinator or the RIPEstat RPKI widget. Your ROA should show as &#8220;valid&#8221; for your prefix within roughly 15 minutes \u2014 though full global visibility through RPKI relying parties can take longer, since caches refresh on their own schedule.<\/p>\n<\/div>\n<p>Once validation confirms your ROA is visible, you&#8217;re ready to check how the global internet actually interprets your announcements. That&#8217;s what we cover in the next part of this walkthrough.<\/p>\n<h2>Validating and Testing Your ROAs with Looking Glasses and RIPEstat<\/h2>\n<p>Publishing the ROA is only half the job. You still need to check it from outside your own network, because what matters is what relying parties elsewhere in the world see. Start with a route validator looking glass \u2014 routinator.nl or bgp.tools both work \u2014 and see whether your prefix shows up as <strong>Valid<\/strong>, <strong>Invalid<\/strong>, or <strong>NotFound<\/strong> according to the major RPKI relying parties like Cloudflare, APNIC, and the RIPE NCC.<\/p>\n<p>RIPEstat deserves a closer look if you want the full picture. Drop your prefix into the RIPEstat Data API or the widget suite and check two things: the <em>Routing Status<\/em> widget, which displays BGP announcements and their origin ASNs, and the <em>RPKI Status<\/em> data call, which reports ROA validity per announcement. What if your prefix appears as announced but not validated? Usually it&#8217;s just cache propagation. RPKI relying parties refresh every few minutes to an hour, so give it a little time before panicking.<\/p>\n<ul>\n<li>Test from at least three independent looking glasses in different RIR regions \u2014 this rules out regional cache lag.<\/li>\n<li>Use bgp.tools or Hurricane Electric&#8217;s BGP toolkit to confirm your origin ASN matches the ASN in your ROA exactly. Watch out for upstream transit ASNs that may rewrite origin attributes.<\/li>\n<li>Check the RIPE NCC RIS or RouteViews collectors to see whether your announcements are actually reaching route servers at multiple IXPs.<\/li>\n<\/ul>\n<div class=\"result-box\">\n<p><strong>Tip:<\/strong> If a looking glass reports <em>Invalid<\/em>, don&#8217;t shrug it off. That status means your announcement violates your own ROA, and some networks will actively drop your traffic. The result is partial reachability \u2014 maddening to diagnose if you don&#8217;t have these tools at hand.<\/p>\n<\/div>\n<h2>Common ROA Configuration Mistakes and How to Avoid Them<\/h2>\n<p>Even seasoned operators get this wrong sometimes, and the consequences are outages, not just warnings. The mistakes I keep seeing:<\/p>\n<ol>\n<li><strong>Missing the maximum prefix length.<\/strong> Say your ROA only covers a \/24, but during maintenance your router originates a more specific \/25. That announcement instantly becomes Invalid. Set maxLength to the longest prefix you might ever originate.<\/li>\n<li><strong>Wrong ASN entry.<\/strong> Enter a customer&#8217;s ASN instead of your own \u2014 or the other way around \u2014 and the announcement is invalidated on the spot. Cross-check against what looking glasses actually show.<\/li>\n<li><strong>Deleting ROAs during renumbering.<\/strong> Remove the old ROA before the new one exists and you&#8217;ve created a validation gap. Create the replacement first. Always.<\/li>\n<li><strong>Stale ROAs after acquisitions.<\/strong> Bought IPv4 space? ROAs published by the previous holder may still conflict with your announcements. Remove or replace them right after the transfer.<\/li>\n<li><strong>Forgetting IRR coordination.<\/strong> ROAs and IRR route objects should tell the same story; plenty of validators and filtering tools cross-check both.<\/li>\n<\/ol>\n<p>Schedule a quarterly audit of your ROAs against your real BGP announcements. Configuration drift creeps in quietly, and you want to catch it before a customer calls asking why the site is down.<\/p>\n<h2>Conclusion: Securing Your IPv4 Investments with RPKI<\/h2>\n<p>A proper RPKI ROA setup is no longer optional for anyone holding IPv4 space. Over half of routed IPv4 prefixes now carry ROAs, and major transit providers apply RPKI-origin validation when deciding which routes to accept. Prefixes left unsecured face increasingly degraded reachability \u2014 not overnight, but steadily. Correctly configured ROAs protect your announcements from hijacking, keep your reputation intact with peers, and preserve the long-term value of the addresses themselves.<\/p>\n<p>For organizations purchasing or transferring IPv4 blocks, clean RPKI status belongs in any responsible due-diligence checklist. IP4 Market supports buyers and sellers through this process, offering a trusted platform with verified sellers, transparent transfer handling, and competitive pricing, so your newly acquired prefixes can go live with correct ROAs from day one. Keep the ROA management diligent, validate regularly, monitor continuously \u2014 and your IPv4 investments stay both reachable and secure.<\/p>\n<div class=\"ip4-cta\" style=\"margin:2em 0;padding:1.2em 1.5em;border:1px solid #d8dee9;border-left:4px solid #00b8d4;border-radius:6px;background:#f8fafc\">\n<p style=\"margin:0\"><strong>Need IPv4 space?<\/strong> Lease RIPE-verified \/24&ndash;\/22 subnets at a flat \u20ac0.50\/IP per month &mdash; LOA + RPKI\/ROA in minutes, instant company verification, automatic renewals. <a href=\"https:\/\/panel.ip4.market\/marketplace?utm_source=blog&amp;utm_medium=cta&amp;utm_campaign=post-footer\" rel=\"nofollow\">Browse available subnets &rarr;<\/a><\/p>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Setting up RPKI ROAs is one of the first things a network operator should do after acquiring a new IPv4 prefix \u2014 whether it came from the open market or&#8230;<\/p>\n","protected":false},"author":1,"featured_media":1768,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-1766","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-networking"],"_links":{"self":[{"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/posts\/1766","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/comments?post=1766"}],"version-history":[{"count":1,"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/posts\/1766\/revisions"}],"predecessor-version":[{"id":1767,"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/posts\/1766\/revisions\/1767"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/media\/1768"}],"wp:attachment":[{"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/media?parent=1766"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/categories?post=1766"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ip4.market\/blog\/wp-json\/wp\/v2\/tags?post=1766"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}