Linux DNS değiştirme sorunsalı ve çözümü

Linux dünyasına adım attım atalı bir DNS sorunsalı duymuşumdur. Ya DNS’ler çalışmaz, ya nasıl yazılacağı bilinmez, yada DNS’ler yazılır, ama PC restart edilince hiç kaydedilmemiş gibi eski haline geri döner. Genel bilinen anlamı ile kısaca üzerinden geçeyim istiyorum. yoksa teknik olarak DNS nedir, amaçları nedir, resolving nasıl olur gibi soru ve sorunlarınız varsa öncelikle şu adresi okumanızı öneririm;
https://tr.wikipedia.org/wiki/DNS

Halk dilinde DNS değiştirme konusu konuşulunca biliriz ki yasak yada Türkiye’ye yayın yapmayan sitelere giriş amacı anlaşılır. Bu operasyon özellikle youtube’un yasaklanması ve başbakanın “ben girebiliyorum” açıklaması ile tavan yapmıştır.

Linux üzerinde nasıl DNS değiştiririz? 

Ben her daim bu işlemleri konsol üzerinden yapmayı tercih ediyorum. Önce konsol üzerinden root yetkilerimizi alıyoruz. Bunu için yazmamız gereken;

sudo su

sonra dilediğimiz bir metin editörü ile dns kayıtlarının bulunduğu /etc/resolv.cfg dosyasını açıyoruz.

nano /etc/resolv.conf

dosya içine kullanacağımız dnsleri yazıyor, kaydedip çıkıyoruz. Şahsen ben google’a ait nameserverları tercih ediyorum.

nameserver 8.8.8.8
nameserver 8.8.4.4

siz alternatif olarak theos , neustar , opendns yada norton‘a ait dns’ler kullanabilirsiniz.

Genelde atlanan konu bu değişimin yapılıp kaydedilmesinden sonra dosyanın bu değişimi sonraki oturumlarda korumasının sağlanmasıdır.

Nano ile kaydedip kapattıktan sonra, bilgisayarınız kapatıp açtığınızda DNS’lerin kaybolmaması için dosyayı değişikliğe dair kilitlemeniz gerekiyor.

chattr +i /etc/resolv.conf

Bu değişikliği bilgisayarınızı açıp kapamadan görmek istiyorsanız network servisinizi yada sürümünüze göre yöneticinizi tekrar başlatmanız yeterlidir;

/etc/init.d/networking restart

yada

/etc/init.d/network-manager restart

Artık istediğiniz siteye girebiliyor olmalısınız.

Ek olarak, /etc/resolv.conf dosyanızı kilitlediniz, bu sebeple bir daha yazı yazamazsınız. Tekrar yazı yazmak isterseniz dosyanızın kilidini açmanız gerekir. Bunu için yapmanız gereken;

chattr -i /etc/resolv.conf

Genel kullanım olarak chattr ile ilgili detaylı bilgi gerekebilir. Kullanımı hakkında bilgi sahibi olmak isteyebilirsiniz. Bunun içinse şu adres iyi gibi görünüyor;
http://belgeler.gen.tr/man/man1/man1-chattr.html

Herkese iyi çalışmalar

Hakan Müştak
Software Developer

 

14/08/2013 – 20:42 EKLEME

Tekrar merhaba,
Yorumdaki soruya/soruna, makalenin bir parçası olması için burada cevap vermek istedim.

Açıkcası resolv.conf dosyası ile ilgili başıma benzer bir sorun gelmedi. Bende merak ettim biraz araştırdım. Çözümü buldum.

Öncelikle  resolv.conf dosyamızın adını değiştireceğiz/taşıyacağız;

mv /etc/resolv.conf.YEDEK

sonra text editorle yeni bir resolv.conf dosyası yazacağız. Ben mint üzerindeyim ve  pluma‘yı kullanıyorum, siz gedit yada nano kullanabilirsiniz;

pluma /etc/resolv.conf

boş bir text dosya açılmış olmalı. Sonra yukarıda nameserver yazdığımız yerden devam ediyoruz.

Başka bir sorun olursa, gene dönüşlerinizi bekliyorum. Hep birlikte çözelim.

Herkese iyi çalışmalar

 


3 yorum

  1. Ersin Eryılmaz dedi ki:

    Dosyayı kilitlemek isterken hata alıyorum. Restart etsemde dnsler devreye girmiyor. Sorun ne olabilir?

    Hata şu :
    chattr: Operation not supported while reading flags on resolv.conf

  2. hmustak dedi ki:

    Üstte konuya ekleyerek sorunuza çözümü yazdım, geri dönüşünüzü bekliyorum.

  3. Cerem Cem ASLAN dedi ki:

    Bende de aynen şu hata vardı:
    chattr: Operation not supported while reading flags on resolv.conf

    Dediğiniz gibi, yeni dosya yaratınca problem çözüldü. Fakat neden böyle oldu acaba? Müsait bir zamanda bu iki dosyayı incelemek lazım.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

question razz sad evil exclaim smile redface biggrin surprised eek confused cool lol mad twisted rolleyes wink idea arrow neutral cry mrgreen

*

Captcha Kontrolü * Zaman aşımı, sayfayı tekrar yükleyin


Top