How bgp.tools detects anycast addresses

Since the 3rd February 2022 bgp.tools has been scanning for anycast prefixes and flagging them with a special country flag.

We do this by using a small 3 node anycast of our own and sending a ping from each PoP to an IP that responds to ICMP in that prefix range. If we get a back ICMP reply to more than one different POP, we assume that the prefix is anycast.

Since if the prefix is not anycast, we should only ever see a reply from one PoP. As the target that was pinged will take the (hopefully) shortest path back to our anycast PoPs. But if the prefix is anycast, we would be hitting different local PoPs for each one of our own PoPs we send a ping out on:

Our anycast PoP nodes are in:

* East Coast US
* West Coast US
* West Europe

If the anycast being tested is entirely in one of these regions, then we may not detect it as it may be invisible to our nodes using this strategy.

You can find a full list and history of detections here: https://github.com/bgptools/anycast-prefixes