%3F.png)
Мы используем внешний коммерческий SMTP-сервер для наших информационных бюллетеней (отправляем их через компоненты .NET), и они предлагают два URL-адреса SMTP — smtp.critsend.com и fast.critsend.com, причем второй зарезервирован для отправки отдельных писем, а первый — для массовой рассылки.
Использование nslookup показывает, что оба адреса преобразуются в одни и те же 4 IP-адреса (fast.critsend.com является псевдонимом).
Вопрос: (как) может ли SMTP-ретранслятор различать разные имена?Есть ли в заголовках что-то, что можно сравнить с заголовками хоста в протоколе http (я не нашел никакой внятной информации для не-системного администратора)?
Причина, по которой я спрашиваю, заключается в том, что мы хотели бы использовать один из IP-адресов в нашем скрипте рассылки (что работает) вместо имени (чтобы сэкономить DNS-запросы), и мы задаемся вопросом о возможных проблемах.
решение1
Четыре IP-адреса, которые вы видите с помощью nslookup, могут быть просто шлюзовыми серверами для сети, использующей циклический перебор DNS для отказоустойчивости/балансировки нагрузки.
Эти шлюзы будут ретранслировать данные на разные «бэкенды», единственный способ убедиться в этом — отправить себе тестовые письма и проверить заголовки писем (если только они не очищают внутренние заголовки) и посмотреть, какие серверы используются для отправки писем.
решение2
Host:
Имя целевого сервера не используется в SMTP-запросе. Эквивалент HTTP- заголовка отсутствует .
Если вы хотите использовать IP-адрес вместо DNS-имени, я бы рекомендовал вам поговорить с поставщиком услуг электронной почты, чтобы узнать, какой IP-адрес он предпочитает, чтобы вы использовали. (И, ради всего святого, не задавайте IP-адрес жестко — используйте файл конфигурации или вставьте его в /etc/hosts
, а затем проверьте его снова перед следующим запуском!)
Еще один способ избежать множественных обращений к DNS-серверу вашего интернет-провайдера — настроить локальный DNS-резолвер вместо использования резолверов вашего интернет-провайдера.