3. SPF Kayıtları

Bir SPF kaydı, alan ismini "HELO" ve "MAIL FROM" kimliklerinde kullanmaya yetkili olan ve olmayan konakların bildirildiği bir DNS özkaynak kaydıdır. Tam bu şekilde olmasa da, bu kayıtta yer alan konaklar izin verilenler ve izin verilmeyenler (hiçbir kategoriye girmeyenler) olarak gruplanır, denebilir.

SPF kaydı tek bir dizgeden oluşur. Bir kayıt örneği:

v=spf1 +mx a:colo.example.com/28 -all

Bu kayıt "spf1" sürümüdür ve 3 yönerge içerir:"+mx", "a:colo.example.com/28" (+ imi örtüktür) ve "-all".

3.1. Yayınlama

SPF uyumlu olmak isteyen alan sahipleri "HELO" ve "MAIL FROM" kimliklerinde kullanılan konaklar için SPF kayıtları yayınlamalıdır. SPF kayıtları DNS ağacında bir alt alan adı altında değil, ilgili oldukları konak ismine, örneğin SRV kayıtlarına yerleştirilir. Bu TXT veya SPF özkaynak kaydı kullanımı ile aynıdır (bkz, DNS Özkaynak Kaydı Türleri).

SPF Kayıtları bölümündeki örnek, bir alan bölge dosyası üzerinden şu satırlarla yayınlanabilir:

example.com.          TXT "v=spf1 +mx a:colo.example.com/28 -all"
smtp-out.example.com. TXT "v=spf1 a -all"

TXT kayıtları üzerinden yayınlarken, başka amaçlarla yayınlanmış başka TXT kayıtlarının varolabileceğine dikkat ediniz. Bunlar boyut sınırlarıyla ilgili sorunlara yol açabilirler (bkz, Kayıt Uzunluğu).

3.1.1. DNS Özkaynak Kaydı Türleri

Bu belge 99 koduyla yeni bir DNS RR türü olarak SPF özkaynak kaydını tanımlar. Bu türün biçimi TXT özkaynak kaydı [RFC1035] ile aynıdır. Her iki tür için de kaydın karakter içeriği [US-ASCII] olarak kodlanır.

Mevcut uygulama (bir TXT kaydı kullanımı) en iyisi olmamakla beraber, henüz yeni özkaynak kaydı türüyle çalışamayan ama hala kullanımda olan pek çok DNS sunucusu ve çözümleyici gerçeklenimi olduğundan bu gereklidir. Bu iki kayıt türlü şema, aynı amaç için ayrılmış bir özkaynak kaydı türünü kullanarak daha iyi bir çözüme geçişin yolunu açar.

Bir SPF uyumlu alan adı her iki özkaynak kaydı türünde de SPF kaydı içermelidir *ÖNERİ*. Bir uyumlu alan adı en az bir türde kayda sahip olmalıdır *ZORUNLU*. Örneğin, Yayınlama bölümündeki kayıtlardan biri yerine şu kayıtlar daha iyidir:

example.com. IN TXT "v=spf1 +mx a:colo.example.com/28 -all"
example.com. IN SPF "v=spf1 +mx a:colo.example.com/28 -all"

Örnek özkaynak kayıtları bu belgede TXT kaydı türünde gösterilmiştir; yine de, bunlar SPF türünde veya her iki türde de yayınlanabilirdi.

3.1.2. Çoklu DNS Kayıtları

Bir alan adı bir yetkilendirme sınamasında bir kayıttan fazlasının seçilmesine sebep olacak şekilde çok sayıda kayda sahip olmamalıdır *ZORUNLU*. Seçim kuralları için Kayıtların Seçilmesi bölümüne bakınız.

3.1.3. Tek DNS Kaydında Çok Sayıda Dizge

[RFC1035]'in 3.3 ve 3.3.14. bölümlerinde tanımlandığı gibi, tek bir metin DNS kaydı (TXT ve SPF'nin ikisi de) birden fazla dizgeden oluşabilir. Eğer yayınlanan bir kayıt çok sayıda dizge içeriyorsa, bu dizgeler aralarına boşluk konmaksızın birleştirilmiş tek bir kayıt gibi ele alınmalıdır *ZORUNLU*. Örnek:

IN TXT "v=spf1 .... ilk" "ikinci dizge..."

kaydı ile aşağıdaki kayıt bir diğerinin eşdeğeri olarak ele alınmalıdır *ZORUNLU*:

IN TXT "v=spf1 .... ilkikinci dizge..."

Çok sayıda dizge içeren TXT ve SPF kayıtları, tek bir kayıtta 255 baytlık azami uzunluğu aşabilecek kayıtları oluşturmak için yararlıdır.

3.1.4. Kayıt Uzunluğu

Belli bir alan isminde yayınlanacak bir SPF kaydı bir sorgunun sonucunda 512 sekizliye sığacak kadar küçük olmalıdır *ÖNERİ*. Bu, eski DNS gerçeklenimlerini TCP'ye toslayıp devrilmekten koruyacaktır. Yanıt uzunluğu bu belgenin kepsamı dışında kalan pek çok şeye bağlı olduğundan, sadece şu söylenebilir: Belirtilen türde (TXT veya SPF) kayıtların tümünün ve DNS isminin toplam uzunluğu 450 karakterin altında kalırsa, DNS yanıtları UDP paketlerine sığacaktır. TXT biçimi sorgular için boyut hesaplanırken, alan adı altında yayınlanmış diğer TXT kayıtları da hesaba katılmalıdır. Tek bir UDP paketine sığamayacak kadar uzun kayıtlar SPF istemcileri tarafından sessizce yoksayılabilirler *SEÇİMLİK*.

3.1.5. İsim Kalıplı Kayıtlar

Yayınlamak için isim kalıplarının kullanılması önerilmez. Eğer bu tür kayıtlar kullanılmışsa dikkatli olunmalıdır. Eğer bir alan bu tür MX kayıtları yayınlıyorsa, aynı sorunlara ve gereksinimlere konu isim kalıbı bildirimlerini de yayınlarsa iyi olur. Özellikle de öznitelik kayıtlarının bulunduğu her konak ve alt alan adı için bu bildirim yinelenmelidir. Örneğin, [RFC1034]'ün 4.3.3. bölümünde verilen örnek şu kayıtlarla genişletilebilirdi:

X.COM.          MX      10      A.X.COM
X.COM.          TXT     "v=spf1 a:A.X.COM -all"

*.X.COM.        MX      10      A.X.COM
*.X.COM.        TXT     "v=spf1 a:A.X.COM -all"

A.X.COM.        A       1.2.3.4
A.X.COM.        MX      10      A.X.COM
A.X.COM.        TXT     "v=spf1 a:A.X.COM -all"

*.A.X.COM.      MX      10      A.X.COM
*.A.X.COM.      TXT     "v=spf1 a:A.X.COM -all"

Uyarı

SPF kayıtları alan içindeki her isim için iki tane olmalıdır: biri isim için, diğeri isim altındaki ağacı kapsayan bir isim kalıbı için.

İsim kalıplarının kullanımından genellikle vazgeçilir, çünkü bunlar alan altında her ismin bulunmasına ve herhangi bir isme yapılan bir sorgunun asla RCODE 3 (İsim Hatası) döndürmemesine sebep olur.