1

ampr upstreams post

This commit is contained in:
Evan Pratten 2024-04-27 11:22:06 -04:00
parent 5e6945d9c3
commit b29180a620
4 changed files with 121 additions and 0 deletions

View File

@ -0,0 +1,32 @@
---
title: Infra-red photography with a Leap Motion Controller
description:
date: 2024-04-26
tags:
- hardware
draft: true
extra:
auto_center_images: true
aliases:
- /blog/leapmotion-photography
---
Ah, Leap Motion...
Back in 2013, a company called *~~OcuSpec~~.. ~~Leap Motion~~.. ~~Ultrahaptics~~.. Ultraleap* released their first motion tracking device, the Leap Motion Controller.
![The Leap Motion Controller](/images/posts/leapmotion-photography/controller.jpg)
I recall first seeing one in elementary school.
Looking back, I have no memory of what it was being used for, but I remember being fascinated with the diagnostics tool that showed the raw hand tracking data streaming from the device.
![A screenshot of the visualizer](/images/posts/leapmotion-photography/leap-visualizer.png)
## What does one actually do with one of these devices?
Well, you see, thats a great question. Its probably also the reason why the company doesn't seem to be doing as well as people thought it would in the first place.
There are very few practical applications for a non-haptic hand tracker. That being said, a few well-known demos do exist:
- Hans Willem Gijzel used a controller to control Ableton (presumably through an M4L device)

View File

@ -0,0 +1,89 @@
---
title: Who are the upstreams for AMPRNet?
description:
date: 2024-04-27
tags:
- networking
draft: false
extra:
auto_center_images: true
aliases:
- /blog/ampr-upstreams
---
I happened to be poking through the [AMPRNet](https://ampr.org) gateway list today, and pretty much out of nowhere came up with the question: *I wonder what networks most commonly house AMPR gateways?*
So, in this short post, I shall set out to answer that question.
## A brief overview
Feel free to read about AMPRNet yourself online. There's lots of great information floating around.
For anyone looking for a TLDR before continuing, you can basically think of AMPRNet as an ad-hoc mesh of gateways that act as core routers for tiny slices of IP space. These gateways share routing information with each other and form a mixed-topology network that spans the globe.
## What gateways exist?
Firstly, in order to figure out what networks house gateways, I need to know what gateways exist.
AMPR operators have access to a little API that allows us to query for a list of all active gateways, so thats where I shall start.
If you happen to be following along at home, heres the commands I am using to get my list of gateway IPs:
```bash
AMPR_API_TOKEN="your-api-token-here"
http get https://portal.ampr.org/api/v1/encap/routes \
"Authorization: Bearer $AMPR_API_TOKEN" \
"Accept: application/json" \
| jq ".encap[].gatewayIP" \
| tr -d '"' \
| sort \
| uniq
```
This returns a nicely sorted list of approximately 650 unique gateways.
## Where are they?
Now that I have a list of IPs, I just put them into a file (`/tmp/ips` in my case) and asked the [BGP.tools API](https://bgp.tools/kb/api) for info about them.
```bash
echo "begin\n$(cat /tmp/ips)\nend" | nc bgp.tools 43 | tee /tmp/bgp-tools-result
```
This gives me a very long list of ASNs for each gateway, which I can then process.
Taking the `/tmp/bgp-tools-result` file that the previous command generated, I can now run the following command to get a list of unique ASNs:
```bash
cat /tmp/bgp-tools-result \
| cut -d "|" -f 7 \
| sort \
| uniq -c \
| sort -n -r
```
## The results
At the time of writing, here's the distribution of gateways by Autonomous System:
| Count | Autonomous System |
|-------|---------------------------------------------------|
| 46 | Comcast Cable Communications, LLC |
| 25 | Charter Communications Inc |
| 23 | The Constant Company, LLC |
| 23 | AT&T Services, Inc. |
| 22 | Verizon Business |
| 16 | Charter Communications |
| 15 | Akamai (Linode) |
| 14 | Free SAS |
| 11 | Amazon.com, Inc. |
| 10 | Lumen (ex. Qwest) |
| 10 | Cox Communications Inc. |
| 10 | Bell Canada |
| 9 | Ote SA (Hellenic Telecommunications Organisation) |
| 9 | DigitalOcean LLC |
| *249* | *Various Others* |
<br>
**Note:** the *Various Others* row represents nearly 230 ASes that only host 1 gateway, and a smaller handful that host a few more.

Binary file not shown.

After

Width:  |  Height:  |  Size: 814 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 313 KiB