48
Качественная настройка GeoDNS очень непростая задача. Тем не менее,
данная задача находится за пределами обсуждаемых в данной работе тем, и
детально рассмотрена не будет.
Тем не менее, при выходе из строя одного из дата-центров, DNS-сервер
продолжит отвечать пользователям адресом неработающего сервера. Более
того, даже если сервер узнает о том, что дата-центр выведен из эксплуатации,
существует проблема с кэшированием DNS-записи на стороне клиента. Здесь
в игру вступает техника динамической маршрутизации, называемая Anycast.
Anycast – это такой тип маршрутизации, где несколько маршрутизаторов
анонсируют один и тот же префикс, и кратчайший путь к анонсируемой
подсети выбирается на основе тех или иных метрик внутри протокола
динамической маршрутизации. Пример anycast маршрутизации с
применением протокола BGP показан на рисунке 2.23. В данном случае,
подсеть 172.31.20.0/24 анонсируется из одной автономной системы, но с
разных точек присутствия. Согласно механизму выбора кратчайшего пути, в
BGP кратчайшим путём будет выбран путь с AS_PATH с одной автономной
системой в нём. В случае, если лучший путь пропадёт из BGP таблицы роутера
R1, будет установлен маршрут через R3, и пользователи будут попадать на
вторую точку присутствия. Данный метод примечателен тем, что пользователь
может продолжать использовать тот адрес, который получил от DNS-сервера.
Сервис для него продолжит работать, но время ответа сервиса для
пользователя может увеличиться.
Таким образом, мы можем анонсировать одну и ту же подсеть из разных
точек земного шара, и трафик до этой подсети автоматически будет попадать
на ближайшую (по мнению BGP) точку присутствия. Тем не менее,
информация из AS_PATH далеко не всегда отражает информацию о
кратчайших путях с точки зрения времени ответа. Только сочетание GeoDNS,
Anycast и других техник позволяет добиться кратчайшего времени ответа от
сервиса из любой точки мира. Данные методы балансировки нагрузки широко
применяются в современных информационных системах, в том числе для
организации CDN (Content delivery network). CDN, сам по себе, является очень
большой темой, поэтому находится за пределами данной дипломной работы и
конфигурации с применением CDN здесь рассмотрены не будут. [33]