Лучший вариант для DNS при большом количестве записей

Лучший вариант для DNS при большом количестве записей

У меня есть приложение и в приложении можно создавать новые объекты. Когда создается новый объект (например, say hello), я хочу, чтобы URL hello.example.com/hiвсегда указывал на определенный IP.

Нашел три способа добиться этого. Хочу узнать, будет ли задержка в случае большого количества записей DNS и какой из подходов ниже будет работать лучше всего.

  1. Добавьте запись DNS *.example.com ----> IP_1

Проблема в том, что это также перенаправит нежелательные DNS наIP_1

  1. Каждый раз при создании нового объекта запускайте скрипт и динамически добавляйте определенные DNS.

    hello.example.com ----> IP_1 hi.example.com -----> IP_1 .......

    Таким образом, будет много сопоставлений. У меня есть одно сомнение: если количество сопоставлений значительно увеличится, увеличится ли время поиска и вызовет ли это задержку?

  2. Использование многоуровневого

    *.object.example.com------>IP_1

решение1

Ваши опасения по поводу обоих подходов необоснованны.

[запись DNS с подстановочными знаками] также перенаправит нежелательные DNS на IP_1

  • Ну и что? Если вам нужно несколько записей DNS, это подразумевает, что вы используете службы, которые знают имя хоста (например, http, smtp). Вам все равно нужно настроить поведение, специфичное для имени хоста, для этих служб.
  • Вы можете смешивать явные записи DNS с подстановочными знаками — DNS-сервер должен возвращать наиболее точное совпадение.

если количество сопоставлений значительно увеличится, увеличится ли время поиска и вызовет ли это задержку?

Только если вы используете действительно плохо написанный DNS-сервер. У Bind и powerDNS не возникнет с этим проблем.

Если вы все же решили использовать явные записи вместо подстановочных знаков (хотя, возможно, это все еще может быть хорошей идеей для подстановочных знаков), то вам следует создавать новые записи как CNAME, а не как записи A — это действительно упрощает обслуживание/миграцию.

Связанный контент