Harici DNS kullanırken neden dig dns sunucusunu 127.0.0.1 olarak bildiriyor?


12

Bağlanmamış ve genellikle DNS sunucum olarak openDNS kullanıyorum.

Koştuğumda dig google.comaldığını söyle SERVER: 127.0.0.1#53(127.0.0.1). 53 numaralı bağlantı noktasında tam olarak ne dinliyor? Bu ilişkisiz mi yoksa dnsmasq ile ilgili bir şey olduğunu (hatta dnsmasq olarak yüklemiş yapmak dnsmasq.confiçinde olmak görünmüyor /etc?)

Resolv.conf var nameserver 127.0.0.1ama sonra ağ yöneticisinde DNS sunucuları iki openDNS adresleri işaret var. Peki burada neler oluyor? yerel ad sunucusu dnsmasq'ı gösteriyor ve bu ağ yöneticisi değerlerini kullanıyor mu? ya da aslında dinleyen bağlanmamış mı?


ne başarmaya çalışıyorsun?
Rahul Patil

3
sadece gerçekten anlamak
fpghost

bu ubuntu sunucusu sürümü nedir veya ne?
Rahul Patil

no desktop
fpghost

Yanıtlar:


15

Varsayılan olarak, NetworkManager, yüklüyse DNS çözümleyicisi olarak Dnsmasq kullanır. Debian tabanlı sistemlerde varsayılan olan Dnsmasq, varsayılan olarak yalnızca komut satırı seçenekleri (ve içeriği /etc/hosts) tarafından belirtilen yukarı akış sunucularına göre adları çözümlediği varsayılan bir yapılandırmada çalışır . Hayır, /etc/dnsmasq.confçünkü bu dosya yalnızca isteğe bağlı dnsmasq paketinde mevcuttur .

Sisteminizin şu anda DNS sorguları için Dnsmasq veya Unbound kullanıp kullanmadığını görmek için çalıştırın netstat -ulnp | grep ":53 ".

Ubuntu 12.04'te NetworkManager diğer DNS çözümleyicileriyle iyi oynamıyor (bkz. Hata 959037 - Thomas Hood'un özeti hemen hemen hepsini kapsıyor). NetworkManager ile birlikte Unbound'u çalıştırmaya devam etmek için en iyi seçeneğiniz NetworkManager'a Dnsmasq'ı çalıştırmamasını söylemektir (NetworkManager'ın kullanmadığı Dnsmasq özelliklerini kullanmadığınız sürece Unbound'a ek olarak ihtiyacınız yoktur). Bunu yapmak için:

  1. Düzenleyen /etc/NetworkManager/NetworkManager.confsatırı yorumlamak için düzenleyin dns=dnsmasq( #bu satırın başına a ekleyin ).
  2. NetworkManager'ı ile yeniden başlatın service network-manager restart.

Ubuntu şu anda Unbound kullanmayı nasıl biliyor? (gerçekten kullanıyor gibi görünüyor); Ben neden gibi bir şey gerekmez olan en ne alıyorum dns=unboundiçinde /etc/NetworkManager/NetworkManager.conf? ve şu anda dns=dnsmasqbu dosyada bulunduğum göz önüne alındığında , Ubuntu neden bağlı değil?
fpghost

@fpghost Hangisini alacağınız hangisinin önce başladığına bağlıdır. Hiçbir ağ olmadan önyükleme yaparsanız, ilk önce başlayacağı için Unbound alırsınız. Bir ağ bağlantısıyla önyükleme yaparsanız, bunun bir savurma olduğunu düşünüyorum.
Gilles 'SO- kötü olmayı bırak'

Tamam, ama gerçekten merak ettiğim şey, dns=...dnsmasq'ın kullanılmasını durdurmak için hattı tamamen yorumlamak yerine, satırı değiştirirsem ne olur dns=unbound? Aksi takdirde NetworkManager, bağlantının yerel çözümleyici olacağını nasıl bilebilir?
fpghost

1

Ubuntu'da 12.04'te dnsmasq, sabit kodlanmış olması nedeniyle varsayılan olarak çalışıyor network-manager. Masaüstü kurulumlarında varsayılan olarak dnsmasq'ı yerel çözümleyici olarak kullanmak Bu sürümün ikinci büyük değişikliği. Bir masaüstü kurulumunda, DNS sunucunuz NetworkManager tarafından yönetilen bir dnsmasq sunucusuna işaret eden "127.0.0.1" olacaktır.

SERVER: 127.0.0.1#53(127.0.0.1)

Bu, sorgunuzun yanıtlarını yerel dns'ten (DNSMASQ) aldığınız anlamına gelir.

Yerel bir çözümleyici istemiyorsanız, aşağıdaki yordamı kullanarak DNSMASQ'yu kapatabilirsiniz.

/etc/NetworkManager/NetworkManager.confDosyayı düzenlemeniz gerekiyor

gksudo gedit /etc/NetworkManager/NetworkManager.conf

ve aşağıdaki satırı

dns=dnsmasq

için

#dns=dnsmasq

Dosyayı kaydet ve çık.

Şimdi network-manageraşağıdaki komutu kullanarak yeniden başlatmanız gerekiyor

sudo systemctl restart network-manager

Referans bağlantısı


1
Tamam, ama aynı zamanda Unbound yüklüyse bu yerel çözümleyici olarak dnsmasq'a göre öncelikli olur mu? ikisi de 53. sırada mı dinliyor? nasıl birlikte olurlar?
fpghost

ayrıca neden /etc/dnsmasq.confyok?
fpghost

@fpghost dnsmasq 127.0.1.1'de dinlerken, her ikisi de 53 numaralı bağlantı noktasında bağlı olmayan 127.0.0.1'de dinler. Bağlanmamış kullanmak için ağ yöneticisi yapılandırmasında dns = unbound öğesini ayarlayabilirsiniz.
talonx

0

Adresinizi çözmek için hangi gerçek DNS sunucusunun kullanıldığını görmek için, DNSMasq kullanırken DIGyalnızca raporlar nedeniyle 127.0.0.1kullanılamaz:

DNSMasq'ta Günlüğe Kaydetmeyi Etkinleştir:

sed -i 's/\#log-queries/log-queries/' /etc/dnsmasq.conf
systemctl restart dnsmasq

DNSMasq günlüğünü kaydedin ve çıktıyı izleyin:

journalctl --unit dnsmasq.service -f

Bir ana bilgisayara ping at:

ping google.ca

Daha sonra, yukarı akış DNS sunucumun (192.168.1.1) bunu çözdüğünü görebilirsiniz:

: query[A] google.ca from 127.0.0.1
: forwarded google.ca to 192.168.1.1
: query[AAAA] google.ca from 127.0.0.1
: forwarded google.ca to 192.168.1.1
: reply google.ca is 172.217.1.3
: reply google.ca is 2607:f8b0:400b:80f::2003
: query[PTR] 3.1.217.172.in-addr.arpa from 127.0.0.1
: forwarded 3.1.217.172.in-addr.arpa to 192.168.1.1
: reply 172.217.1.3 is iad23s25-in-f3.1e100.net
: reply 172.217.1.3 is yyz10s14-in-f3.1e100.net

* .Company.com için şirket VPN'inin arkasında (bölünmüş tünel sırasında) bir ana bilgisayara ping atın

ping box.company.com

Sonuçlar:

: query[A] box.company.com from 127.0.0.1
: forwarded box.company.com to vpn.ser.ver.ip
: query[AAAA] box.company.com from 127.0.0.1
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.