Düzeltilmiş Yanıt:
Ana bilgisayarın kendisi gerçek FQDN'yi işlemez. DNS tarafından ele alınır . FQDN (Tam Nitelikli Etki Alanı Adı), adları IP adreslerine çeviren DNS tarafından işlenir. /etc/hosts
Dosyayı kullanarak, esasen DNS sunucusunu geçersiz kılıyorsunuz. Bilgisayar /etc/hosts
, IP adresine bir ana bilgisayar adı için bir giriş tanımlı olup olmadığını görmek için önce dosyaya bakar . Görünüşteki girişler /etc/hosts
aşağıdaki gibidir:
127.0.0.1 localhost
127.0.1.1 terrance-ubuntu.local terrance-ubuntu
Bu girişler dağıtımlara özgü değildir. Tüm işletim sistemleri bu satırlar için aynı biçimi kullanır. Yalnızca hosts
dosyanın konumu değişir. Linux, genellikle /etc/
Windows'ta tipik olarak C:\Windows\System32\drivers\etc\
klasörde bulunduğu klasörde bulunur.
Bu diziyi kırarak, terrance-ubuntu.local
uygulamaların bilgisayarımdan ayrılmamasını bilmesi için hem FQDN'mın kendisi olan FQDN'nin kendisinin hem terrance-ubuntu
de ana bilgisayar adı olan uygulamaların bilgisayarımdan ayrılmamasını bilmesi için atadığımı görebilirsiniz. 127.0.0.1 ( localhost ). Sistemimin ana bilgisayar adımı olarak atamanın, ana 127.0.1.1
bilgisayarımı ağda bulan diğer bilgisayarlar üzerinde hiçbir etkisi yoktur. DNS düzgün çalışıyorsa, ana bilgisayar adımı olarak görürler 10.0.0.100
. Kullanmanın nedeni, 127.0.1.1
uygulamalarımın sistemimi daha hızlı bulmasıdır, çünkü sistemimin ağımda başka bir yerde olmadığını bilecektir. Gerçek ana bilgisayar .local
adım FQDN'm olmakla birlikte ,.local
aslında ağımdaki başka bir DNS sunucusu olan yönlendiricim aracılığıyla kurduğum Etki Alanım.
Şimdi, yerel ağdaki DNS hizmetlerinin IP adreslerine ana bilgisayar adları veya FQDN'ler atamadığını, ancak yerel ağdaki ana bilgisayarın IP adresinin ne olduğunu bildiğinizi varsayalım. Daha sonra, o ana makineyi /etc/hosts
dosyanıza atarsınız, böylece her erişmek istediğinizde ana bilgisayarın IP adresini yazmanıza gerek kalmaz. Ana makine bir araç sunucusu, yazıcı veya ağa bağlı başka bir sistem olabilir. Girişi normalde yaptığınız gibi /etc/hosts
dosyaya ekleyin .
Örneğin ağa bağlı yazıcımı kullanacağım. 10.0.0.253 statik IP'ye sahiptir. Yine de adını bilmiyorum. Bunun için onu aramak istiyorum hp_printer
. IP ve bunun için ana bilgisayar adını pingleyeceğim, sonra ekleyeceğim /etc/hosts
.
terrance@terrance-ubuntu:~$ ping -c 2 10.0.0.253
PING 10.0.0.253 (10.0.0.253) 56(84) bytes of data.
64 bytes from 10.0.0.253: icmp_seq=1 ttl=255 time=0.326 ms
64 bytes from 10.0.0.253: icmp_seq=2 ttl=255 time=0.334 ms
terrance@terrance-ubuntu:~$ ping -c 2 hp_printer
ping: unknown host hp_printer
terrance@terrance-ubuntu:~$ sudo vi /etc/hosts
10.0.0.253 hp_printer.local hp_printer
terrance@terrance-ubuntu:~$ ping -c 2 hp_printer
PING hp_printer.local (10.0.0.253) 56(84) bytes of data.
64 bytes from hp_printer.local (10.0.0.253): icmp_seq=1 ttl=255 time=0.334 ms
64 bytes from hp_printer.local (10.0.0.253): icmp_seq=2 ttl=255 time=0.303 ms
Şimdi, daha kolay hatırlanabilecek IP adresi yerine, yazıcı ayarımın web sayfasına verdiğim adla da erişebilirim:
Sizin /etc/resolv.conf dosyası da yardım bulmak konak DNS tarafından kullanılır. Çözümleyici için yapılandırma dosyasıdır. Arama alanı sağlar, böylece bir ana bilgisayar ararken FQDN'nizi her zaman belirtmeniz gerekmez. Ayrıca yerel ağınızın DNS veya ad sunucusu için IP adresini de sağlar. Aşağıdaki search
satır, alan adım local
olan adı gösteriyor.
terrance@terrance-ubuntu:~$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 10.0.0.1
search local
Umarım bu, DNS ve FQDN'lerin nasıl çalıştığını daha iyi anlamamıza yardımcı olur.