Office365 SPF 레코드에 조회가 너무 많습니다 . 정말 끔찍하다. 그냥보세요 : v=spf1 include:spf-a.outlook.com include:spf-b.outlook.com ip4:157.55.9.128/25 include:spfa.bigfish.com include:spfb.bigfish.com include:spfc.bigfish.com include:spf-a.hotmail.com include:_spf-ssg-b.microsoft.com include:_spf-ssg-c.microsoft.com ~all 우리는 우리가 규칙을 가질

완전히 어리석은 관리상의 이유로 Office365에 하나의 사서함이있는 분할 도메인이있어 include:outlook.comSPF 레코드 에 추가해야합니다 . 이것의 문제점은 규칙만으로는 최대 10 개의 DNS 조회 가 9 개 필요하다는 것입니다 .

정말 끔찍하다. 그냥보세요 :

v=spf1
include:spf-a.outlook.com
include:spf-b.outlook.com
ip4:157.55.9.128/25
include:spfa.bigfish.com
include:spfb.bigfish.com
include:spfc.bigfish.com
include:spf-a.hotmail.com
include:_spf-ssg-b.microsoft.com
include:_spf-ssg-c.microsoft.com
~all

우리는 우리가 규칙을 가질 필요가 우리 자신의 큰 틱 메일 시스템을 가지고 있음을 감안할 때 a, mx, include:_spf1.mydomain.com,하고 include:_spf2.mydomain.com있는 13 DNS 조회에서 박았 우리를 어떤 원인 PERMERROR이 아닌 엄격한 / 심하게 구현 검증과 엄격한 SPF 유효성 검사기, 완전히 신뢰할 수없는 / 예측 유효성 검사의 .

include:bloated outlook.com 레코드에서 이러한 규칙 중 3 개를 제거 할 수는 있지만 여전히 O365에서 사용하는 서버를 다루고 있습니까?

편집하다:

논평가들은 우리가 단순히 더 짧은 spf.protection.outlook.com기록을 사용해야한다고 언급했습니다 . 그 동안 이다 나에게 뉴스, 그것은 이다 짧은, 그것은 단지 하나의 기록 단축이다 :

spf.protection.outlook.com
  include:spf-a.outlook.com
  include:spf-b.outlook.com
  include:spf-c.outlook.com
  include:spf.messaging.microsoft.com
    include:spfa.frontbridge.com
    include:spfb.frontbridge.com
    include:spfc.frontbridge.com

편집 ²

기술적으로이를 다음과 같이 분석 할 수 있다고 가정합니다.

v=spf1 a mx include:_spf1.mydomain.com include:_spf2.mydomain.com include:spf-a.outlook.com include:spf-b.outlook.com include:spf-c.outlook.com include:spfa.frontbridge.com include:spfb.frontbridge.com include:spfc.frontbridge.com ~all

그러나 내가 볼 수있는 잠재적 인 문제는 다음과 같습니다.

  1. 부모 spf.protection.outlook.comspf.messaging.microsoft.com기록의 변경 사항을 숙지해야 합니다. 어떤 것이 변경되거나 [신 금지] 추가 된 경우이를 반영하기 위해 수동으로 업데이트해야합니다.
  2. 실제 도메인 이름을 사용하면 레코드 길이는 260 자이며 TXT 레코드에는 2 개의 문자열이 필요하며 모든 DNS 클라이언트와 SPF 분석기가 255 바이트보다 긴 TXT 레코드를 올바르게 받아 들일 것이라고 확신하지 않습니다. .


답변

최근에 Microsoft는 모든 하위 레코드를 제거하고 대신 2 개 또는 3 개의 “ptr”레코드를 사용하여이 문제를 “수정”했습니다.

$ dig TXT spf.protection.outlook.com
spf.protection.outlook.com. IN  TXT "v=spf1 ptr:protection.outlook.com ptr:o365filtering.com -all"

$ dig TXT spf.messaging.microsoft.com
spf.messaging.microsoft.com. IN TXT "v=spf1 ptr:protection.outlook.com ptr:messaging.microsoft.com ptr:o365filtering.com -all"

문제는 다음과 같습니다. 이렇게하면 Office 365 클라이언트가 “너무 많은 조회”PermError 미만으로 유지되는 것을 피할 수 있습니다 … 전 세계의 모든 메일 서버가 연결된 모든 IP 주소에 대해 (고가의) PTR 조회를 수행하도록하여 그렇게합니다.

SPF 사양 :

가능하면 SPF 레코드에서이 메커니즘을 사용하지 않아야합니다. 많은 수의 비싼 DNS 조회가 발생하기 때문입니다.


답변

우리는 또한이 문제를 발견했습니다. 현재 새 항목을 추가 할 여지가 없으므로 Microsoft는 전자 메일에만 Office 365를 사용하도록 권장하고 있습니다.

우리가 주변을 돌아 다니는 방식은 두 가지였습니다.

먼저 다른 항목을 명시 적 IPv4 항목으로 추가하여 DNS 조회를 분석 할 수 있습니다. 이를 통해 여러 가지 명시 적 IP를 추가 할 수 있습니다.include:outlook.com

둘째, Office 365에 대한 기본 도메인 아래에 별도의 하위 도메인을 설정했습니다. 이런 식으로 전자 메일 @ foo.company.com은 Office 365 SPF를 받고 전자 메일 @ comapny.com은 일반 SPF를 가져옵니다. 완벽하지는 않지만 다행히 Office 365를 사용한 장소는 모두 기본 도메인이 아닌 하위 도메인 내에서 전자 메일 주소를 사용할 수 있습니다.