Deploying a RIPE Atlas Software Node
The RIPE Atlas project is a global network of probes used to measure internet connectivity. At the time of writing there are 12868 probes online, sitting on 3792 ASNs (Networks) in 177 countries. This provides a great understanding of the state of the internet in real time, and the best thing is at this is a public project with the data produced being freely available.
If you're unsure who RIPE are, they the non-profit that assign IPv4, IPv6 and ASN numbers for the Europe region.
View measurments: https://atlas.ripe.net/measurements
Running your own probe used to require custom hardware from RIPE, there have been a few different versions over the years. The most common was a repurposed TP-Link router.
You can request a hardware node here: https://atlas.ripe.net/apply/, however these are in limited supply. Running a software probe is an easier alternative especially if you're not sure about running one long term.
This is a dead easy setup using docker thanks to James Swineson. His docker compose is on GitHub: https://raw.githubusercontent.com/Jamesits/docker-ripe-atlas/master/docker-compose.yaml
This is my slightly modified version:
version: '3.1'
services:
ripe-atlas:
image: jamesits/ripe-atlas:latest
restart: always
environment:
RXTXRPT: "yes"
volumes:
- atlas-probe/etc:/var/atlas-probe/etc
- atlas-probe/status:/var/atlas-probe/status
cap_drop:
- ALL
cap_add:
- CHOWN
- SETUID
- SETGID
- DAC_OVERRIDE
- NET_RAW
mem_limit: "64000000000"
mem_reservation: 64m
Save it in a docker-compose.yml
file and then run with sudo docker compose up -d
.
This will create a set of keys within the etc
directory. Copy the contents of the probe_key.pub
and use within the apply form: https://atlas.ripe.net/apply/swprobe/
If you're unsure of you're ASN number you can run curl https://ipinfo.io/org
That's it once the form it submit you should get an email with your probe ID, you should receive around 21,600 every 24 hours. I had to wait a full 24 hours before receiving any.
After your credits come in you'll then be able to run measurements via the measurements form:
Now it's time to sit back and grab a coffee as the credits role in and the internet is made better!