Saya punya 2 mesin di sub-net yang sama menjalankan Debian 5.0. Mereka menggunakan DNS yang sama (/etc/resolv.conf), mereka merutekan ke gateway yang sama (#route) dan mereka memiliki pengaturan iptables yang sama (#iptables -L). Saya dapat melakukan ping dari keduanya, baik ke alamat IP dan ke nama host. Saya dapat menjalankan #host www.google.com dan mendapatkan hasil yang sama pada keduanya. Tetapi masalahnya adalah bahwa pada salah satu dari mereka, saya tidak bisa wget atau curl.
Jadi pada mesin 1 semuanya OK, tetapi pada mesin 2 (dengan pengaturan yang sama seperti mesin 1) Saya tidak bisa wget atau menggulung.
Kesalahan yang saya dapatkan adalah:
# wget google.com
--2009-10-20 16:38:36-- http://google.com/
Resolving google.com... failed: Name or service not known.
wget: unable to resolve host address `google.com'
Tetapi pada mesin 1 itu tidak ada masalah untuk wget atau curl dan kembali:
# wget google.com
--2009-10-20 16:43:55-- http://google.com/
Resolving google.com... 74.125.53.100, 74.125.45.100, 74.125.67.100
Connecting to google.com|74.125.53.100|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
...
Saving to: `index.html.3'
Dll
Saya berharap seseorang di sini dapat mengarahkan saya ke arah yang benar di sini sehingga saya dapat memperbaiki masalah ini :)
Jawaban:
Periksa
/etc/nsswitch.conf
file Anda (atau apa pun yang setara di Debian jika bukan itu).host
dannslookup
selalu melakukan pencarian DNS.Namun aplikasi lain akan mencari NSS terlebih dahulu untuk sistem penamaan lainnya (misalnya
/etc/hosts
, NIS, dll). Jika ada sesuatu yang dikonfigurasi tetapi tidak berfungsi dapat mencegah aplikasi dari pernah mencoba DNS.sumber
getent hosts google.com
. Ini menggunakan nsswitch.conf dan kemudian resolv.conf sesuai kebutuhan.Terima kasih atas jawaban kalian!
Itu adalah file nsswitch.conf. Saya telah menyiapkan LDAP dari tutorial yang memberi tahu saya untuk menggunakan baris ini di host:
Ketika saya mengubahnya menjadi ini:
Ini bekerja tanpa masalah. Jadi saya kira file konfigurasi nsswitch membuatnya kembali nol jika tidak ditemukan dalam file atau mdns4_minimal, kan?
Terima kasih atas bantuan Anda!
sumber
Mungkinkah ada proxy tidak valid yang dikonfigurasi pada mesin dengan kesalahan? Coba ini:
sumber
Hal pertama yang harus dicoba adalah memeriksa apakah DNS berfungsi dengan benar.
Jika Anda tidak mendapatkan respons itu, periksa /etc/resolv.conf dan temukan server nama yang tercantum dalam file itu. Bisakah Anda melakukan ping masing-masing?
Coba minta masing-masing secara individual:
Bisakah Anda menyelesaikan host lain?
sumber
Saya memiliki masalah yang sama, tetapi di samping berubah
/etc/nsswitch.conf
:Saya juga harus mengubah server nama:
Ubah
/etc/resolv.conf
sehingga menunjuk ke server nama google. Yang ditambahkan oleh manajer jaringan tidak bekerja untuk saya.sumber