Hosts dosyası, bir cihazdaki hostname veya alan adı ile seçilen IP adresi arasında yerel bir eşleme kuran metin dosyasıdır. İşletim sisteminin ad çözümleyicisi bu kaydı kullandığında uygulama, DNS sorgusundan alınacak adres yerine hosts dosyasındaki IP adresine bağlanmayı dener.

Bu işlem yalnız kaydın bulunduğu cihazı etkiler. Alan adının yetkili DNS kayıtları, diğer kullanıcıların gördüğü sonuçlar, sunucunun ağ arayüzündeki IP adresi ve internet servis sağlayıcısının atadığı adres değişmez.

“Hosts dosyasıyla alan adı yönlendirme” ifadesi yaygın olsa da burada yapılan işlem bir web yönlendirmesi değildir. Bu dosya URL yolunu veya bağlantı protokolünü değiştirmez. Tarayıcıya başka bir URL gönderen HTTP 301 veya 302 yanıtı oluşmaz; yalnız ana makine adı için kullanılacak hedef IP adresi yerel olarak seçilir.

Hosts Dosyasında Alan Adı Eşlemesinin İşleyişi

Bir uygulama alan adıyla bağlantı kurmak istediğinde bu alan adını genellikle işletim sisteminin yerel çözümleyicisine iletir. Çözümleyici, işletim sistemi ve ağ yapılandırmasına göre yerel kayıtları, önbelleği ve DNS kaynaklarını belirli bir sırada değerlendirir. Hosts dosyasında eşleşen bir ad bulunduğunda bu yerel sonuç normal DNS çözümlemesinin önüne geçebilir.

  1. Uygulama bağlanmak istediği ana makine adı için adres ister.
  2. Çözümleyici, yapılandırılan ad çözümleme sırasına göre hosts kayıtlarını değerlendirir; bazı sistemler bu kayıtları önbelleğe yükleyerek kullanır.
  3. Hosts kaydı bu sırada kullanılır ve adla eşleşirse kayıtlı IPv4 veya IPv6 adresi uygulamaya döndürülür.
  4. Yerel kaynaklarda sonuç bulunamaz ve yapılandırma DNS sorgusuna izin verirse çözümleyici DNS sunucusuna başvurur. Uygulamanın kendi çözümleme yöntemini kullanması bu sırayı değiştirebilir.

Eşleşme ana makine adı düzeyindedir. Ana alan adı ile www alt alan adı farklı adlar olduğundan, ikisini de kullanacağınız bir testte her birini ayrı ayrı kayda ekleyin. Hosts dosyasının temel biçimi, wildcard DNS (joker karakterli DNS kayıtları) gibi tek bir kalıpla birden çok adı eşleştiremez.

Hosts Kaydı, DNS Kaydı ve Statik IP Adresi Arasındaki Farklar

Aynı IP adresi farklı yönetim katmanlarında kullanılabildiği için bu işlemler kolayca karıştırılır. Aşağıdaki karşılaştırma, hangi değişikliğin nerede etkili olduğunu gösterir.

İşlemDeğiştirdiği KatmanEtki AlanıDeğiştirmediği Unsur
Hosts eşlemesiCihazdaki yerel ad çözümlemesiYalnız düzenlenen cihazYetkili DNS ve sunucunun IP adresi yapılandırması
DNS A veya AAAA kaydıDNS bölgesindeki alan adı ve IP adresi eşlemesiBu DNS kaydını çözümleyen istemcilerSunucunun ağ arayüzüne atanmış adres
Statik IP adresi atamasıCihazın, sunucunun veya yönlendiricinin ağ arayüzü; internet bağlantısında ise internet servis sağlayıcısının adres atamasıİlgili ağ arayüzü ya da bağlantıAlan adının hangi adrese çözümlendiği
HTTP yönlendirmesiWeb sunucusu veya uygulama yanıtıİsteği alan web istemcileriİlk ad çözümleme sonucu

Hosts dosyasıyla gerçek IP adresini sabitleyemezsiniz; yalnız uygulamanın belirli bir ana makine adı için hangi IP adresine bağlanacağını yerel olarak belirleyebilirsiniz. Bu eşleme; DHCP sunucusunda belirli bir cihaza IP adresi ayırma işleminin, sunucu arayüzü yapılandırmasının veya internet servis sağlayıcısından alınan statik IP adresi hizmetinin yerini tutmaz.

Hosts Eşlemesi Nasıl Eklenir ve Test Edilir?

Dosya yolu, düzenleme yöntemi ve gerekli yetki işletim sistemine göre değişir. Her sistemde aynı yolu veya komutu kullanmak yerine, kullandığınız işletim sisteminin resmi belgesindeki adımları izleyin.

  1. Hedefi doğrulayın: Test edilecek ana makine adını ve bağlantının ulaşması gereken IP adresini sunucu veya barındırma hizmetinin yönetim panelinden doğrulayın. Eski, tahmini ya da yalnız başka bir ortamda geçerli adres kullanmayın.
  2. Mevcut dosyayı yedekleyin: İşletim sistemine uygun hosts dosyasını bulup düzenlemeden önce geri alınabilir bir kopya oluşturun.
  3. Kaydı ayrı satıra ekleyin: Önce IP adresini, ardından boşlukla ayrılmış ana makine adlarını yazın. Aşağıdaki satır yalnız biçimi göstermek için temsili bir örnektir.
    192.0.2.10 ornek.example www.ornek.example
  4. Dosya biçimini koruyun: Dosyayı düz metin olarak ve işletim sisteminin beklediği adla kaydedin. Bazı sistemlerde kayıt için yönetici yetkisi gerekir.
  5. Bağlantıyı uygulamayla test edin: İlgili ana makine adıyla bağlantı kurup doğru sunucunun yanıt verdiğini kontrol edin. Yalnız DNS sunucusuna doğrudan sorgu gönderen bir aracın çıktısını tek kanıt olarak kullanmayın.
  6. Geçici kaydı kaldırın: Taşıma testi, yeni sunucu doğrulaması veya geliştirme çalışması tamamlandıktan sonra eklediğiniz satırı silin. Alan adının normal DNS çözümlemesiyle beklenen IP adresine çözümlendiğini ve uygulamanın yerel kayda bağımlı kalmadığını doğrulayın.

Hosts Kaydıyla Yapılan Testin Sonuçları Nasıl Yorumlanır?

Ana makine adının hosts kaydındaki IP adresine çözülmesi, hedef hizmetin mutlaka çalışacağı anlamına gelmez. Dosya yalnız adın hangi IP adresine çevrileceğini belirler; ağ yolu, güvenlik duvarı, dinlenen port, web sunucusu ve uygulama yapılandırması ayrı katmanlardır.

  • Bağlantı eski sunucuya gidiyorsa: İşletim sistemi, uygulama veya tarayıcı önbelleği; proxy, VPN ya da uygulamaya özel çözümleme davranışı etkili olabilir. Önbellekten şüpheleniyorsanız ilgili uygulamayı yeniden başlatmak veya işletim sisteminin desteklediği yöntemle ad çözümleme önbelleğini temizlemek gerekebilir.
  • DNS aracı farklı IP adresi gösteriyorsa: nslookup gibi komutlar doğrudan DNS sunucusunu sorgular. Bu sonuç, yerel uygulamanın hosts kaydını kullanmadığını tek başına kanıtlamaz.
  • Yanlış web sitesi görünüyorsa: Birden fazla web sitesi aynı IP adresinde barındırılıyorsa hedef sunucuda kullanılan ana makine adı için doğru sanal sunucu yapılandırması bulunmalıdır.
  • HTTPS uyarısı çıkıyorsa: Sunucunun sunduğu sertifika kullanılan ana makine adı ile eşleşmiyor olabilir. Uyarıyı atlamak yerine sunucu ve sertifika yapılandırmasını düzeltin.
  • Bağlantı kurulamıyorsa: Hedef IP adresinde hizmet çalışmıyor, port kapalı veya ağ erişimi engelli olabilir; hosts kaydı bu sorunları gidermez.

IPv4 ve IPv6 birlikte kullanılıyorsa uygulama birden fazla adres ailesini değerlendirebilir. Yalnız bir adres türünü eşlemek bazı istemcilerde beklenmeyen sonuca yol açabileceğinden, test edilen hizmetin A ve AAAA kayıtları birlikte kontrol edilmelidir.

Hosts Dosyasıyla Kalıcı Eşleme Yaparken Nelere Dikkat Edilmeli?

Hosts dosyası küçük ve kontrollü testlerde pratiktir; çok sayıda cihazı veya değişken altyapıyı yönetmek için merkezi DNS’in yerini tutmaz. Her cihazdaki kaydın ayrı güncellenmesi gerekir. Ayrıca hosts dosyasında, DNS yanıtlarının ne kadar süre önbellekte tutulabileceğini belirleyen TTL alanı bulunmaz.

  • CDN, yük dengeleme ve hizmeti yedek sisteme aktaran failover çözümlerini kullanan hizmetlerde tek IP adresine bağlanmak güncel olmayan veya uygun olmayan bir uç noktaya götürebilir.
  • Sunucunun IP adresi değiştiğinde eski kayıt bağlantıyı kesebilir ya da başka bir hizmete yöneltebilir.
  • Beklenmeyen hosts değişiklikleri bağlantı sorununa veya yanlış hedefe erişime neden olabilir. Kaynağını bilmediğiniz kayıtları inceleyin ve gerekirse yetkili sistem yöneticisine bildirin.
  • Bir ana makine adını belirli bir IP adresine eşlemek erişim denetimi, kimlik doğrulama, şifreleme veya kötü amaçlı yazılım koruması sağlamaz.

Çok sayıda cihazın bulunduğu kurumsal ortamlarda merkezi DNS, özel DNS bölgesi veya denetlenen yapılandırma yönetimi daha izlenebilir bir çözüm sunar. Hosts dosyası kullanılacaksa yönetim sürecinde her kaydın sorumlusu, amacı, eklenme tarihi ve kaldırılacağı koşul açıkça yazılmalıdır.