Назад | Перейти на главную страницу

Кэширует ли Google / Gmail и Yahoo / YMail информацию DNS, связанную с SPF?

Я настраиваю свой linode-сервер для отправки почты из моего веб-приложения пользователям. Я мог бы использовать GoogleApps, но ограничение на 500 в день слишком жесткое, поэтому я пытаюсь настроить его сам.

Я установил Exim4 на своем сервере, используя эти инструкции, предоставленные linode. Все хорошо. Я тестировал отправку электронного письма на свой gmail / yahoo, используя эту команду на сервере:

$ echo "This is a test from myapp." | mail -s Testing myaddress@gmail.com

Я получаю письмо в свой почтовый ящик Gmail (не помеченный как спам), а также в свой Ymail (помеченный как спам). Чтобы меня не пометили как спам, я проверил заголовок отправленного электронного письма.

Я вижу эти строки (я запутываю с помощью XXX) в заголовке Gmail:

Received-SPF: neutral (google.com: 69.XXX.XXX.XXX is neither permitted nor denied by best guess record for domain of root@mail.myapp.com) client-ip=69.XXX.XXX.XXX;
Authentication-Results: mx.google.com; spf=neutral (google.com: 69.XXX.XXX.XXX is neither permitted nor denied by best guess record for domain of root@mail.myapp.com) smtp.mail=root@mail.myapp.com

Это заголовок электронного письма, которое получает Yahoo:

Received-SPF: none (mta1192.mail.mud.yahoo.com: domain of root@mail.myapp.com does not designate permitted sender hosts)

Похоже, что запись SPF не была установлена ​​(а это не так). Поскольку домен принадлежит мне, я вставил этот текст SPF в свои записи:

http://img.skitch.com/20100712-gsi6gsqie7d41c35d8gmnxigu2.png

Если быть точным, я установил
1) поддомен mail.myapp.com к записи A, указывающей на мой IP.
2) запись TXT для "@" как "v = spf1 ip4: 69.XXX.XXX.XXX a a: mail.myapp.com ~ all"

Кажется, это все, что мне нужно сделать, чтобы правильно установить имена IP / доменов в качестве записи SPF. Однако при повторном тестировании gmail / yahoo он продолжает давать мне тот же статус «Нейтральный» в Gmail и статус спама в Yahoo.

Я подозреваю, что серверы Google Gmail / Yahoo Ymail должны кэшировать мою информацию DNS на своей стороне, и я буду продолжать получать этот статус «нейтральный / спам» до тех пор, пока запись DNS myapp.com не будет удалена из их кеша. Кто-нибудь знает, кэшируют ли они эту информацию и сколько времени обычно требуется, прежде чем информация SPF будет получена? Что-нибудь еще я мог сделать неправильно или должен проверить?

Для этих записей применяется тот же тип TTL, что и для обычных записей A. Значение TTL сообщает другим DNS-серверам, как долго можно безопасно кэшировать запись. Ваш установлен на 300 секунд (5 минут). Некоторые почтовые программы / DNS-серверы игнорируют значения TTL ниже определенного предела, поэтому может быть трудно быть на 100% уверенным, когда изменение распространится.

Если я правильно следую вашей настройке, у вас есть запись SPF в корне, но вы отправляете электронную почту из поддомена.

если «конверт из» письма - root@mail.myapp.com, тогда вам нужно изменить txt-запись «@» на «mail». если вы отправляете почту с root@myapp.com, тогда ваши настройки будут правильными.

Так что-то вроде этого

;;in the myapp.com zone
@    IN   TXT  "v=spf1 ip4:69.XXX.XXX.XXX ~all" ;covers root@myapp.com
mail IN   A    69.xxx.xxx.xxx
mail IN   TXT  "v=spf1 ip4:69.XXX.XXX.XXX ~all" ;covers root@mail.myapp.com