Чтобы иметь эффективную CDN, он должен направлять запросы на сервер, ближайший к запрашивающей стороне.
Как они это делают? Запускают ли они свой собственный DNS-сервер, который, когда его просят разрешить адрес, выполняет географический поиск IP-адреса запрашивающего и возвращает правильный IP-адрес сервера? Влияет ли на это кеширование DNS (похоже, что не должно, и кеш моего интернет-провайдера будет кэшировать ближайший сервер, а затем передать его мне)
Есть два основных механизма для маршрутизации запросов к топологически ближайшим серверам:
DNS с разделенным представлением… как вы сказали.
Маршрутизация Anycast: BGP используется для указания маршрутизатору поставщика услуг Интернета направлять трафик для IP-адреса на оптимально расположенный хост.
Из двух методов DNS с разделенным представлением реализовать проще. Тем не менее, у произвольной маршрутизации есть то преимущество, что она работает, даже если клиент использует DNS-сервер, отличный от ISP.
Да, именно так работает большинство CDN. Кроме того, у многих есть серверы, которые расположены в центрах обработки данных интернет-провайдеров для прямого доступа.