سؤال كيف يعرف Windows ما إذا كان لديه وصول إلى الإنترنت أو إذا كان اتصال Wi-Fi يتطلب مصادقة في المتصفح؟


في Windows 7 ، سيعرض رمز شبكة منطقة الإعلام مؤشر خطأ إذا لم يكن هناك اتصال بالإنترنت wifi-err، ويختفي رمز الخطأ بمجرد وجود اتصال ناجح بالإنترنت networking normal. في بعض الأحيان ، إذا تطلب اتصال WiFi خطوة مصادقة في المتصفح ، مثل العديد من شبكات الضيوف في الفنادق أو الجامعات ، فستظهر الفقاعة المنبثقة التالية بقول: additional log on information may be required, click to open your browser

كيف يعرف Windows ما إذا كان لديه اتصال ناجح بالإنترنت؟
 من المفترض أنه يقوم بالتحقق من بعض خدمات Microsoft عبر الإنترنت لمعرفة ما إذا كان لديه اتصال ناجح ، أو تمت إعادة توجيهه إلى صفحة أخرى ، أو لم يحصل على أي رد على الإطلاق ، ولكني لم أر أي مكان يتم فيه توثيق هذه العملية أو الخدمات المستخدمة . أي شخص يمكن أن يفسر كيف يعمل هذا؟ انا افضل الاجابات التي تشير الى الحقائق، بدلا من مجرد التخمين، ولكن اذا كان لديك حقا جيد أعتقد ، ثم الذهاب لذلك.

كان هذا السؤال سؤال المستخدم الفائق لهذا الأسبوع.
  اقرأ في 16 أيار (مايو) 2011 دخول بلوق لمزيد من التفاصيل أو أرسل ملكك سؤال الاسبوع.


130
2018-05-02 07:50


الأصل


إذا كان عليها التحقق من خدمة Microsoft ، فكيف ستتجاوز خطوة التنشيط في المتصفح؟ أو هل أسيء فهمك؟ (+1 btw ، سؤال مثير للاهتمام) - slhck
@ slhck: هذا هو الهدف من فحص: إذا كان لا يمكن الوصول إلى الخدمة بشكل صحيح ، ولكن يحصل على المحاولة بعض استجابة ، يفترض أنه قد تكون هناك خطوة في المتصفح. إذا لم يكن هناك استجابة في الكل، تفترض أن هناك وصول محلي فقط. أنا غير متأكد من كيفية عمل هذه العملية بالضبط. لقد قمت بتحديث سؤالي لتكون أكثر وضوحا بعض الشيء (نأمل). - nhinkle♦
nhinkle ليس لدي جهاز كمبيوتر ويندوز ولكن ربما شخص ما يمكن أن تطلق Wireshark لمعرفة ما يفعله الجهاز في الواقع في مثل هذه الحالة. - slhck
عندما يقول مؤشر الخطأ أنه لا يوجد اتصال بالإنترنت ، افتح مستكشف أخطاء الشبكة ومصلحها. أثناء تشغيل مستكشف الأخطاء ومصلحها ، يمكنك رؤية خطوة "محاولة الاتصال بـ Microsoft.com" بوضوح. لذا أعتقد أنه يستخدم خدمة. - Mayank


الأجوبة:


بعد بعض الحفر (العدد الهائل من الخدمات المتصلة بالشبكة والإنترنت في Windows أمر مذهل) ، أعتقد أنني وجدت ذلك. يحتوي Windows Vista و 7 على مجموعة متنوعة من ميزات Network Awareness ، أحدهما مؤشر حالة اتصال الشبكة الذي يقوم بإجراء اختبارات الاتصال التي يتم استخدامها بدورها بواسطة رمز systray الخاص بالشبكة. اختبار الاتصال بشبكة الإنترنت بسيط:

  1. يحاول NCSI تحميل صفحة محددة عبر HTTP (بشكل أكثر دقة: مستند نصي) واختبار ما إذا كان يمكن استردادها.
  2. إذا لم يكن ذلك ناجحاً ، يقوم Windows بالإبلاغ "لا يوجد اتصال بالإنترنت".

تقوم الآلية أيضًا بالتحقق من ما إذا كان النطاق المستضاف في المستند يقرر إلى عنوان IP المتوقع. لذا ، قد تفترض أيضًا إمكانية الوصول إلى الإنترنت بشكل صحيح إذا كان هذا الاختبار ناجحًا ولكن لا يمكن استرداد المستند.

يرجع السبب في تقارير "لا يوجد اتصال إنترنت" عندما لم تكن قد حصلت على مصادقة على نقطة ساخنة حتى الآن في الطريقة التي تعمل بها نقطة ساخنة. فهو يحظر جميع المنافذ إلى جانب 80 و 443 (لـ HTTP و HTTPS ، على التوالي) ، والتي تتم إعادة توجيهها إلى خادم مصادقة Hotspot وقد تتعارض مع طلبات DNS بطريقة أو بأخرى. وبالتالي ، لا يمكن لـ NCSI حل المجال الذي تتم استضافة ملف الاختبار عليه ، وحتى إذا كان من الممكن ألا يصل إلى الملف الفعلي بسبب إعادة توجيه حركة HTTP إلى خادم المصادقة.

مصدر: http://technet.microsoft.com/en-us/library/cc766017٪28WS.10٪29.aspx


89
2018-05-02 10:00



يجب أن تسمح نقطة الاتصال الهاتفي بـ DNS ، وإلا فإن أي محاولة للوصول إلى الخادم عن طريق اسم المضيف (بدلاً من عنوان IP) قد تفشل مع وجود خطأ في نوع "غير قادر على حل العنوان". استنادًا إلى إعداد نقطة الاتصال ، قد يحل جميع الأسماء إلى عنوان خادم المصادقة الخاص به أو قد يحل الأسماء بشكل صحيح ويعتمد فقط على إعادة توجيه اتصالات http (s) إلى خادم المصادقة. جزء DNS من الاختبارات الموضحة في المستند الذي تم إبداء الإعجاب به هو التحقق من أن dns.msftncsi.com يحل العنوان الصحيح ، وليس ما إذا كان يتم حلها على الإطلاق. - Dave Sherohman
هذا صحيح حقا. لقد قمت بتحديث الإجابة لتعكس ذلك. - Tobias Plutat
بحث رائع ، ووصف جيد لكيفية عمله! إذا لم تظهر أي إجابات أفضل ، فهناك مكافأة ستأتي قريباً. - nhinkle♦
كما يقول No Internet access إذا كنت وراء وكيل ؛) - Oscar Mederos
لا أشك في أن هذا صحيح في الغالب ولكن يبدو أنه غير كامل. في بعض الأحيان ، ستواجه مشكلة مع DNS وسيظهر رمز الاتصال نافذة منبثقة تشير إلى أن لديك اتصال بالإنترنت ولكن فشل DNS. أعتقد أنه يجب أن تكون هناك خطوة قبل الخطوة 1 (أو ربما بعد الخطوة 1) وهي أنها تحاول حل DNS. إذا نجح ذلك (لكن لا يتم تحميل الصفحة) ، فستحصل على رسالة خطأ DNS بدلاً من ذلك. - krowe2


فيما يلي تفاصيل تحديد حالة الاتصال معالجة:

توضح القائمة التالية كيف يمكن لـ NCSI الاتصال بموقع ويب لتحديد ما إذا كانت شبكة اتصال إنترنت:

  1. طلب للحصول على تحليل اسم DNS dns.msftncsi.com

  2. طلب HTTP لـ http://www.msftncsi.com/ncsi.txtالعودة 200 موافق والنص Microsoft NCSI

يمكن تعطيل هذا مع إعداد تسجيل. إذا قمت بتعيين

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

إلى 0، لن يتحقق Windows بعد الآن من الاتصال بالإنترنت.

تقوم Apple بشيء مشابه جدًا في iOS للكشف عن اتصال الإنترنت وصفحات wifi "تسجيل الدخول" الخاصة بالفندق ، إلخ.


68
2018-05-02 10:51



أحدث (على ما أظن Gingerbread وأحدث إصدارات ...) من أندرويد يفعل ذلك أيضًا ... سيعرضون رمز wifi باللون الأبيض إذا تمكنوا من الاتصال بالشبكة ، وسيتحول إلى اللون الأخضر إذا كان يمكن أن يصل إلى بعض استضافة google الصفحة. الفكرة وراء ذلك هي نفسها. - TM.
أوقد يفعل هذا أيضا ، بطريقة ما. عندما اتصلت بشبكة wifi ، أخطرتني بالحاجة إلى فتح المتصفح الخاص بي وقبول شروط الاستخدام. كنت أتساءل كيف حدث هذا أيضا. - Kortuk
حتى إذا msftncsi.com ذهب ، كل جهاز كمبيوتر ويندوز 7 لن تكون قادرة على إظهار إشارة عبر الإنترنت؟ هذا العبقري! - liamzebedee


كما قال جيف ، للكشف عن اتصال بالإنترنت ، سيقوم Windows بما يلي:

  1. طلب DNS للخادم
  2. طلب HTTP للمحتوى المعروف

بالإضافة إلى جواب جيف ، أظن:

3. إذا تمت إعادة توجيه طلب HTTP إلى Microsoft خارجي (أو لا يعرض المحتوى المتوقع) ، فقم بإظهار الرسالة في لقطة الشاشة.


8
2018-05-02 12:29





بالنسبة إلى الاتصال الذي يتطلب وجود سجل إضافي للمعلومات ، فمن المرجح أن يتم تحديده من خلال خطوة حل نظام أسماء النطاقات التي أشار إليها جيف مع السيناريوهات الثلاثة التالية التي تحدث:

  • إذا حل النظام العنوان الصحيح ، يكون الاتصال واضحًا. (الاتصال بشبكة الإنترنت)
  • إذا حل النظام طلب نظام أسماء النطاقات ولكنه ليس العنوان الصحيح ، فسيكون هناك إعادة توجيه (يمكن إضافة سجل محتمل على المعلومات المطلوبة)
  • إذا لم يحل النظام طلب نظام أسماء النطاقات ، فستكون هناك مشكلات في الاتصال بالإنترنت (التوصيل إلى الشبكة / نقطة الوصول دون الاتصال بالإنترنت)

أفترض أن طلب:

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

طريقة سريعة للحريق لاختبار ما إذا كان الاتصال بالإنترنت واضحًا تمامًا. بعد ذلك ، يتم تشغيل طلبات DNS لتحديد الحالة الكاملة للاتصال.


3
2018-05-04 23:16