DNS 조회 한도 (SPF)
SPF의 DNS 조회 한도는 평가당 최대 10회입니다. 초과 시 permerror가 발생하는 이유와 한도 아래로 유지하는 실용적 방법을 알아보세요.
DNS 조회 한도(SPF)란 무엇인가요?
SPF의 DNS 조회 한도는 SPF 평가가 한 번의 검사 동안 DNS를 조회하는 메커니즘과 수정자를 최대 10개까지만 수행할 수 있다는 규칙을 의미합니다. 이 상한은 메일 전달을 늦추거나 악용 위험을 초래할 수 있는 과도하거나 재귀적인 DNS 조회를 방지하기 위해 존재합니다. SPF 정책이 10회를 초과하는 조회를 요구하면 SPF 처리는 permerror 결과로 실패하며, 수신 서버는 일반적으로 해당 메시지를 SPF 실패로 취급합니다.
이 제약은 v=spf1 레코드를 어떻게 구성해야 하는지에 영향을 미칩니다. 특정 메커니즘은 DNS 쿼리를 유발하는 반면 다른 메커니즘은 그렇지 않습니다. 신중하게 계획하면 레코드를 한도 이내로 유지하고, 여러 메일함 제공업체 전반에서 안정적인 인증 결과를 보장할 수 있습니다.
DNS 조회 한도의 작동 방식
SPF 평가 중에 수신 서버는 v=spf1 정책을 확장합니다. 확장 과정에서 외부 DNS 쿼리가 필요할 때마다 한도 10회에 포함됩니다. 이 횟수는 최상위 수준뿐만 아니라 include와 redirect 전반에 걸쳐 누적됩니다.
DNS 조회를 유발하는 메커니즘과 수정자는 다음과 같습니다.
- a
- mx
- ptr
- exists
- include
- redirect
DNS 조회를 유발하지 않는 메커니즘은 다음과 같습니다.
- all
- ip4
- ip6
- exp
보이드 룩업에도 별도의 한도가 있습니다. DNS를 조회하는 메커니즘 중 2개 이상이 데이터를 반환하지 않거나 NXDOMAIN을 반환하면, 평가가 permerror로 중단될 수 있습니다. 이는 수신 서버를 비용이 크거나 악용적인 정책으로부터 보호합니다.
한도를 초과할 위험이 있는 정책 예시입니다.
v=spf1 include:_spf.vendor1.com include:_spf.vendor2.com include:_spf.vendor3.com include:_spf.vendor4.com include:_spf.vendor5.com mx a ~all최상위 수준에서는 조회가 10회 미만으로 보이더라도, 각 include 자체가 추가적인 include, a, mx 메커니즘을 포함할 수 있습니다. 확장된 전체 트리에 걸친 총합은 10회 이하로 유지되어야 합니다.
이 한도가 도달률과 보안에 중요한 이유
SPF 정책이 10회 조회 한도를 초과하면 수신 서버는 permerror를 반환하고 메시지를 SPF 실패로 취급할 수 있습니다. DMARC 정책과 정렬에 따라, 그 실패는 보호되는 도메인의 받은 편지함 배치를 낮추거나 완전한 거부를 유발할 수 있습니다.
한도에 도달할 때의 운영상 위험은 다음과 같습니다.
- 공급업체가 include를 변경할 때 발생하는 간헐적 SPF 실패
- 서로 다른 수신 서버 전반에서 진단하기 어려운 전달 문제
- SPF 정렬 불일치로 인한 예기치 않은 DMARC 실패
- 새 발송 서비스를 추가할 때의 취약성 증가
정책을 한도 이내로 유지하면 안정적인 인증 결과를 보장하고, 지원 부담을 줄이며, 도메인 평판을 보존합니다. 또한 공격자가 수신자에게 비용이 큰 리졸버 작업을 강제하는 정책을 만드는 것을 막아 줍니다.
한도 아래를 유지하는 실용적인 방법
정확성을 잃지 않으면서 DNS 조회를 최소화하도록 SPF 정책을 설계하세요. 효과적인 방법은 다음과 같습니다.
- 알려진 범위를 직접 인코딩할 수 있는 경우 ip4와 ip6 사용을 우선하기
- 중복되는 공급업체 include를 통합하고 사용하지 않는 서비스 제거하기
- ptr을 피하고 a와 mx는 필요할 때만 사용하기
- 여러 브랜드별 include를 연결하는 대신, 가능하면 공급업체가 제공하는 집계 include 사용하기
- 범위가 안정적일 때 include를 IP로 해석하여 신중하게 플래트닝하되, 공급업체 변경 시 재확인하는 절차 두기
- 여러 계층의 redirect 대신 깔끔한 상속을 위해 redirect를 한 번만 사용하기
- 보이드 룩업을 모니터링하고 오타나 폐기된 호스트명 수정하기
한도를 준수하는 간소화된 예시입니다.
v=spf1 ip4:203.0.113.0/24 include:_spf.mailhost.com ip6:2001:db8:abcd::/48 -allDNS 조회 한도와 DMARCeye
DMARCeye는 SPF 정책을 완전히 확장하여 총 DNS 조회 횟수를 추정하고, 한도에 근접하거나 초과하는 정책을 표시합니다. 이 플랫폼은 어떤 메커니즘이 조회 횟수에 가장 많이 기여하는지 추적하고, 위험한 include 및 redirect 연쇄를 짚어 줍니다.
DMARCeye는 또한 보이드 룩업, 사용이 중단된 ptr 사용, 그리고 공급업체 업데이트 후 레코드를 임계값 위로 밀어 올릴 수 있는 잘못된 구성을 표시합니다. 명확한 권장 사항과 변경 추적을 통해, 팀은 SPF 정책을 간소화하고, 10회 조회 규칙을 준수하며, 일관된 DMARC 통과율을 유지할 수 있습니다.
내 SPF 레코드를 확인해 보세요:
DMARCeye 무료 체험판에 가입하여 이메일 도메인을 보호하세요.
DMARC 및 관련 용어에 대해 자세히 알아보려면 DMARCeye 용어집을 참조하세요.