Resolusi DNS gagal di browser web tetapi nslookup berhasil


9

Kami adalah organisasi kecil dengan 300 kursi dengan lingkungan BYOD dan Active Directory campuran (Windows Server 2012 Standard, Windows 7 Enterprise) dan kami mengalami masalah yang sangat aneh yang melibatkan kegagalan cakupan yang sangat spesifik untuk menyelesaikan nama domain organisasi kami di domain kami -gabung, mesin yang dikendalikan perusahaan. Untuk tujuan diskusi ini, saya akan menggunakan company.com alih-alih nama domain kami.

Latar Belakang:

  • Active Directory Domain Controller terletak di 172.16.1.3
  • Mesin AD / DC juga menjalankan DHCP, DNS, dan HTTP (IIS)
  • Situs web organisasi kami di company.com dan subdomain.company.com di -host oleh IIS di mesin AD / DC
  • Kami memiliki skenario split-DNS di mana server AD / DC digunakan untuk resolusi DNS internal tetapi server lain di luar situs menyediakan resolusi DNS untuk kueri publik
  • Alamat IP yang sesuai dengan company.com dan subdomain.company.com adalah alamat IP publik yang digunakan oleh firewall di tepi jaringan kami (baik pada server DNS AD / DC dan server DNS luar-situs)
  • Firewall dikonfigurasikan dengan benar untuk NAT agar meneruskan permintaan HTTP dan HTTPS yang diterimanya pada alamat IP publiknya ke IP internal server AD / DC dan mencerminkan

Skenario 1:

  • Seorang pengguna pada mesin Windows 7 Enterprise yang bergabung dengan domain terhubung langsung ke jaringan lokal kami dengan alamat lokal 172.16.6.100 / 16, yang dikeluarkan oleh server DHCP.
  • Entri server DNS disediakan oleh DHCP (172.16.1.3)
  • Pengguna ini dapat mengakses situs web yang dihosting di company.com dan subdomain.company.com
  • Sunting: nslookup telah dijalankan dalam skenario ini dan dengan benar mengembalikan catatan DNS yang tepat dari server DNS internal (172.16.1.3)

Skenario 2:

  • Pengguna yang sama pada mesin Windows 7 Enterprise yang bergabung dengan domain yang sama pulang dan terhubung ke Internet menggunakan ISP tempat tinggal mereka
  • Entri IP dan server DNS untuk mesin klien disediakan oleh DHCP
  • Pengguna ini dapat mengakses sumber daya internet apa pun, seperti google.com
  • Pengguna ini tidak dapat mengakses situs web di company.com atau subdomain.company.com (kesalahan "host tidak diselesaikan" dikembalikan)
  • Ketika pengguna ini berjalan nslookup pada company.com mereka DO menerima alamat IP publik yang benar disediakan oleh DNS
  • Permintaan HTTP / HTTPS ke alamat IP berhasil dan halaman web dikembalikan dengan benar oleh server
  • Masalah ini berlaku di semua browser web
  • Menggunakan tracert company.com mengembalikan "tidak dapat menyelesaikan nama sistem target"
  • Menggunakan pengembalian ping company.com "tidak dapat menemukan host company.com"
  • Saat menjalankan Wireshark pada klien sebelum / selama permintaan gagal, tidak ada paket yang dikirim oleh mesin klien (baik untuk resolusi DNS atau untuk permintaan HTTP / ping / tracert awal)
  • Memulai ulang layanan Klien DNS tidak menyelesaikan masalah
  • Menghentikan layanan Klien DNS tidak menyelesaikan masalah
  • Menggunakan ipconfig / flushdns tidak menyelesaikan masalah ini
  • Menggunakan rute / f tidak menyelesaikan masalah ini
  • Mengatur ulang koneksi jaringan menggunakan reset ip netsh tidak menyelesaikan masalah ini
  • Sunting: nslookup telah dijalankan dalam skenario ini dan dengan benar mengembalikan catatan DNS yang tepat dari server DNS yang ditentukan oleh pengaturan DHCP dari jaringan yang digunakan oleh pengguna

Skenario 3:

  • Pengguna yang sama ini pada komputer Windows 7 Professional pribadi (bukan domain-gabungan) dapat mengakses situs web di company.com dan subdomain.company.com ketika terhubung ke jaringan lokal kami
  • Sunting: nslookup telah dijalankan dalam skenario ini dan dengan benar mengembalikan catatan DNS yang tepat dari server DNS internal (172.16.1.3)

Skenario 4:

  • Pengguna yang sama ini pada komputer Windows 7 Professional pribadi (bukan yang bergabung dengan domain) dapat mengakses situs web di company.com dan subdomain.company.com ketika menghubungkan jaringan rumah mereka
  • Sunting: nslookup telah dijalankan dalam skenario ini dan dengan benar mengembalikan catatan DNS yang tepat dari server DNS yang ditentukan oleh pengaturan DHCP dari jaringan yang digunakan oleh pengguna

Catatan Akhir:

Masalah ini tampaknya digeneralisasi untuk mempengaruhi semua komputer yang dimiliki perusahaan. Kami menggunakan gambar sistem umum untuk semua komputer milik perusahaan, yang baru saja dimuat pada bulan Agustus. Saya telah menjelajahi internet untuk mencari solusi yang mungkin dan telah datang dengan tangan kosong sejauh ini - saya sangat menghargai saran atau saran yang mungkin Anda miliki.


2
Menjalankan situs web di pengontrol domain Anda, eh? Itu bukan bueno.
Ryan Ries

1
Ya, saya setuju. Anggaran ketat, apa yang bisa saya katakan. Mungkin di masa depan ...
Dan

1. Apakah Anda mengonfigurasi pengaturan DNS pada mesin yang bergabung dengan domain dengan Kebijakan Grup? 2. Menjalankan nslookup dalam mode debug untuk setiap skenario mungkin akan memberi Anda beberapa petunjuk.
joeqwerty

Terima kasih untuk sarannya. DNS disediakan oleh server DHCP, bukan kebijakan grup, jadi ketika pengguna meninggalkan bangunan fisik kami, mereka menerima server DNS dari jaringan apa pun yang terhubung. Saya telah menjalankan nslookup dalam semua kasus, dan mengembalikan pengaturan DNS yang benar dalam semua kasus (termasuk kasus kegagalan dalam Skenario 2). Masalahnya tampaknya karena alasan tertentu browser web bahkan tidak repot-repot pergi sejauh nslookup - seperti yang dijelaskan di atas, mereka hanya gagal tanpa memulai transaksi jaringan apa pun dalam Skenario 2.
Dan

Dapatkah saya membuat asumsi bahwa mereka dapat menerimanya sebagai www.company.comtetapi tidak adil company.comatau keduanya gagal?
TheCleaner

Jawaban:


1

Domain yang bergabung dengan komputer akan mencari DC mereka, tidak hanya melakukan pencarian berbasis DNS. Karena domainnya sama dengan situs web publik, mereka akan mencari catatan SRV untuk memberi tahu mereka cara menuju DC dan mendapatkan info domain. Karena tidak ada DC di jaringan jarak jauh, mereka tidak dapat menyelesaikan nama ini menggunakan bagian jendela sadar AD biasa.

Ketika Anda menggunakan ping atau (hampir) aplikasi Windows, ia menggunakan tumpukan IP Windows lengkap, termasuk bagian-bagian yang berbicara dengan AD. Sedangkan NSLookup sebenarnya hanya melakukan permintaan DNS. Anda telah memverifikasi ini dengan jejak Wireshark Anda, tidak ada pencarian yang dilakukan oleh Windows ketika mencoba untuk masuk ke perusahaan.com tetapi nslookup menunjukkan pencarian DNS yang tepat. Inilah sebabnya mengapa Anda tidak dapat menyelesaikan domain melalui ping atau browser web, tetapi nslookup baik-baik saja.

Solusi untuk bagian pertama ini adalah menggunakan www.company.com untuk sampai ke situs web baik secara internal maupun eksternal sehingga klien benar-benar mengabaikan mencari DC.

Solusi untuk bagian kedua lebih rumit tergantung pada apa yang dirujuk oleh subdomain.company.com secara internal maupun eksternal. Apakah DC memiliki catatan DNS untuk subdomain, atau apakah permintaan itu baru saja dikirim ke server DNS eksternal? Jika memang memiliki catatan DNS, di mana titik catatan itu?


0

Saya akan memeriksa file HOSTS ( http://en.wikipedia.org/wiki/Hosts_%28file%29#Location_in_the_file_system ) pada mesin tidak berisi entri apa pun untuk host yang ingin Anda kunjungi . Saya pikir alat NSLOOKUP mem-bypass file hosts tetapi browser web tidak.

Saya juga akan memeriksa Anda tidak memiliki proxy yang dikonfigurasi di browser web karena beberapa jenis proxy juga menyelesaikan DNS.

Saya juga akan mencoba menjalankan browser dalam "safe mode" (yaitu dengan semua addon dan plugins dinonaktifkan) dengan IE ("iexplore -extoff") atau Firefox (tahan tombol shift ketika memulai atau "firefox-safe-mode").

Idealnya jika mungkin coba dengan browser web lain untuk mempersempit apakah itu browser web atau OS.

Lalu jika saya masih tidak mendapatkan apa-apa saya akan memeriksa layanan apa yang terikat ke adaptor jaringan (firewall gila dengan aturan khusus menghalangi?)

Akhirnya, dan ini menyimpang ke semakin tidak mungkin tetapi NSLOOKUP akan menambahkan komputer atau koneksi nama domain spesifik ke permintaan secara otomatis. Misalnya router saya menetapkan nama domain sebagai "router" sehingga setiap nslookup untuk sesuatu seperti "matthew" sebenarnya mencari DNS untuk "matthew.router", mungkin browser web tidak melakukan ini .. seperti yang Anda katakan Anda lakukan paket menangkapnya tidak terdengar seperti ini adalah masalah Anda .. tapi kalau-kalau Anda melewatkannya di paket tangkap atau lingkungan tangkap Anda tidak benar :-).

Ini adalah hal-hal yang akan saya coba dan mudah-mudahan ini akan membantu Anda juga :-).

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.