Learn

284 مقالاتالفئة: الكل
الشبكة

كيف يعرض المتصفح صفحة Web

لا تُعرض صفحة Web كما هي في اللحظة التي تدخل فيها URL في المتصفح.

في الواقع، يحدث تسلسل من الخطوات: تفسير URL، والحصول على عنوان IP عبر DNS، والاتصال بالخادم، وإنشاء اتصال آمن عبر HTTPS، وإرسال طلب HTTP، واستلام استجابة من الخادم، ثم التصيير داخل المتصفح.

لكن ليس كل إجراء يبدأ بالضرورة من البداية كل مرة. فقد تكون نتائج DNS محفوظة مؤقتًا، أو يُعاد استخدام اتصال قائم، أو تُحمّل البيانات من ذاكرة المتصفح المؤقتة.

يتجنب هذا المقال التعمق الزائد في المواصفات التفصيلية، وينظم ما يحدث قبل عرض صفحة Web وفق تدفق الاتصال الفعلي.

ماذا يحدث بعد إدخال URL؟

مثلًا، لنفترض أنك أدخلت السلسلة "https[:]//example.com" في شريط عنوان المتصفح.

يفحص المتصفح أولًا السلسلة المدخلة.

يحدد هل هي كلمة بحث أم URL لموقع Web، وإذا كانت URL يفسر الوجهة.

يتضمن URL أساسًا أنواع المعلومات الآتية.

العنصرمثالالمعنى
Schemehttpsيوضح أي طريقة تُستخدم للاتصال
Hostnameexample.comيوضح اسم موقع Web المراد الاتصال به
رقم المنفذ443يوضح أي نقطة اتصال ينبغي الاتصال بها. غالبًا يُحذف
المسار/aboutيوضح أي موضع على الخادم يُطلب
سلسلة الاستعلام?id=10تمرر معلومات إضافية إلى الخادم
Fragment#sectionيوضح موضعًا داخل الصفحة. عادة لا يُرسل إلى الخادم

URL صيغة تسهّل على البشر تحديد موقع Web.

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

لذلك ينتقل المتصفح إلى البحث عن عنوان IP من اسم المضيف.

البحث عن عنوان IP باستخدام DNS

لا يستطيع المتصفح الاتصال بخادم باستخدام الاسم "example.com" وحده.

DNS هو الآلية المستخدمة لذلك.

يربط DNS أسماء النطاقات بعناوين IP.

يفحص المتصفح أو OS أولًا ما إذا كانت نتائج DNS موجودة محليًا. إذا كنت قد وصلت إلى النطاق نفسه في الماضي، فقد يمكن الحصول على عنوان IP من ذاكرة DNS المؤقتة.

إذا لم تكن هناك معلومات في الذاكرة المؤقتة، يستعلم عن محلل DNS. يبحث محلل DNS عن عنوان IP الموافق لاسم النطاق المطلوب، مستعلمًا عن عدة خوادم DNS عند الحاجة.

الخطوةما يحدثالغرض
1يفحص المتصفح أو OS الذاكرة المؤقتةالتحقق مما إذا كان يمكن إعادة استخدام عنوان IP جرى البحث عنه سابقًا
2الاستعلام من محلل DNSالبحث عن عنوان IP الموافق لاسم النطاق
3الحصول على سجل A أو AAAAالحصول على وجهة IPv4 أو IPv6
4تحديد الوجهة باستخدام عنوان IPتحديد طرف الاتصال الفعلي

عنوان IP الذي يُحصل عليه هنا ليس ثابتًا بالضرورة.

حتى لاسم النطاق نفسه، قد ترجع عناوين IP مختلفة بحسب المنطقة وإعدادات DNS وموازنة الحمل وCDN وعوامل أخرى.

الاتصال بالخادم

بعد معرفة عنوان IP، يتصل المتصفح بالخادم الذي يملك ذلك العنوان.

في اتصال Web، لا يهم عنوان IP الوجهة فقط، بل رقم المنفذ أيضًا.

عادة يستخدم HTTP المنفذ 80، ويستخدم HTTPS المنفذ 443.

طريقة الاتصالرقم المنفذ الرئيسيالمعنى
HTTP80يُستخدم كثيرًا لاتصال Web غير المشفر
HTTPS443يُستخدم كثيرًا لاتصال Web المحمي بـ TLS

في HTTP/1.1 وHTTP/2، يُستخدم TCP عادة للاتصال بالخوادم.

في المقابل، يستخدم HTTP/3 آلية تسمى QUIC تعمل فوق UDP.

لا يتعمق هذا المقال في تفاصيل HTTP/2 أو HTTP/3، لكن النقطة المهمة هي أن المتصفح يستخدم عنوان IP ورقم منفذ لإنشاء اتصال مع الخادم.

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

إنشاء اتصال آمن باستخدام HTTPS

إذا بدأ URL بـ "https"، يتصل المتصفح بالخادم باستخدام HTTPS.

HTTPS هو اتصال HTTP محمي بـ TLS.

لـ TLS أساسًا الأدوار الآتية.

الدورالمعنىالأهمية
التشفيريجعل محتوى الاتصال أصعب قراءة على الأطراف الثالثةيحمي كلمات المرور ومحتوى الصفحة
كشف العبثيفحص هل تغير المحتوى أثناء الاتصاليجعل منع التعديل من مهاجم في الوسط أسهل
التحقق من هوية الخادميفحص هل الوجهة هي خادم النطاق المقصوديساعد على الدفاع ضد المواقع المزيفة وهجمات الرجل في الوسط

النقطة المهمة هنا أن HTTPS ليس مجرد "آلية تشفر الاتصال".

يفحص المتصفح الشهادة التي يقدمها الخادم ويتحقق مما إذا كانت تلك الشهادة صالحة لاسم النطاق الذي يجري الوصول إليه.

بفضل هذا الفحص، يستطيع المتصفح الحكم بأن "الخادم الذي اتصلت به هو على الأرجح الخادم المقصود".

لكن حتى عند استخدام HTTPS، لا تختفي كل المعلومات عن الاتصال.

مثلًا، عنوان IP الوجهة، ووقت حدوث الاتصال، وكمية الاتصال ليست أمورًا يستطيع HTTPS وحده إخفاءها بالكامل.

كذلك، بحسب البيئة، قد تظهر معلومات عن اسم نطاق الوجهة على مسار الشبكة.

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

طلب صفحة عبر HTTP/HTTPS

بعد إنشاء اتصال آمن، يطلب المتصفح الصفحة من الخادم.

يسمى هذا الطلب طلب HTTP.

مع HTTPS، تُرسل محتويات طلب HTTP وهي محمية بـ TLS.

مثلًا، قد يرسل المتصفح إلى الخادم أنواع المعلومات الآتية.

المعلومةالمعنىملاحظة
Methodأي عملية يريد تنفيذهاGET يُستخدم كثيرًا لجلب الصفحات
Pathأي صفحة أو بيانات يريدهامثل / أو /about
Hostلأي نطاق موجه الطلبيُستخدم أيضًا عندما تُدار عدة مواقع على IP واحد
User-Agentمعلومات مثل المتصفح وOSتُستخدم لاكتشاف البيئة وتعديل العرض
Accept-Languageاللغة المفضلةتُستخدم لقرارات مثل عرض صفحات يابانية
Refererهل تُرسل صفحة الإحالةقد لا تُرسل بحسب الإعدادات أو المواصفات
معلومات تعريف محفوظة للموقعتُستخدم للحفاظ على حالة تسجيل الدخول والإعدادات

ينظر الخادم إلى هذا الطلب ويقرر أي بيانات يرجع.

حتى عند الوصول إلى URL نفسه، قد يتغير المحتوى الراجع بحسب حالة تسجيل الدخول وCookie وإعدادات اللغة ونوع الجهاز وعوامل أخرى.

يرجع الخادم البيانات

بعد تلقي طلب من المتصفح، يرجع الخادم استجابة HTTP.

تتضمن استجابة HTTP رمز حالة، وترويسات، وجسمًا، وأجزاء أخرى.

العنصرمثالالمعنى
رمز الحالة200يوضح هل نجح الطلب، أو هل حدث خطأ، ومعلومات مشابهة
الترويسةContent-Typeتوضح نوع البيانات وسياسة التخزين المؤقت ومعلومات مشابهة
الجسمHTML وبيانات مشابهةالبيانات الفعلية التي يستخدمها المتصفح

HTML هو مركز صفحة Web، لكن HTML وحده لا يكمل الصفحة كلها بالضرورة.

تُعرض كثير من صفحات Web بدمج عدة أنواع من البيانات.

البياناتالدور
HTMLيمثل بنية الصفحة
CSSيحدد المظهر مثل الألوان والتباعد والتخطيط وحجم النص
JavaScriptينفذ المعالجة والتغييرات الديناميكية على الصفحة
الصورتعرض الصور الفوتوغرافية والأيقونات والرسوم وما شابه
الخطوطتضبط شكل النص
الفيديو والصوتيشغّلان محتوى وسائط

يتلقى المتصفح HTML أولًا، ثم يحصل أيضًا على CSS وJavaScript والصور والخطوط والموارد الأخرى المحددة داخل HTML.

لذلك فإن فتح صفحة Web واحدة يؤدي في الواقع غالبًا إلى عدة طلبات HTTP.

يعرضها المتصفح على الشاشة

عندما يتلقى المتصفح البيانات من الخادم، يحول تلك البيانات إلى شكل يمكن عرضه على الشاشة.

بصورة عامة، تحدث أنواع المعالجة الآتية.

الخطوةما يحدث
تحليل HTMLقراءة بنية الصفحة
تطبيق CSSعكس المظهر مثل الألوان والتخطيط وحجم النص
تنفيذ JavaScriptتشغيل المعالجة والتغييرات داخل الصفحة
تحميل المواردجلب الصور والخطوط والملفات الأخرى
الرسم على الشاشةعرض النتيجة النهائية للمستخدم

التصيير ليس مجرد "عرض HTML كما هو".

يفسر المتصفح HTML وCSS وJavaScript وموارد أخرى، ويبني الصفحة التي يراها المستخدم.

وبحسب الصفحة، قد تحدث طلبات إضافية بعد العرض الأولي أيضًا.

مثلًا، قد تُجلب تعليقات جديدة، أو تُحمّل صور عند التمرير، أو تُحدّث إشعارات، أو تُطلب بيانات API.

لذلك، حتى في صفحة Web نفسها، قد يتغير العرض بحسب جهاز PC أو الهاتف الذكي، ونوع المتصفح، وعرض الشاشة، والإعدادات.

حتى الصفحة الواحدة قد تنشئ عدة اتصالات

المهم في عرض صفحة Web هو أن فتح صفحة واحدة لا يعني بالضرورة أن جهة الاتصال واحدة.

حتى إذا كان جسم الصفحة يُجلب من example.com، فقد تُحمّل الصور أو الإعلانات أو تحليلات الوصول أو الخطوط الخارجية أو السكربتات الخارجية من نطاقات أخرى.

جهة الاتصالالغرضمثال
خادم جسم الصفحةالحصول على HTMLالنص وبنية الصفحة
خادم توزيع الصورالحصول على الصورصور المقال والأيقونات
خادم الإعلاناتعرض الإعلاناتإعلانات البانر وسكربتات الإعلان
خادم التحليلاتقياس حالة الوصولوسم تحليلات الوصول
خادم الخطوط الخارجيةتحميل الخطوطWeb fonts
خادم السكربتات الخارجيةإضافة وظائفويدجت مضمّن أو أجزاء UI

من منظور المستخدم، قد يكون الأمر مجرد "فتح صفحة واحدة"، لكن في الخلفية قد يتصل المتصفح بعدة خوادم.

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

في صفحات Web الحديثة، من الشائع أيضًا تحميل الحد الأدنى من البيانات أولًا، ثم جلب بيانات إضافية بحسب تفاعل المستخدم.

قد تُختصر الاتصالات بسبب الذاكرة المؤقتة

عند عرض صفحة Web، لا تُجلب كل البيانات من الخادم كل مرة بالضرورة.

قد يحفظ المتصفح مؤقتًا صورًا وCSS وJavaScript وغيرها مما جرى جلبه سابقًا.

تسمى هذه الآلية الذاكرة المؤقتة.

إذا كانت الذاكرة المؤقتة فعالة، فقد يستخدم المتصفح البيانات المحفوظة داخل الجهاز بدل جلب البيانات نفسها من الخادم مرة أخرى.

الهدفأثر الذاكرة المؤقتة
نتائج DNSتقلل الحاجة إلى البحث مرة أخرى عن عنوان IP من اسم النطاق
الصورلا يلزم تنزيل الصورة نفسها مرارًا
CSSيمكن إعادة استخدام ملفات مظهر الصفحة
JavaScriptيمكن استخدام السكربت نفسه من دون جلبه مرة أخرى
الاتصالقد يمكن إعادة استخدام مسار اتصال قائم

الذاكرة المؤقتة مهمة لزيادة سرعة العرض وتقليل حجم الاتصال.

لكن عند التفكير في المجهولية والخصوصية، يجب الانتباه أيضًا إلى المعلومات التي تبقى داخل المتصفح، مثل الذاكرة المؤقتة وCookie.

منظورات مهمة عند التفكير في المجهولية

المهم عند التفكير في المجهولية هو أن فعل فتح صفحة Web ليس اتصالًا واحدًا بسيطًا.

في الوصول إلى Web، ترتبط عدة عناصر مثل DNS وعنوان IP وHTTPS وCookie وUser-Agent وReferer والسكربتات الخارجية والذاكرة المؤقتة.

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

المنظورما ينبغي فحصه
DNSأي اسم نطاق جرى الاستعلام عنه
عنوان IPأي خادم جرى الاتصال به
HTTPSهل يجري تشفير محتوى الاتصال وكشف العبث والتحقق من الطرف
Cookieهل توجد إمكانية للتعرف إليك كمستخدم واحد
User-Agentهل تُرسل معلومات بيئة مثل المتصفح وOS
Refererهل تُرسل معلومة الصفحة السابقة
خادم خارجيهل تُحمّل إعلانات أو تحليلات أو خطوط أو سكربتات
الذاكرة المؤقتةهل تُستخدم معلومات باقية داخل المتصفح

بعبارة أخرى، لا يمكن الحكم على مجهولية Web من "هل URL هو HTTPS فقط".

يجب النظر إلى من يرى الطلبات، وأي Cookie تُرسل، وأي خوادم خارجية تُستخدم، وأي سجلات قد تبقى.

خلاصة

عندما تدخل URL في المتصفح، لا تُعرض الصفحة فورًا من دون خطوات.

يفسر المتصفح URL، ويبحث عن عنوان IP عبر DNS، ويتصل بالخادم باستخدام عنوان IP ورقم منفذ، وينشئ اتصالًا آمنًا عند استخدام HTTPS، ثم يرسل طلب HTTP ويتلقى استجابة.

بعد ذلك يفسر HTML وCSS وJavaScript والموارد الأخرى ويعرض الصفحة على الشاشة.

لكن DNS والاتصالات والموارد قد تُعاد استخدامها أو تُحمّل من ذاكرة مؤقتة، ولا تبدأ كل خطوة من الصفر دائمًا.

كما أن صفحة واحدة قد تتضمن طلبات متعددة إلى خوادم أو CDN أو API مختلفة.

فهم هذا التدفق يساعد على معرفة ما الذي يصل إلى جهة الموقع، وما الذي يحميه HTTPS، وما الذي قد يبقى مرئيًا كسجلات أو بيانات وصفية.

وهذا أساس مهم عند التفكير في المجهولية على Web.

أدوات ذات صلة

DNS Leak Test

DNSLeakTest

مورد خارجي مرتبط بهذه المقالة. افتحه فقط إذا كان مناسبًا لوضعك ولنموذج التهديد لديك.

سبب إدراجه هنا: قد يساعد في موضوع المقالة، لكنه خارج Anonymity Sense وينبغي التحقق منه قبل استخدامه.

URL : https://www.dnsleaktest.com/

فتح الموقع الخارجي
WebRTC Leak Test

BrowserLeaks WebRTC

مورد خارجي مرتبط بهذه المقالة. افتحه فقط إذا كان مناسبًا لوضعك ولنموذج التهديد لديك.

سبب إدراجه هنا: قد يساعد في موضوع المقالة، لكنه خارج Anonymity Sense وينبغي التحقق منه قبل استخدامه.

URL : https://browserleaks.com/webrtc

فتح الموقع الخارجي

مقالات ذات صلة