Saya memiliki pengguna di Windows 7 yang mencoba mengakses server lokal dengan nama DNS windows.cs. Kami memiliki dua server DNS internal. Server DHCP memberikan pengguna dua server DNS internal sebagai primer dan sekunder dan kemudian DNS ISP kami sebagai server DNS tersier.
Sesekali, pengguna tidak dapat mengakses situs web di windows.cs. Jika saya ping, dikatakan tidak bisa menyelesaikan nama host. Saya membersihkan cache DNS, dan kemudian ketika saya menampilkan cache dns ia memiliki yang berikut:
windows.cs - Nama tidak ada
Namun jika saya menggunakan nslookup, yang secara default menanyakan server DNS primer (server internal kami) dan saya meminta windows.cs, ia mengembalikan alamat IP yang benar.
Jadi mengapa Windows tidak bisa menyelesaikan nama host menggunakan ping, tetapi bisa ketika menggunakan alat nslookup? Dan bagaimana cara memperbaikinya?
sumber
Jawaban:
Tampaknya dari apa yang Anda katakan bahwa permintaan untuk windows.cs pergi ke server DNS ISP sekarang dan lagi. Hasil nxdomain kemudian di-cache oleh klien DNS Windows, dan dengan demikian digunakan untuk setiap percobaan ulang dengan browser web, ping dll. Menghapus cache (ipconfig / flushdns) harus memaksa klien Windows DNS untuk mencoba kembali permintaan, tetapi tidak ada jaminan tidak akan pergi ke server DNS ISP lagi.
Alasan ping tidak bisa menyelesaikan nama host tetapi nslookup bisa karena nslookup alat tingkat rendah yang mem-bypass klien Windows DNS. Ia menggunakan server DNS apa pun yang Anda beri tahu (yang pertama secara default), dan melakukan kueri dengan cepat. Anda dapat mengubah server DNS yang
server <host>
diminta dengan mengetik dari prompt nslookup, di mana host adalah IP atau FQDN.Namun, klien Windows DNS hanya akan melakukan kueri untuk entri yang tidak ada dalam cache (atau telah kedaluwarsa). Kalau tidak, ia mengembalikan hasil cache.
Tidak segera jelas mengapa klien Windows menggunakan server DNS ISP. Mungkin tidak dapat menyelesaikan server lokal baru-baru ini (mungkin karena berada di jaringan lain), mungkin server lokal mengembalikan kesalahan. Atau, mungkin itu tidak dipesan dengan benar di bawah pengaturan TCP / IP Lanjut> DNS.
Secara pribadi saya lebih suka menggunakan alamat server DNS lokal pada workstation (diperbanyak oleh DHCP), untuk menyederhanakan konfigurasi dan menghindari masalah seperti ini. Saya ingin tahu tentang alasan di balik pengaturan server DNS ISP di desktop. Saya tidak bisa membayangkan ada alasan kinerja yang valid, dan sejauh redundansi dua sudah cukup pada sebagian besar jaringan (jika tidak menambahkan ketiga).
sumber
Hasil
nslookup
berbeda dariping
karenanslookup
keunikan dan bug . Mereka tidak benar-benar relevan dengan masalah utama Anda, bagaimanapun, yaitu bahwa Anda telah melanggar aturan bahwa server DNS proxy cadangan harus memberikan tampilan yang sama dari ruang nama DNS dengan yang utama Anda . Proksi DNS server ISP Anda tidak memberikan tampilan yang sama dari namespace DNS sebagai server DNS proksi Anda sendiri di LAN Anda.Tampaknya administrator sistem lain telah melakukan kesalahan pada ISP saya yang menyediakan dan mendokumentasikannya, jadi saya harus menggunakannya. kekeliruan. ☺
sumber
TL; Versi DR: IPv6 menyebabkan masalah permintaan DNS dalam kasus saya, menonaktifkannya memecahkan masalah permintaan DNS.
Saya memiliki masalah yang sama pada mesin pengembangan saya. Setiap kali saya masuk ke jaringan perusahaan kami, saya tidak dapat menyelesaikan nama host internal, semua nama host eksternal / URI dapat diselesaikan. Saya memang memeriksa server DNS yang telah ditetapkan pada koneksi VPN dan mereka menunjukkan server DNS perusahaan dikonfigurasi sebagai primer dan sekunder. Saya juga bisa menggunakan
nslookup
tetapi harus secara manual mengubah server viaserver X.X.X.X
untuk mendapatkan resolusi DNS.Pada akhirnya saya menemukan bahwa IPv6 menyebabkan masalah dengan resolusi nama: pada setiap permintaan DNS, DNS IPv6 dipertanyakan daripada server DNS perusahaan IPv4. Setelah menonaktifkan IPv6, Anda harus
ipconfig /flushdns
alamat yang sebelumnya ditanyakan mungkin masih belum diselesaikan.sumber
Saya bisa menyelesaikan masalah sederhana dengan menghapus catatan DNS dan menjalankan perintah flushdns dan registerdns dan itu memperbaikinya. alasan mengapa agein pada DNS itu sendiri. DNS tidak menghapus catatan setelah masa sewa berakhir dan tidak diperpanjang yang tidak dapat menyelesaikan nama karena sudah siap untuk itu. Saya harap ini membantu Anda memperbaiki masalah Anda.
sumber