%40'a varan fırsatlar!
Kampanyaları İncele

CNAME Nedir, Ne İşe Yarar?

📌 Öne Çıkan Noktalar

CNAME ile alakalı bilmeniz gereken 5 kritik nokta;

  1. CNAME (Canonical Name), bir alan adını başka bir alan adına takma ad olarak bağlayan DNS kayıt türüdür.
  2. CNAME kayıtları, özellikle www, blog ve shop gibi alt alan adlarının yönetiminde ve üçüncü taraf hizmet entegrasyonlarında kullanılır.
  3. CNAME ile A kaydı arasındaki temel fark, CNAME’in başka bir alan adını, A kaydının ise doğrudan IPv4 adresini hedeflemesidir.
  4. CNAME sorgulama işlemi, nslookup ve dig gibi araçlarla gerçekleştirilerek bir alt alan adının hedefi kontrol edilebilir.
  5. CNAME değişikliklerinin görünür hale gelme süresi TTL değerine ve DNS çözümleyicilerinin önbellek durumuna göre farklılık gösterebilir.

CNAME (Canonical Name), DNS (Domain Name System) üzerinde bir alan adını başka bir alan adına takma ad olarak tanımlayan kayıt türüdür. CNAME kaydı sayesinde bir alt alan adı, doğrudan IP adresi belirtilmeden başka bir alan adının DNS kayıtları üzerinden çözümlenebilir.

Bir örnek olarak www.turkishost.com adresi için turkishost.com hedefini gösteren bir CNAME kaydı oluşturulabilir. Böylece www alt alan adı, hedef alan adının adres kayıtları üzerinden çözümlenir. CNAME kayıtları özellikle alt alan adı yönetiminde, bulut hizmetlerinde ve üçüncü taraf platformların alan adı doğrulama süreçlerinde yaygın olarak kullanılır.

CNAME Kaydı Ne İşe Yarar?

CNAME kaydının temel amacı, bir alan adını başka bir alan adına takma ad olarak bağlayarak DNS yönetimini kolaylaştırmaktır. Böylece aynı hizmete erişen farklı alan adları için ayrı IP adresleri tanımlamak gerekmeyebilir.Özellikle birden fazla alt alan adı kullanan web projelerinde CNAME kayıtları, altyapı değişikliklerinin yönetilmesini kolaylaştırabilir. Yeni bir domain sorgulama ve satın alma işleminde veya mevcut alan adının DNS kayıtları düzenlendiğinde, uygun alt alan adları için CNAME tanımlamaları yapılabilir. CNAME kayıtlarının yaygın kullanım amaçları şunlardır:

Alt alan adı tanımlama

www, blog veya shop gibi alt alan adlarını başka alan adlarına bağlamak.

DNS yönetimini kolaylaştırma

Aynı hizmet için birden fazla IP adresi kaydını ayrı ayrı yönetme ihtiyacını azaltmak.

Üçüncü taraf hizmet entegrasyonu

CDN, e-posta hizmetleri ve bulut platformlarının istediği DNS tanımlamalarını yapmak.

Altyapı değişikliklerini kolaylaştırma

Hedef alan adının IP adresi değiştiğinde takma adların aynı hedefi kullanmaya devam etmesini sağlamak.

Bilmekte fayda var

CNAME kaydı, alan adları arasında DNS düzeyinde ilişki oluşturur. Ancak kullanıcıyı tarayıcıda başka bir URL adresine yönlendirmez.

CNAME Kaydı Nasıl Çalışır?

CNAME kaydı, DNS sorgusu sırasında bir alan adının başka bir alan adına işaret ettiğini bildirir. DNS çözümleyici, CNAME yanıtını aldıktan sonra hedef alan adının ilgili adres kayıtlarını çözümleyerek işlemi tamamlayabilir.

Misal olarak www.turkishost.com adresine erişmek isteyen kullanıcının DNS sorgusu, bu ad için tanımlanmış CNAME kaydını bulabilir. Ardından hedef alan adının A veya AAAA kaydı sorgulanarak IP adresine ulaşılır.

CNAME Kaydı Nasıl Çalışır?

CNAME Kaydı Örneği

Bir web sitesinin www alt alan adını ana alan adına bağlamak için aşağıdaki DNS kaydı oluşturulabilir:

Kayıt türüHost / NameValue / Target
CNAMEwwwturkishost.com.

Bu yapılandırmada www.turkishost.com, turkishost.com alan adının DNS adres kayıtlarını kullanır. Hedef alan adının A veya AAAA kaydı değiştiğinde www için ayrıca IP adresi güncellemesi yapılması gerekmez.

CNAME ile DNS Yönlendirmesi Arasındaki Fark

CNAME kaydı ile HTTP yönlendirmesi aynı işlem değildir.

CNAME ve HTTP Yönlendirme Farkı

CNAME

•DNS çözümlemesi sırasında bir alan adını başka bir alan adına takma ad olarak bağlar.
•Tarayıcının adres çubuğundaki URL değişmez.

HTTP 301 / 302 yönlendirmesi

•Tarayıcıya farklı bir URL adresine gitmesini söyler.
•Web sunucusunda veya uygulamada yapılandırılır.

Mesela www.turkishost.com için CNAME oluşturulması, kullanıcının adres çubuğunda otomatik olarak turkishost.com görünmesini sağlamaz. Bu işlem isteniyorsa web sunucusunda veya uygulamada ayrıca HTTP yönlendirmesi yapılandırılmalıdır.

CNAME ile A Kaydı Arasındaki Fark Nedir?

CNAME ve A kayıtları, DNS sisteminde farklı amaçlarla kullanılır. A kaydı bir alan adını IPv4 adresine bağlarken CNAME kaydı bir alan adını başka bir alan adına takma ad olarak tanımlar.

CNAME ve A Kaydı Farkı
Özellik CNAME Kaydı A Kaydı
Hedef Başka bir alan adı IPv4 adresi
Örnek www.turkishost.com → turkishost.com turkishost.com → 192.0.2.10
IP adresi içerir mi? Hayır Evet
Yaygın kullanım Alt alan adları, hizmet entegrasyonları Alan adının sunucuya bağlanması
Hedef IP değiştiğinde Hedefin adres kaydı kullanılır A kaydı güncellenmelidir

Bir web sitesi yeni bir sunucuya taşındığında ana alan adının A kaydı güncellenebilir. www alt alan adı CNAME üzerinden ana alan adına bağlıysa ayrıca bir IP adresi değişikliği yapılması gerekmez.

Dikkat

CNAME kaydının kullanıldığı alan adı üzerinde başka DNS kayıtlarının bulunmasına ilişkin önemli kısıtlamalar vardır.

CNAME Kaydı Nasıl Eklenir?

CNAME kaydı, alan adının DNS yönetimini sağlayan panel üzerinden oluşturulur. Kullanılan hizmete göre panelin görünümü değişebilir ancak temel işlem aynıdır. Bir CNAME kaydı oluşturmak için kayıt türü, alt alan adı ve hedef alan adı bilgilerinin doğru girilmesi gerekir.

DNS Yönetim Panelinden CNAME Oluşturma

DNS yönetim panelinde CNAME kaydı eklemek için aşağıdaki adımlar izlenebilir:

  • Alan adının DNS kayıtlarını yönettiğiniz panele giriş yapın.
  • DNS Yönetimi veya DNS Zone bölümünü açın.
  • Yeni kayıt ekleme seçeneğini kullanın.
  • Kayıt türü olarak CNAME seçin.
  • Host alanına www, hedef alanına turkishost.com yazın.
  • TTL değerini belirleyerek kaydı kaydedin.

Örnek olarak;

DNS kaydı
Type: CNAME
Name: www
Target: turkishost.com.
TTL: 3600

Bu örnekte TTL değeri 3600 saniye, yani bir saattir. DNS çözümleyicileri, önbellekleme politikalarına bağlı olarak bu kaydı belirtilen süre boyunca saklayabilir.

CNAME Kaydı Eklerken Dikkat Edilmesi Gerekenler

En önemli kural

CNAME tanımlanan DNS adında başka kayıt türleri bulunmamalıdır. Mesela www.turkishost.com için CNAME oluşturulduysa aynı ad üzerinde A veya AAAA kaydı tanımlanmamalıdır.

Ayrıca şu noktalara dikkat edilmelidir;

✓CNAME hedefi bir IP adresi değil, alan adı olmalıdır.
✓Hedef alan adının DNS üzerinden çözümlenebilir olması gerekir.
✓CNAME kayıtları kendi kendilerine veya birbirlerine döngü oluşturacak şekilde tanımlanmamalıdır.
✓Alan adının kökünde standart CNAME kaydı kullanılmamalıdır.
✓Hedef hizmetin SSL sertifikası ve web sunucusu yapılandırması kontrol edilmelidir.

Kök alan adında CNAME benzeri çözümler

Bazı DNS sağlayıcıları kök alan adlarında CNAME benzeri işlevler sunan ALIAS, ANAME veya CNAME flattening özelliklerini destekler. Bunlar standart CNAME kaydından farklı mekanizmalarla çalışır.

CNAME Kaydı Nasıl Sorgulanır?

CNAME sorgulama işlemi, bir alan adının hangi hedef alan adına takma ad olarak bağlandığını öğrenmek için gerçekleştirilir. Bu işlem Windows, macOS ve Linux işletim sistemlerinde komut satırı araçlarıyla yapılabilir.

Windows Üzerinden CNAME Sorgulama

Windows işletim sisteminde Komut İstemi açılarak aşağıdaki komut kullanılabilir:

Windows · Komut İstemi
nslookup -type=CNAME www.turkishost.com

Komut, ilgili alan adı için DNS sunucusundan CNAME kaydını sorgular. Sonuçta bir CNAME tanımı bulunuyorsa hedef alan adı görüntülenebilir.

macOS ve Linux Üzerinden CNAME Kontrolü

macOS ve Linux sistemlerinde dig komutu kullanılabilir:

macOS / Linux · Terminal
dig www.turkishost.com CNAME

Daha kısa bir sonuç almak için:

macOS / Linux · Terminal
dig +short www.turkishost.com CNAME
Örnek çıktı
turkishost.com.

Bu sonuç, www.turkishost.com adresinin turkishost.com alan adına takma ad olarak bağlandığını gösterir. Farklı bir DNS çözümleyicisi üzerinden kontrol yapmak için aşağıdaki komut da kullanılabilir:

macOS / Linux · Terminal
dig @8.8.8.8 www.turkishost.com CNAME

Bu sorgu, Google Public DNS üzerinden gerçekleştirilir. Böylece farklı DNS çözümleyicilerinin aynı kaydı döndürüp döndürmediği karşılaştırılabilir.

CNAME Kaydı Hataları ve Çözüm Yöntemleri

CNAME kayıtları yanlış yapılandırıldığında web sitesi erişim sorunları, DNS çözümleme hataları veya üçüncü taraf hizmetlerde doğrulama problemleri yaşanabilir. Yaygın CNAME hataları ve çözüm yöntemleri şunlardır:

Sorun Olası neden Çözüm
CNAME kaydı eklenemiyor Aynı ad üzerinde başka DNS kayıtları bulunuyor. Çakışan kayıtları kontrol edin.
Alt alan adı açılmıyor Hedef alan adı çözümlenemiyor. Hedefin DNS kayıtlarını doğrulayın.
Eski hedef görüntüleniyor DNS önbelleği henüz güncellenmedi. TTL ve DNS sorgu sonuçlarını kontrol edin.
DNS çözümleme başarısız CNAME döngüsü oluşmuş olabilir. Kayıt zincirini inceleyin.
DNS doğru, site açılmıyor Web sunucusu veya SSL yapılandırması eksik. Hedef sunucunun alan adı desteğini kontrol edin.

Sorun her zaman DNS kaynaklı değildir!

CNAME kaydının doğru görünmesine rağmen web sitesinin açılmaması, sorunun mutlaka DNS kaynaklı olduğu anlamına gelmez.

Hedef sunucuda ilgili alan adı için sanal host tanımı bulunmuyorsa DNS çözümlemesi başarılı olsa bile web sitesi beklenen şekilde görüntülenmeyebilir. Benzer şekilde SSL sertifikasının ilgili alt alan adını kapsamaması, HTTPS bağlantılarında güvenlik uyarılarına neden olabilir.

CNAME Kaydı Değişiklikleri Ne Kadar Sürede Aktif Olur?

CNAME kaydında yapılan değişikliklerin farklı DNS çözümleyicilerinde görünür hale gelmesi, TTL değerine ve önbellekleme durumuna bağlıdır. Örnek olarak mevcut bir CNAME kaydının TTL değeri 3600 saniyeyse bazı DNS çözümleyicileri eski yanıtı önbellek süresi dolana kadar kullanmaya devam edebilir.

Yeni oluşturulan kayıtların görünür hale gelmesi ise negatif önbellekleme gibi farklı etkenlerden de etkilenebilir. Bu nedenle CNAME değişiklikleri bazı kullanıcılarda kısa sürede görünürken diğerlerinde daha geç sonuç verebilir.

Planlı geçişlerde

DNS değişikliklerinin her kullanıcıya aynı anda ulaşması garanti değildir. Özellikle planlı altyapı geçişlerinde TTL değerinin önceden düşürülmesi ve eski hizmetin geçiş tamamlanmadan kapatılmaması önerilir.

DNS kayıtlarının güncellenme sürecini daha ayrıntılı öğrenmek için daha önce hazırladığımız DNS Propagation Nedir? içeriğinden de yararlanabilirsiniz.

Sıkça Sorulan Sorular

Farklı alt alan adları için ayrı CNAME kayıtları oluşturulabilir. Örneğin blog.turkishost.com ve shop.turkishost.com farklı hedef alan adlarına bağlanabilir. Ancak her kayıt kendi DNS adı için geçerli olan CNAME kurallarına uymalıdır.

CNAME, tarayıcıda URL yönlendirmesi gerçekleştirmez. Yalnızca DNS çözümleme sırasında bir alan adını başka bir alan adına takma ad olarak bağlar. Tarayıcı adresinin değişmesi için HTTP 301 veya 302 gibi yönlendirmeler gerekir.

CNAME kaydı silindiğinde ilgili alt alan adı, bu kayıt üzerinden hedef alan adına çözümlenemez. Başka uygun DNS yapılandırması yoksa alt alan adına erişim başarısız olabilir. Önceden önbelleğe alınmış yanıtlar ise TTL süresi boyunca kullanılmaya devam edebilir.

CNAME kaydının tek başına doğrudan bir SEO sıralama avantajı bulunmaz. Ancak hatalı DNS yapılandırmaları web sitesinin erişilebilirliğini etkileyebilir. Ayrıca CNAME kaydı, HTTP yönlendirmesi veya canonical URL tanımlamasının yerine geçmez.

Yorumlarınız bizim için değerli

Yorum yapın

Turkishost Blog
Logo