Ortak Network Dosyaları
Her ne kadar dağıtımların network ayarlarını yaparken farklılıklar olduğunu gördüysek de, bazı dosyalar tüm sistemlerde aynı işlevi görmektedir. Bu bölümde bu dosyaları inceleyeceğiz.
hostname
Sistemin kendi ismini bilmesi için düzenlenmesi gereken iki dosyadan biridir. /etc/hostname
yolundadır. Bu dosyanın içinde tek satır bulunur.
Bu dosyanın düzenlenmesi eskisi kadar önem arz etmemektedir, aşağıdaki dosyalar daha kritiktir.
hosts
Sistemin adreslere karşılık isim tuttuğu dosyadır.
Yukarıdan görüleceği gibi, sistemin localhost'u tanıması için 127.0.0.1'e işaret etmesi gerekir. Benzer şekilde hostname'de tanımladığımız değer de burada belirtilmelidir.
Alttaki satırlar ise kullanıcının kendince yarattığı kısa yollardır. Burada gördüğünüz plugged.in değeri sitenin gerçek adresidir. /etc/hosts
dosyasında yer alması, herhangi bir şekilde DNS'lerden alınan bilginin önüne geçilmesi anlamına gelir. Kısacası artık sistem üzerinde her program plugged.in adresine gitmek için 94.103.33.130 IP'sini kullanacaktır. Eğer buraya başka bir değer, örneğin 94.103.32.32 yazsaydık, sistem üzerinde her program plugged.in'e gidecekken DNS'lere bakmadan 94.103.32.32'ye yönlenecekti, ve veritech.net sayfası cevap verecekti.
host dosyası manual dosyasına erişmek için
/etc/nsswitch.conf
Bu dosya, sistemin isim çözme (örneğin, ana bilgisayar adlarını IP adreslerine çevirme) gibi işlemler için hangi kaynakları (örn. files
- /etc/hosts
, dns
) ve hangi sırayla kullanacağını belirler. Özellikle hosts:
satırı önemlidir:
Bu satır, bir ana bilgisayar adı çözümlenirken önce /etc/hosts
dosyasına (files
), sonra DNS sunucularına (dns
), sonra da sistemin kendi ana bilgisayar adına (myhostname
) bakılacağını belirtir.
/etc/resolv.conf
Bu dosya, sistemin alan adı çözümlemesi (DNS) için kullanacağı nameserver (DNS sunucusu) adreslerini ve alan adı arama listesini (search domain) tanımlamak için kullanılır.
Ancak Dikkat: Modern Linux sistemlerinde /etc/resolv.conf
dosyası genellikle doğrudan düzenlenmez. Çoğu zaman bu dosya, NetworkManager veya systemd-resolved
gibi ağ yönetim servisleri tarafından otomatik olarak oluşturulur ve yönetilir. Manuel olarak yapılan değişiklikler, servis yeniden başladığında veya ağ bağlantısı değiştiğinde kaybolabilir.
Yapısı: Eğer manuel olarak düzenleniyorsa veya otomatik olarak oluşturulduğunda, genellikle aşağıdaki gibi görünür:
nameserver <IP_adresi>
: Kullanılacak DNS sunucusunun IP adresini belirtir. Genellikle birden fazlanameserver
satırı bulunabilir (yedeklilik için).search <alan_adı1> <alan_adı2> ...
: Tam olmayan ana bilgisayar adları çözümlenirken denenecek alan adlarının listesini belirtir. Örneğin,ping server1
komutu çalıştırıldığında sistem önceserver1.example.com
'u, sonraserver1.internal.example.com
'u çözmeye çalışır.domain <alan_adı>
: Sistemin yerel alan adını belirtir.search
listesindeki ilk alan adı olarak davranır. Genelliklesearch
veyadomain
direktiflerinden sadece biri kullanılır.
Modern Sistemlerde Yönetim:
NetworkManager: DHCP'den alınan veya bağlantı ayarlarında statik olarak belirtilen DNS sunucularını kullanarak
/etc/resolv.conf
dosyasını (genelliklesystemd-resolved
aracılığıyla veya doğrudan) yönetir. DNS ayarlarını değiştirmek içinnmcli
veyanmtui
kullanılmalıdır.systemd-resolved: Bu servis aktif olduğunda,
/etc/resolv.conf
genellikle/run/systemd/resolve/stub-resolv.conf
dosyasına bir sembolik link olur. Bustub-resolv.conf
dosyası sadece127.0.0.53
adresini içerir. Gerçek DNS sunucularısystemd-resolved
tarafından yönetilir veresolvectl status
komutu ile görülebilir. DNS sunucularısystemd-networkd
yapılandırması (.network
dosyaları) veya NetworkManager aracılığıylasystemd-resolved
'a iletilir.
Özetle, /etc/resolv.conf
dosyasının içeriğini anlamak önemli olsa da, modern sistemlerde bu dosyayı doğrudan düzenlemek yerine, ağı yöneten servisin (NetworkManager, systemd-networkd) yapılandırma araçlarını kullanmak gerekir.
Detaylı bilgi için resolv.conf(5)
ve nsswitch.conf(5)
man sayfalarına bakılabilir.
Last updated