Мы используем внешний коммерческий SMTP-сервер для наших информационных бюллетеней (отправляя их через компоненты .NET), и они предлагают два SMTP-адреса - smtp.critsend.com и fast.critsend.com - а второй зарезервирован для отправки отдельных электронных писем. , первый навалом.
Использование nslookup показывает, что оба разрешают одни и те же 4 IP-адреса (fast.critsend.com - это псевдоним).
Вопрос: (как) smtp relay может различать разные имена? Есть ли в заголовках что-то, что можно сравнить с заголовками хостов в протоколе http (я не нашел внятной информации для не-сисадминов)?
Причина, по которой я спрашиваю, заключается в том, что мы хотели бы использовать один из IP-адресов в сценарии нашей рассылки (который работает), а не имя (для сохранения DNS-запросов), и мы задаемся вопросом о возможных проблемах.
4 IP-адреса, которые вы видите с помощью nslookup, могут быть просто серверами шлюза для сети, использующими циклический DNS для переключения при отказе / балансировки нагрузки.
Эти шлюзы будут ретранслироваться на разные "серверные части", единственный способ действительно быть уверенным в том, что это происходит, - это отправить себе тестовые электронные письма и проверить заголовки электронной почты (если только они не удалят внутренние) и увидеть для отправки электронных писем используются разные серверы.
Имя целевого сервера не используется в SMTP-запросе. Нет эквивалента HTTP Host:
заголовок.
Если вы хотите использовать IP-адрес вместо DNS-имени, я бы порекомендовал вам поговорить с поставщиком услуг электронной почты, чтобы проверить, какой IP-адрес они бы предпочли вам использовать. (И, ради $ DEITY, не кодируйте IP-адрес жестко - используйте файл конфигурации или вставьте его в /etc/hosts
, и еще раз проверьте это перед следующим запуском!)
Другой способ избежать множественных обращений к DNS-серверу вашего интернет-провайдера - это настроить локальный преобразователь DNS вместо использования преобразователей вашего интернет-провайдера.