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

SPF с -all включает директиву с ~ all?

Я хочу обновить и упростить запись SPF моего домена. К сожалению, http://www.openspf.org/SPF_Record_Syntax неясно.

В моем домене для приема и отправки используется одно реле MX. Тогда правило SPF так же просто, как это v=spf1 mx -all. Это запретит отправку писем из любых других источников.

У меня проблема в том, что один пользователь использует своего провайдера (belgacom.be) для ретрансляции исходящей почты. Текущее правило SPF провайдера следующее: v=spf1 mx include:ispmail.spf.secure-mail.be include:bgc.spf.secure-mail.be include:bgcpartners.spf.secure-mail.be ~all

Я хочу определить свое правило SPF как v=spf1 mx include:belgacom.be -all, но неясно, что ~all во включенном правиле SPF подойдет. Правила, включенные в правило belgacom.be, также имеют ~all. Будет ли ~all во включенных правилах будет считаться совпадением и будет ли мой -all игнорировать?

редактировать: Нашел инструмент для тестирования http://www.kitterman.com/spf/validate.html. Добавив include:belgacom.be я получил Permanent Error SPF Permanent Error: Too many DNS lookups. Вопрос о включенном ~allостается открытым.

В include Механизм в SPF немного ошибочен, поскольку фактически не включает содержимое указанной записи в основную запись.

Вместо этого указанная запись оценивается отдельно, а ее pass/fail результат интерпретируется как include будучи match или not match (больше никогда pass/fail!).
(См. Таблицу преобразования в include раздел спецификации SPF на все случаи.)

Таким образом, как и для других механизмов, это необязательный префикс квалификатора (по умолчанию +) к include который определяет, что на самом деле означает совпадение механизма.

Простой не-include пример:

  • ip4:192.0.2.1 (он же +ip4:192.0.2.1) означает, что если IPv4-адрес клиента 192.0.2.1, то результат pass.

  • -ip:192.0.2.1 означает, что если IPv4-адрес клиента 192.0.2.1, то результат fail.

include пример:

  • include:foo.example.com (он же +include:foo.example.com) означает, что если оценка записи SPF на foo.example.com привело к pass, это означает, что include является совпадением, поэтому результат устанавливается в соответствии с квалификатором этого include, следовательно pass.
  • -include:foo.example.com означает, что если оценка записи SPF на foo.example.com привело к pass, это означает, что включение является совпадением, поэтому результат устанавливается в соответствии с квалификатором этого include, следовательно fail.