{"id":915,"date":"2026-10-23T07:54:32","date_gmt":"2026-10-23T07:54:32","guid":{"rendered":"https:\/\/anthonyparkes.co.uk\/?p=915"},"modified":"2026-10-23T08:21:10","modified_gmt":"2026-10-23T08:21:10","slug":"hopatlas-mapping-the-internet-one-country-at-a-time-100-maps-and-250-million-traceroutes","status":"publish","type":"post","link":"https:\/\/anthonyparkes.co.uk\/?p=915","title":{"rendered":"HopAtlas: Mapping the Internet, One Country at a Time \u2014 100 Maps and 250 Million Traceroutes"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">A few weeks ago, I wrote about reviving my old UK Internet Report project. What started back in 2013 as a weekend experiment in network monitoring had evolved into something rather different: an attempt to discover and visualise the infrastructure that holds the Internet together.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Well, as usually happens with my projects, things have escalated.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">What started as a few traceroutes and a basic network graph has now grown into <a href=\"https:\/\/hopatlas.org\/\">HopAtlas<\/a>, a dedicated project mapping the visible Internet infrastructure of individual countries around the world.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">We&#8217;ve now passed two rather interesting milestones: <strong>over 100 completed country and territory maps, and more than 25 million traceroutes.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Not bad for something that started with the question, &#8220;I wonder what that would look like?&#8221;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Idea: Every Country Has a Different Internet<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">We tend to think of the Internet as one enormous, interconnected network. And technically, that&#8217;s true. But underneath, it&#8217;s made up of thousands of independently operated networks, connected through transit providers, peering agreements, Internet exchanges and a rather impressive collection of routers.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The interesting question is what that infrastructure actually looks like.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Not where the cables are physically buried or which buildings contain the routers, but how traffic travels between networks and which paths are visible from the outside.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s what HopAtlas is attempting to visualise.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Rather than treating the Internet as one giant graph, the project divides the work into individual countries and territories, exploring the public IP address space associated with each one.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The results are surprisingly different.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Some countries produce relatively simple structures with a handful of dominant paths. Others generate enormous, complicated webs of interconnected routers and networks.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And occasionally, a map looks less like a telecommunications network and more like somebody has dropped a box of fibre-optic spaghetti onto the floor.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How It Works: Millions of Small Questions<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">At the heart of the project is a fairly old networking tool: <code>traceroute<\/code>.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It&#8217;s been around for decades and does something relatively simple. It attempts to identify the routers that packets travel through on their way towards a destination.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Individually, a traceroute isn&#8217;t particularly exciting. Run a few million of them, however, and patterns begin to emerge.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">HopAtlas uses distributed collectors to run traceroutes towards public IP addresses associated with a particular country or territory.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Each result provides another small piece of information about the network:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Which routers responded along the path.<\/li>\n\n\n\n<li>Which connections were observed between them.<\/li>\n\n\n\n<li>Which networks and Autonomous Systems (ASNs) are involved.<\/li>\n\n\n\n<li>How different paths converge, diverge and connect.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">These observations are collected, deduplicated and stored in a central database.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The rendering system then turns the discovered routers into nodes and the observed connections into edges, building a visual representation of the infrastructure.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And because these are observations rather than a physical survey, the resulting maps represent the <strong>visible routing topology<\/strong>, not the geographical position of every router.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">There are plenty of things traceroute cannot see. Firewalls, filtered responses, load balancing and hidden infrastructure all introduce gaps.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The Internet isn&#8217;t particularly interested in making itself easy to map.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The Milestone: Over 100 Maps Completed<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">One of the biggest changes since the original UK Internet Report rebuild has been the decision to map countries individually.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">HopAtlas has now completed more than 100 country and territory mapping campaigns, including locations such as Greenland, Bhutan, Madagascar, the Falkland Islands, Iraq, Yemen and numerous small Pacific and Caribbean islands.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Many of these are relatively small networks, which makes them useful for testing the collection and rendering process before tackling much larger address spaces.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But they&#8217;re also interesting in their own right.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A small island with limited international connectivity might produce a surprisingly distinctive topology, while a country with numerous service providers and transit relationships can generate something far more complicated.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Even the smaller maps can reveal thousands of observed connections.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And that&#8217;s one of the things I find fascinating about this project. Two countries may look similar on a conventional map, but their visible Internet infrastructure can be completely different.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">250 Million Traceroutes: When a Hobby Becomes a Data Problem<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The other milestone is the amount of measurement involved.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>More than a quarter of a billion traceroutes.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">That&#8217;s an enormous number of individual network observations, particularly for a project that began as an experiment.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Of course, running traceroutes is only part of the problem.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The difficult bit is what happens afterwards.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Every trace can produce multiple hops, and every hop potentially provides another router or connection that needs to be recorded, compared against existing observations and associated with the wider network graph.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Without deduplication, the database would quickly become an expensive collection of repeated information.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Then there&#8217;s the question of rendering it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Turning thousands, or potentially hundreds of thousands, of nodes and connections into an image that&#8217;s actually useful to look at is an entirely different challenge.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A database can store a network graph quite happily. Convincing a renderer to arrange it into something recognisable, without consuming every available CPU core and several geological eras of processing time, is where things get interesting.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">A fair amount of the development has therefore gone into the less glamorous parts: collector management, database efficiency, processing batches, graph generation and keeping the whole thing running without constant manual intervention.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The sort of work nobody notices when it works.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Which is exactly how infrastructure should be.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Taking the Measurements Around the World<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Another lesson from the original project was that where you run a traceroute matters.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If every measurement originates from the same connection in the UK, much of the initial route will be identical. You&#8217;ll see plenty of your own ISP and its upstream connections, but you&#8217;ll miss alternative paths visible from elsewhere.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To address this, HopAtlas uses remote collectors running from different network locations.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Some run on lightweight virtual machines, including disposable cloud instances that can be deployed for particular mapping campaigns and shut down afterwards.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">They don&#8217;t need enormous amounts of processing power. Their job is simply to collect observations and return the results.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This approach also provides different perspectives of the same destination networks.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And that&#8217;s important, because there isn&#8217;t one universal view of the Internet. What a router in Europe can see may be very different from what a collector in the Middle East or America observes.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The more perspectives we can collect, the more interesting the resulting topology becomes.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">It&#8217;s Also a Form of Digital Artwork<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Something I hadn&#8217;t entirely anticipated when I started the project was how visually interesting the results would become.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Once the observations are converted into graphs, the network structures start forming distinctive patterns.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dense clusters, long chains, large transit hubs, disconnected islands and complicated branching structures all emerge from what began as a collection of fairly ordinary diagnostic commands.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">These aren&#8217;t pictures created by an AI image generator or somebody drawing what they think the Internet looks like.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">They&#8217;re visualisations built from actual observed network paths.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">They&#8217;re not perfect, and they&#8217;re certainly not complete, but that&#8217;s part of what makes them interesting.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Every map is effectively a snapshot of what the collectors were able to observe during that particular campaign.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And because networks change over time, the same country could produce a different result if mapped again in the future.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Which brings me to another reason for keeping the underlying data: historical comparison.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What&#8217;s Next?<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Reaching 100 completed maps is a useful milestone, but there&#8217;s still plenty left to explore.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Many of the smaller countries and territories have been completed first. The larger networks, with millions of potential destinations and far more complex infrastructure, present a different challenge.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The next stage is to continue expanding the country coverage, improve the distribution of collectors and refine the rendering process as the graphs become larger.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">I&#8217;m also interested in what historical snapshots might reveal.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Networks are constantly changing. Providers merge, new connections appear, routes move between transit networks and infrastructure disappears.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Being able to compare the visible topology of a country over time could become just as interesting as generating the original map.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">For now, though, the objective remains fairly simple: keep collecting observations, improve the maps and see how much of the visible Internet we can discover.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Final Thoughts: The Internet Is Bigger Than It Looks<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">When I first built the UK Internet Report in 2013, I was mainly interested in latency, outages and network performance.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Thirteen years later, the question has shifted from &#8220;Is the Internet working?&#8221; to &#8220;What does the Internet actually look like?&#8221;<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">HopAtlas is my attempt to answer that question, one traceroute at a time.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It will never be a complete picture. Too much of the Internet is hidden, filtered or simply impossible to observe from the outside.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">But with over 100 completed maps and a quarter of a billion traceroutes behind the project, it&#8217;s already producing a fascinating collection of network structures.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">And, if nothing else, I&#8217;ve discovered that the Internet can create some surprisingly good artwork.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>You can explore the maps and follow the project&#8217;s progress at<\/strong> <a href=\"https:\/\/hopatlas.org\/\"><strong>hopatlas.org<\/strong><\/a><strong>.<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><em>Mapping the Internet, one hop at a time.<\/em><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A few weeks ago, I wrote about reviving my old UK Internet Report project. What started back in 2013 as a weekend experiment in network<\/p>\n","protected":false},"author":2,"featured_media":918,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"template-fullwidth.php","format":"standard","meta":{"footnotes":""},"categories":[21,2],"tags":[],"class_list":["post-915","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-infrastructure","category-projects"],"_links":{"self":[{"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=\/wp\/v2\/posts\/915","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=915"}],"version-history":[{"count":2,"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=\/wp\/v2\/posts\/915\/revisions"}],"predecessor-version":[{"id":919,"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=\/wp\/v2\/posts\/915\/revisions\/919"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=\/wp\/v2\/media\/918"}],"wp:attachment":[{"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=915"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=915"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/anthonyparkes.co.uk\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=915"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}