Могу ли я контролировать, какую запись DNS использует клиентское приложение?
Я пытаюсь сделать наш набор серверов более отказоустойчивым. У меня есть веб-сервер, почтовый сервер и сервер УАТС, который использует SIP. Я знаю, что для каждой службы DNS может возвращать несколько записей A, MX и SRV соответственно. Однако я не уверен, будет ли DNS указывать, какую запись клиент должен использовать первым или вторым.
Например, если мой основной почтовый сервер доступен, я хочу, чтобы почтовые клиенты всегда подключались к нему и никогда не выполняли резервное копирование. Точно так же, если основной недоступен, я хочу, чтобы клиент затем попытался выполнить резервное копирование.
Я знаю, что это другие способы реализации отказоустойчивости (я изучаю их), но я хочу знать, будет ли разрешение DNS работать таким образом.
2 ответа
Это зависит от протокола / клиентского программного обеспечения. Для записей MX и SRV вы можете установить атрибут "Вес", чтобы побуждать клиента делать то, что вы хотите. Для универсального DNS вы придерживаетесь циклического перебора, который разные ОС обрабатывают по-разному.
Аварийное переключение приложений и служб не является функцией DNS. С Round Robin DNS вы просто разрешаете запросы DNS для конкретной записи DNS на несколько ресурсов. DNS не может знать, что служба, предоставляемая на одном хосте, недоступна и не имеет механизма для разрешения запросов только к тем хостам, которые доступны.
Это работа клиентского приложения или службы сервера. Вам необходимо реализовать отработку отказа в клиентском приложении или в службе сервера.