Windows internet erişimi olup olmadığını veya bir Wi-Fi bağlantısının tarayıcıda kimlik doğrulaması gerektirip gerektirmediğini nasıl biliyor?


132

Windows 7'de, internet erişimi yoksa, bildirim alanı ağ ikonu bir hata göstergesi gösterecek WiFi-errve internete başarılı bir bağlantı yapıldığında bir hata simgesi sönecektir ağ normal. Bazen, WiFi bağlantısı otellerde veya üniversitelerde birçok misafir ağında olduğu gibi tarayıcıda bir kimlik doğrulama adımı gerektiriyorsa, aşağıdakileri söyleyerek aşağıdaki açılır balon görünür: ek oturum açma bilgileri gerekli olabilir, tarayıcınızı açmak için tıklayın

Windows başarılı bir internet bağlantısına sahip olup olmadığını nasıl biliyor?
Muhtemelen, başarılı bir bağlantıya sahip olup olmadığını, başka bir sayfaya yönlendirildiğini veya hiç yanıt alamadığını görmek için bazı çevrimiçi Microsoft servislerini kontrol ediyor, ancak bu işlemin veya kullanılan hizmetlerin belgelendiği hiçbir yerde görmedim. . Bunun nasıl çalıştığını açıklayan var mı? Sadece tahmin etmekten çok gerçekleri ifade eden cevapları tercih ederim, ama gerçekten iyi bir tahmininiz varsa, bunun için gidin.

Bu soru Haftanın Süper Kullanıcısı Sorusuydu . Daha fazla bilgi için
16 Mayıs 2011 blog girişini okuyun veya kendi Haftanızı Sorun.


1
Microsoft hizmetini kontrol etseydi, tarayıcı etkinleştirme adımını nasıl geçebilirdi? Yoksa seni yanlış mı anladım? (+1 btw, ilginç soru)
slhck

@slhck: Kontrol ettiği nokta şudur: servise doğru bir şekilde erişemiyorsa, ancak girişimi bir miktar yanıt alırsa , tarayıcıda bir adım olabileceğini varsayar. Hiçbir yanıt alınmaz ise bütün , sadece yerel erişim var varsayar. Bu sürecin tam olarak nasıl çalıştığını bilmiyorum. Sorumu biraz daha net olacak şekilde güncelledim (umarım).
nhinkle

@ nhinkle Windows PC'm yok ama belki birileri makinenin gerçekte böyle bir durumda ne yaptığını görmek için Wireshark'ı çalıştırabilir.
slhck

Hata göstergesi internet erişimi olmadığını söylediğinde, ağ sorun gidericisini açın. Sorun giderici çalışırken, açıkça "Microsoft.com'a bağlanmaya çalışılıyor" adımını görebilirsiniz. Yani benim tahminim bir servis kullandığı.
Mayank

Yanıtlar:


91

Bazı kazma işlemlerinden sonra (Windows'taki ağ ve Internet ile ilgili hizmetlerin sayısı şaşırtıcıdır), sanırım buldum. Windows Vista ve 7'de, biri ağ systray simgesi tarafından kullanılan bağlantı sınamalarını gerçekleştiren Ağ Bağlantı Durum Göstergesi olan Ağ Ağı Farkındalığı özellikleri bulunmaktadır. İnternet bağlantısı için test basittir:

  1. NCSI, belirli bir sayfayı HTTP yoluyla yüklemeye çalışır (daha doğrusu bir metin belgesi) ve alınıp alınmayacağını test eder.
  2. Bu başarılı olmazsa, Windows “İnternet erişimi yok” bildirir.

Mekanizma ayrıca, belgenin bulunduğu etki alanının beklenen IP adresine çözülüp çözülmediğini de denetler. Bu nedenle, eğer bu test başarılı olursa, ancak belge alınamıyorsa internet erişimi uygun olabilir.

Bir Hotspot'ta onaylanmadıysanız "İnternet Erişimi Yok" u bildirmesinin nedeni bir Hotspot'un çalışma biçiminde yatmaktadır. Hotspot'un kimlik doğrulama sunucusuna yönlendirilen ve DNS isteklerini bir şekilde veya başka şekilde karıştırabilen 80 ve 443 dışındaki tüm bağlantı noktalarını (sırasıyla HTTP ve HTTPS için) engeller. Bu nedenle, NCSI, test dosyasının barındırıldığı etki alanını çözemez ve HTTP trafiği Kimlik Doğrulama sunucusuna yönlendirildiği için gerçek dosyaya ulaşmasa bile.

Kaynak: http://technet.microsoft.com/en-us/library/cc766017%28WS.10%29.aspx


13
Bir sıcak nokta, DNS'ye izin vermek zorunda kalacak, aksi takdirde bir sunucuya ana bilgisayar adıyla (IP adresi yerine) erişme girişimi "adres çözülemiyor" tipi bir hatayla başarısız olacaktır. Hotspot'un kurulumuna bağlı olarak, tüm adları auth sunucusunun adresine çözebilir veya adları doğru şekilde çözebilir ve yalnızca http (s) bağlantılarının auth sunucusuna yeniden yönlendirilmesine güvenebilir. Beğenilen belgede açıklanan çeklerin DNS kısmı, dns.msftncsi.com adresinin hiç çözülüp çözülmediğini değil, doğru adrese çözümlendiğini doğrulamaktır.
Dave Sherohman

1
Bu gerçekten doğru. Cevabı bunu yansıtacak şekilde güncelledim.
Tobias Plutat

Müthiş bulmak ve nasıl çalıştığını iyi bir açıklama! Daha iyi bir cevap görünmezse, yakında yoluna çıkacak bir ödül vardır.
nhinkle

Ayrıca No Internet accessbir vekilin arkasındaysanız;)
Oscar Mederos 17:12

1
Bunun çoğunlukla doğru olduğundan şüphem yok ama eksik görünüyor. Bazen, DNS ile ilgili bir sorun yaşarsınız ve bağlantı simgesi, İnternet erişiminizin olduğunu ancak DNS'nin başarısız olduğunu gösteren bir açılır pencere gösterir. DNS'yi çözmeye çalışan adım 1'den önce (veya muhtemelen adım 1'den sonra) bir adım olması gerektiğini düşünüyorum. Bu başarılı olursa (ancak sayfa yüklenmiyor) bunun yerine DNS hata iletisini alırsınız.
krowe2

69

Bağlantı durumu belirleme işleminin detayları :

Aşağıdaki listede, bir ağın İnternet bağlantısı olup olmadığını belirlemek için NCSI'nin bir Web sitesiyle nasıl iletişim kurabileceği açıklanmaktadır:

  1. DNS ad çözümlemesi için istek dns.msftncsi.com

  2. http://www.msftncsi.com/ncsi.txt200 OK ve metnin döndürülmesi için bir HTTP isteğiMicrosoft NCSI

Bu bir kayıt defteri ayarıyla devre dışı bırakılabilir. Ayarlarsanız

 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
     NlaSvc\Parameters\Internet\EnableActiveProbing

için 0Windows'un artık internet bağlantısı için prob.

Apple, internet bağlantısını ve olası otel "giriş" wifi sayfalarını, vb tespit etmek için iOS'ta çok benzer bir şey yapar.


1
Daha yeni (Sanırım Gingerbread ve daha yeni ...) Android sürümleri de bunu yapıyorlar ... ağa bağlanabiliyorlarsa beyaz wifi simgesini gösterecekler ve eğer bir google tarafından barındırılanlara vurabilirlerse yeşile dönecekler sayfa. Arkasındaki fikir aynı.
TM.

Kindle bunu da yapar, Bir şekilde. Wifi bağlandığımda tarayıcımı açmam ve kullanım şartlarını kabul etmem gerektiğini söyledi. Bunun nasıl ortaya çıktığını merak ediyordum.
Kortuk

3
Yani msftncsi.com çökerse , her Windows 7 bilgisayarı çevrimiçi bir sinyal gösteremez mi? Bu dahi!
liamzebedee

8

Jeff'in dediği gibi, bir İnternet bağlantısını tespit etmek için Windows şunları yapacaktır:

  1. Sunucuya DNS isteği
  2. Bilinen içerik için HTTP isteği

Jeff'in cevabına ek olarak, şüpheliyim:

3. HTTP isteği dışarıdan bir Microsoft'a yönlendirilirse (veya beklenen içeriği döndürmezse), mesajı ekran görüntüsünüzde gösterin.


3

Ek oturum açma bilgisi gerektiren bir bağlantı için, Jeff'in bahsettiği DNS çözümlemesi adımında aşağıdaki üç senaryo ile daha muhtemeldir:

  • Sistem doğru adresi çözerse, bağlantı tamamen açıktır. (İnternet bağlanabilirliği)
  • Sistem bir dns isteğini çözerse ancak doğru adres değilse, yeniden yönlendirme yapılır (gerekli bilgilerle ilgili ek giriş günlüğü)
  • Sistem bir dns isteğini çözmezse, İnternet bağlantı sorunları vardır (bağlantı ağ / erişim noktasına kuruluyor ancak internet bağlantısı yok)

Sanırım isteğim:

http://www.msftncsi.com/ncsi.txt

İnternet bağlantısının açık olup olmadığını test etmek için hızlı bir yangın yoludur. Bundan sonra, bağlantının tam durumunu belirlemek için dns istekleri çalıştırılır.

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.