Ada sesuatu yang sangat salah dengan instalasi Debian saya saat ini. Sebagian besar program seperti firefox, nslookup, menggali dll mengabaikan entri dalam /etc/hosts
file, sebenarnya saya menggunakan file ini untuk pemblokiran iklan.
sebuah contoh
satu baris dalam /etc/hosts
file
127.0.0.1 www.winaproduct.com
ketika saya melakukannya dig +short www.winaproduct.com
mengembalikan alamat IP masing-masing server, tidak 127.0.0.1
.
Buka www.winaproduct.com
di firefox, ini menunjukkan situs web masing-masing, tetapi ini tidak diharapkan.
Tetapi tidak ada masalah dengan ping
, busybox nslookup
, busybox ping
, resolveip
dll
Jadi apa masalahnya ? Dan bagaimana cara memperbaikinya? Saya pikir masalahnya adalah dengan perpustakaan penyelesaian DNS.
Perbaikan sementara, pengaturan, dnsmasq
dan ubah nameserver
ke 127.0.0.1
dalam /etc/resolv.conf
.
memperbarui
masalah diselesaikan secara ajaib setelah menginstal libnss3
, sebagai ketergantungangoogle-chrome
/etc/nsswitch.conf default tampak seperti hosts: files dns
bagaimana cara mengetahui nslookup
, dig
dll. minta / etc / hosts file terlebih dahulu alih-alih bertanya langsung ke DNS?
tapi mengapa busybox nslookup
, wget
, resolveip
dll bekerja berbeda dari nslookup
, dig
dll?
hosts:
entri itu/etc/nsswitch.conf
?hosts: files dns
Jawaban:
nslookup
,,dig
danhost
alat untuk menanyakan server nama DNS.Jika konfigurasi Anda tidak disediakan oleh server nama (seperti informasi yang diberikan dalam
/etc/hosts
) alat-alat itu tidak akan menunjukkannya, karena mereka langsung menanyakan server nama.Jika Anda ingin memeriksa apakah resolusi "biasa" berfungsi (yaitu cara yang ditentukan
/etc/nsswitch.conf
), Anda dapat menggunakangetent
:sumber
getent hosts www.winaproduct.com
bekerja dengan sempurna, tapinslookup
,dig
,host
dll hanya sebagai contoh, saya ingin di firefox .wget
atau browser lain seperti chrome. Jikagetent
memberikan hasil yang diharapkan, semuanya harus.No Proxy
. Jadi bagaimana cara mengetahuinslookup
,dig
dll. Meminta/etc/hosts
file terlebih dahulu alih-alih bertanya langsung ke DNS? Terima kasih atas komentar Anda yang berharga.Anda dapat menginstal DNSmasq yang akan membaca entri / etc / hosts Anda dan mengimpornya ke cache DNS-nya. Kemudian, semua alat DNS Anda dan aplikasi permintaan DNS seperti dig, host dan nslookup akan menerima jawaban yang berasal dari file / etc / hosts.
sumber