Tüm sistemler operasyonel
Connect365
Sorun Giderme· 12 Haziran 2026

SPF "PermError: Too Many DNS Lookups" Hatası Nasıl Çözülür?

SPF "PermError: Too Many DNS Lookups" Hatası Nasıl Çözülür?

SPF kaydınız geçerli olsa bile alıcı sunucular PermError: too many DNS lookups hatasıyla e-postalarınızı reddedebilir. Bu hata, RFC 7208'in belirlediği 10 DNS sorgu sınırını aşmanın kaçınılmaz sonucudur. Nedenini ve nasıl düzeltileceğini adım adım ele alıyoruz.

TL;DR: SPF standardı (RFC 7208, Bölüm 4.6.4) bir doğrulama zincirinde toplam 10 DNS sorgusuna izin verir. Bu sınırı aşan kayıtlar PermError döndürür ve e-postalar reddedilebilir. Çözüm: iç içe geçmiş include mekanizmalarını flatten ederek, kullanılmayan mekanizmaları kaldırarak ve gerekirse SPF makroları ya da üçüncü taraf SPF düzleştirme araçları kullanarak toplam sorgu sayısını 10'un altına düşürmektir.

SPF ve DNS Sorgu Sınırı Nedir?

Sender Policy Framework (SPF), bir alan adı adına hangi IP adreslerinin e-posta gönderebileceğini tanımlayan bir e-posta kimlik doğrulama protokolüdür. RFC 7208 (Ocak 2014, IETF) bu protokolün teknik spesifikasyonunu belirler ve Bölüm 4.6.4'te açıkça şunu söyler: "SPF kaydını değerlendiren taraf, include, a, mx, ptr, exists mekanizmaları ve redirect değiştiricisi dahil olmak üzere toplam 10'dan fazla DNS sorgusu yapmamalıdır. Sınır aşılırsa sonuç PermError olmalıdır."

PermError, "kalıcı hata" anlamına gelir; geçici bir ağ sorunu değil, kayıt yapılandırmanızda kalıcı bir sorun olduğunu gösterir. Google Postmaster Tools ve Microsoft'un Exchange Online Posta Koruma (EOP) altyapısı dahil büyük alıcılar bu kurala sıkı biçimde uymaktadır.

Hangi Mekanizmalar DNS Sorgusu Tüketir?

SPF kaydındaki her mekanizma aynı DNS maliyetini taşımaz. Aşağıdaki tablo RFC 7208 Bölüm 5'e göre hangi mekanizmaların DNS sorgusu tükettiğini özetlemektedir:

Mekanizma / Değiştirici DNS Sorgusu Tüketir mi? Açıklama
include: Evet (özyinelemeli) Başvurulan kaydın kendi mekanizmaları da sayılır.
a Evet Alan adının A/AAAA kaydını sorgular.
mx Evet MX kaydını ve MX hedeflerinin A/AAAA kayıtlarını sorgular.
ptr Evet (RFC 7208 kullanımını önerir kaçınılsın) Ters DNS sorgusu yapar; pahalı ve yavaştır.
exists: Evet Belirtilen alan adı için A kaydı sorgusu yapar.
redirect= Evet Hedef kaydın değerlendirilmesi için yeni bir sorgu zinciri başlatır.
ip4: / ip6: Hayır Doğrudan IP adresi; DNS sorgusu gerektirmez.
all Hayır Joker mekanizma; DNS sorgusu tüketmez.

Neden 10 Sınırına Bu Kadar Kolay Ulaşılıyor?

Modern e-posta altyapısı onlarca üçüncü taraf servisi bünyesinde barındırır: CRM araçları, pazarlama otomasyon platformları, destek yazılımları, ERP sistemleri ve daha fazlası. Her servis, kendi SPF kaydınıza bir include: satırı eklemenizi ister. Örneğin:

Bu örnekte henüz 6 include direktifi var; ancak her birinin kendi iç kayıtlarında ek sorgular yaptığını hesaba kattığınızda toplam kolaylıkla 15-20 sınırına dayanır.

Hatayı Teşhis Etme

Aşağıdaki ücretsiz araçlar SPF kaydınızdaki toplam DNS sorgu sayısını gerçek zamanlı analiz eder:

Terminal üzerinden hızlı bir kontrol için:

dig +short TXT alanadiniz.com | grep "v=spf1"

Bu komut mevcut SPF kaydınızı döndürür. Ardından her include hedefini özyinelemeli olarak sorgulayarak toplam sayıyı elle de hesaplayabilirsiniz; ancak yukarıdaki araçlar bunu otomatik yapar.

Adım Adım Çözüm Yöntemleri

1. Kullanılmayan Servisleri Temizleyin

En hızlı kazanım, artık kullanmadığınız servisler için eklediğiniz include satırlarını kaldırmaktır. E-posta gönderme altyapınızı envantere alın: hangi servisler gerçekten alan adınız üzerinden e-posta gönderiyor? Kullanılmayan SaaS entegrasyonları, eski ESP (E-posta Servis Sağlayıcısı) kalıntıları ve test ortamı kayıtları bu kategoriye girer.

2. IP Adreslerini Doğrudan Kullanın

Bir include mekanizmasının arkasındaki nihai IP aralığı sabitse, DNS sorgusu tüketen mekanizma yerine doğrudan ip4: veya ip6: bloğu kullanabilirsiniz. Örneğin bazı küçük ESP'lerin include kaydı tek bir /24 bloğuna işaret ediyorsa:

# Öncesi (1 DNS sorgusu tüketir)
include:mail.example-esp.com

# Sonrası (0 DNS sorgusu tüketir)
ip4:203.0.113.0/24

Uyarı: ESP, IP aralığını değiştirirse kaydınızı manuel güncellemeniz gerekir. Bu yöntemi yalnızca IP aralıklarını nadiren değiştiren servisler için tercih edin.

3. SPF Kaydını Düzleştirme (Flattening)

SPF düzleştirme, tüm iç içe include zincirlerini otomatik olarak çözerek yalnızca nihai IP adreslerini içeren tek bir SPF kaydı üretir. AutoSPF, PowerSPF ve dmarcian gibi araçlar bu işlemi yönetilen bir DNS servisi olarak sunar: DNS sorgularınızı kendi altyapıları üzerinden proxy'leyerek görünür sorgu sayısını 1-3 arasında tutar.

Bu çözümün dezavantajı, nihai SPF kararının üçüncü taraf bir servise bağımlı hale gelmesidir. Servis kesintisi yaşanırsa SPF doğrulaması da etkilenir.

4. SPF Makrolarını Kullanın

RFC 7208 Bölüm 7, %{d}, %{i}, %{s} gibi makro değişkenleri tanımlar. exists mekanizmasıyla makrolar birleştirilerek tek bir DNS sorgusuyla çok sayıda IP kontrolü yapılabilir. Bu yöntem ileri düzey yapılandırma gerektirir ve genellikle büyük ölçekli e-posta altyapılarında tercih edilir.

5. Alt Alan Adı Göndericisi Stratejisi

Pazarlama e-postalarını bilgi@haber.alanadiniz.com, destek yazışmalarını destek@alanadiniz.com gibi farklı alt alan adları üzerinden göndermek, her alt alan adına ayrı ve daha az mekanizma içeren bir SPF kaydı atamanıza olanak tanır. Bu yaklaşım hem SPF hem de DMARC (RFC 7489) yönetimini basitleştirir.

Çözüm Sonrası Doğrulama

SPF kaydını güncellendikten sonra DNS TTL süresi dolmadan değişiklikler yayılmaz. TTL süreniz 3600 saniye (1 saat) ise güncellemeden 1 saat sonra test yapın. Doğrulama için:

DMARC raporlarını (RFC 7489 kapsamında) etkinleştirdiyseniz, rua adresine gelen XML raporlarda spf alanındaki result değerini de izleyin.

Sık Sorulan Sorular

SPF "PermError: too many DNS lookups" hatası ile "SoftFail" arasındaki fark nedir?

PermError, SPF kaydının değerlendirilemediği anlamına gelir; bu kalıcı bir yapılandırma hatasıdır. SoftFail (~all) ise kaydın başarıyla değerlendirildiği ancak gönderici IP'nin yetkili olmadığı anlamına gelir. PermError durumunda alıcı sunucu, SPF'nin herhangi bir sonucunu kullanamaz; bu durum DMARC başarısızlığına da yol açabilir.

10 DNS sorgu sınırı neden bu kadar düşük tutulmuş?

RFC 7208 bu sınırı tasarlarken iki kaygıyı dengelemiştir: alıcı sunuculardaki DNS yükünü sınırlamak ve sonsuz özyineleme riskini (SPF döngülerini) önlemek. 2014'te bu sınır makul görünüyordu; bugün bulut servislerin çoğalmasıyla yetersiz kalmaktadır. IETF, bu sınırın artırılması için çeşitli tartışmalar yürütmüş ancak RFC 7208'in yerini alacak yeni bir standart henüz yayımlanmamıştır.

Google Workspace SPF kaydı kaç DNS sorgusu tüketiyor?

include:_spf.google.com doğrudan birkaç alt kayda dallanır ve bu dalların bazıları kendi içinde ek sorgular yapar. Gerçek sayı Google'ın altyapı yapısına bağlıdır ve zaman içinde değişebilir; dolayısıyla MXToolbox gibi bir araçla güncel sayıyı doğrulamak en güvenilir yöntemdir.

ptr mekanizmasını neden kullanmamalıyım?

RFC 7208 Bölüm 5.5, ptr mekanizmasının kullanımını açıkça önermez ("do not use"). Ters DNS (PTR) sorguları yavaştır, güvenilmez olabilir ve aynı IP bloğunu paylaşan kötü aktörlerin spoofing saldırısına kapı aralayabilir. Ek olarak birden fazla DNS sorgusu tüketir.

SPF düzleştirme araçları güvenli midir?

Güvenilir satıcıların araçları teknik olarak çalışmaktadır; ancak SPF kararını üçüncü taraf altyapısına bağımlı kılmak operasyonel bir risk içerir. Satıcı kesintiye uğrarsa veya hizmetini sonlandırırsa SPF doğrulamanız bozulabilir. SLA'ları ve uptime taahhütlerini dikkatlice değerlendirin.

Birden fazla SPF kaydı tanımlarsam ne olur?

RFC 7208 Bölüm 3.2, bir alan adının yalnızca tek bir SPF TXT kaydına sahip olması gerektiğini belirtir. Birden fazla v=spf1 kaydı tespit edilirse sonuç PermError'dur. DNS yönetim panelinizde yinelenen kayıtları kontrol edin ve birleştirin.

Toplam sorgu sayımı 9 iken hâlâ PermError alıyorum, bu neden olabilir?

Sorgu sayısını test ettiğiniz araç, kaydı sizin bakış açınızdan değerlendiriyor olabilir. Alıcı sunucular farklı DNS çözümleyicileri kullanır ve bazı include hedefleri zamanla yeni alt mekanizmalar ekleyerek sayıyı artırmış olabilir. Google Admin Toolbox ile alıcı perspektifinden test yapın ve sayıyı 7-8'de tutmayı hedefleyin; bu tampon, olası değişikliklere karşı sizi korur.

DMARC bu hatadan nasıl etkilenir?

DMARC (RFC 7489), SPF ve DKIM doğrulama sonuçlarını kullanır. SPF PermError döndürdüğünde, DMARC SPF hizalamasını "geçemedi" (fail) olarak değerlendirir. Politikanız p=quarantine veya p=reject ise bu durum e-postalarınızın karantinaya alınmasına veya reddedilmesine yol açar. DKIM bağımsız çalıştığından, DKIM doğru yapılandırılmışsa DMARC hizalaması yine de geçebilir; ancak SPF sorununu mutlaka çözmeniz önerilir.

SPF kaydımı güncelledikten sonra ne kadar beklemeliyim?

DNS TTL (Time to Live) değerinize bağlıdır. Çoğu kayıt 1-4 saat TTL ile yapılandırılmıştır; büyük değişiklikler öncesinde TTL'yi geçici olarak 300 saniyeye (5 dakika) indirirseniz değişiklikler çok daha hızlı yayılır. Değişiklik sonrasında TTL'yi tekrar normal seviyeye getirin.

Connect365 gibi bir toplu posta servisi kullanırken SPF nasıl yapılandırılmalı?

Connect365 hesabınıza eklediğiniz gönderici alan adı için, platform size bir include direktifi sağlar. Bu direktifi mevcut SPF kaydınıza ekleyin ve toplam sorgu sayısının 10'u aşmadığını doğrulayın. Eğer aşıyorsa yukarıda açıklanan düzleştirme veya temizleme adımlarını uygulayın. DKIM imzalama da aktif olduğundan, SPF sorunu yaşansa bile DKIM üzerinden DMARC hizalaması sağlanabilir; ancak her iki mekanizmanın da düzgün çalışması teslim edilebilirliği en üst düzeye taşır.

Kurumsal e-postaya ₺99'a geçin

Reklamsız, KVKK uyumlu; kurulum ve geçiş ücretsiz, mailleri biz taşırız.

📞 0312 434 35 34
Haziran kampanyası

Ücretsiz taşıma kampanyası
tüm e-postalarınızı biz taşıyoruz

₺99/kullanıcı/ay ₺199 %50 indirim

Kurulum + migrasyon ücretsiz. KVKK uyumlu, Türkiye'de barındırma. 7/24 Türkçe destek.

Kampanya 30 Haziran'a kadar geçerlidir.

WhatsApp 0312 434 35 34