Что здесь проверяется?
У крупных CDN сотни точек присутствия (POP). От того, какая вам отвечает, зависит скорость всех сайтов на этом CDN, и это не всегда ближайшая.
Страница запрашивает у каждого CDN небольшой файл из вашего браузера, как это сделал бы сайт, и читает, какая точка ответила. Затем показывает расстояние до неё и время туда и обратно, рядом с минимумом, который позволяет это расстояние.
На этот сайт ничего не отправляется: запросы идут из вашего браузера прямо в CDN.
Как читается точка?
Каждый CDN пишет её в ответ по-своему:
Cloudflare: поле colo в /cdn-cgi/trace (HKG).
Amazon CloudFront: запись cdn-pop в Server-Timing или X-Amz-Cf-Pop (NRT57-P11).
Akamai: Akamai-Request-BC с названием города (JP_13_TOKYO).
Fastly: X-Served-By (cache-nrt-…-NRT).
Azure Front Door: X-Azure-Ref (…C1TYO…).
Bunny: заголовок Server (BunnyCDN-JP1-…).
Wikimedia: X-Cache, номер кеш-сервера указывает дата-центр.
Браузер может прочитать это, только если ответ разрешает, поэтому каждый CDN проверяется через публичный файл, который разрешает. Google, Alibaba Cloud, Tencent EdgeOne, Wangsu, Gcore и CDN77 не разрешают, поэтому у них измеряется только время.
Почему меня отправляют далеко?
CDN распределяют не по расстоянию. Cloudflare, Akamai и другие анонсируют свои адреса из многих мест сразу (anycast) или отвечают на DNS по расположению вашего резолвера, а путь выбирает провайдер.
В материковом Китае это обычное дело: сайты на бесплатных и дешёвых тарифах Cloudflare во многих сетях идут через западное побережье США и другие далёкие точки, потому что такие маршруты дешевле. Платные тарифы и China Network (с JD Cloud) обслуживаются из Гонконга или из Китая.
Прокси или VPN тоже меняют точку: CDN видит адрес прокси и обслуживает вас из его региона.
Что такое минимальное время туда и обратно?
В оптоволокне свет проходит около 200 км за миллисекунду, поэтому путь туда и обратно на расстояние d не может быть короче d ÷ 100 мс. Реальные маршруты в 1,5–2 раза длиннее прямой. Если время намного больше удвоенного минимума (плюс 40 мс), это помечается как окольный путь: маршрут идёт в обход или ждёт на перегруженном участке.
Что значит «не ближайшая»?
Для CDN, публикующих все свои точки (Cloudflare, Bunny, Wikimedia), страница находит ближайшую к вам. Если ответившая дальше неё более чем на 1000 км и вдвое, это отмечается. Это не сбой: CDN или ваш провайдер выбрали другой маршрут.
Как работает проверка сайта?
Введите домен. Worker этого сайта запрашивает его DNS через резолвер Cloudflare (без локальных и подменённых ответов), чтобы найти CDN, на который указывает имя, запрашивает /cdn-cgi/trace на сайте для Cloudflare и читает заголовки точки у его favicon, если сайт это разрешает. Затем измеряет время до сайта.
Домен уходит в Worker этого сайта и в DNS Cloudflare; ни один из них его не хранит.
Откуда берётся моё местоположение?
Из вашего IP-адреса, как его определяет Cloudflare (этот сайт работает на Cloudflare). Обычно город угадывается верно, но ошибка может быть в сотни километров, а с прокси это местоположение прокси. «Точное местоположение» берёт его у браузера; оно остаётся на странице.
Собираются ли мои данные?
Нет. Запросы идут из вашего браузера прямо в каждый CDN, который видит ваш IP-адрес, как любой сайт. Этот сайт ничего не хранит. Ссылка на результат содержит точки и время; ваш город, его координаты (примерно до 10 км) и сеть — только если вы отметите галочку, и никогда ваш IP. Код открыт на GitHub.