أثناء استكشاف مشكلات الاتصال أو التطبيق الصعبة وإصلاحها، قد يكون من المفيد جدًا معرفة ما يتم نقله عبر الشبكة. عرضت مايكروسوفت في الأصل مراقب شبكة مايكروسوفت والذي خلفه محلل رسائل مايكروسوفت. لسوء الحظ، أوقفت شركة Microsoft برنامج Microsoft message Analyzer وأزالت روابط التنزيل الخاصة به. حاليًا، يتوفر فقط Microsoft Network Monitor الأقدم.
بالطبع، يمكنك استخدام أدوات خارجية لإجراء عمليات التقاط الشبكة، مثل WireShark. على الرغم من أن بعض أدوات الجهات الخارجية قد توفر تجربة أفضل، إلا أن Microsoft Network Monitor لا يزال يحتفظ بتجربته الخاصة. في هذه المقالة، سنرى كيفية التقاط الحزم وفحصها باستخدام الإصدار الأخير المتاح من Microsoft Network Monitor، وهي إحدى الأدوات الأكثر شيوعًا.
على الرغم من أنه كان بإمكاني استخدام WireShark، فقد وجدت أن واجهة Microsoft Network Monitor وسهولة استخدامها، بمجرد إخراجها من الصندوق، أسهل بكثير في الاستخدام. يمكن تحقيق الكثير من نفس الشيء في WireShark، ولكن قد يتعين عليك إجراء المزيد من التكوين في الواجهة.
التقاط الحزم باستخدام Microsoft Network Monitor
أولاً، نحتاج إلى تثبيت Microsoft Network Monitor، ويمكنك تحديد موقع التنزيل هنا ومن ثم المضي قدما في تثبيته. بمجرد تثبيت Microsoft Network Monitor، قم بتشغيل البرنامج. بمجرد إطلاقه، سوف تنقر على New Capture.
بعد ذلك، ستحتاج إلى بدء المراقبة بالنقر فوق الزر “ابدأ”. سيؤدي هذا إلى بدء الالتقاط على الفور وسترى المحادثات تبدأ في الظهور على الجانب الأيسر.
إذا وجدت أنك حصلت على رسالة خطأ تفيد بعدم وجود محولات مرتبطة، فيجب عليك تشغيل Microsoft Network Monitor كمسؤول. بالإضافة إلى ذلك، إذا قمت بتثبيت هذا للتو، فقد تحتاج إلى إعادة التشغيل.
واحدة من الفوائد العظيمة لاستخدام Microsoft Network Monitor هي أنه يقوم بتجميع محادثات الشبكة الخاصة بك بسهولة شديدة على الجانب الأيسر. وهذا يجعل البحث عن عمليات محددة أسهل بكثير في العثور عليها ومن ثم الغوص فيها.
سيؤدي توسيع أي من علامات الجمع إلى إظهار مجموعة محددة من “المحادثات” التي ربما تكون شاشة الشبكة قد التقطتها وجمعتها ضمن العملية.
تصفية حركة المرور
ستجد بسرعة أنه مع كل هذه البيانات الواردة، ستحتاج إلى تصفية الضوضاء بسهولة أكبر. أحد الأمثلة على استخدام المرشح هو
DnsAllNameQuery
، ضمن قسم DNS في عوامل التصفية القياسية. من خلال إضافة هذا السطر إلى قسم عامل تصفية العرض والنقر فوق “تطبيق”، ستتمكن فقط من عرض تلك الحزم التي تمثل استعلامات DNS، كما هو موضح أدناه.
مرشحات البناء
يعد إنشاء المرشحات أو تعديل المرشحات المضمنة أمرًا سهلاً للغاية. توجد ضمن حقل عامل تصفية العرض عدة طرق لإنشاء عوامل التصفية. عن طريق إدخال اسم البروتوكول ثم اتباع ذلك بواسطة أ
.
(الفترة)، ستشاهد الإكمال التلقائي لقيم الحقول الممكنة للمقارنة. باستخدام عامل المقارنة القياسي ل
==
يمكننا أن نرى ما إذا كانت بعض القيم متساوية. يمكننا أيضًا إنشاء تعبيرات متعددة باستخدام العوامل المنطقية مثل
and
و
or
. مثال على ما يبدو عليه هذا هو أدناه.
DNS.QuestionCount AND
DNS.ARecord.TimeToLive == 14
هناك بعض الطرق المتاحة أيضًا مثل contains() و UINT8(). يمكنك أن ترى استخدام الطريقة التي تحتوي على أدناه لتصفية سجلات DNS التي تحتوي على (google.com)( و TimeToLive 14.
DNS.QuestionCount AND
DNS.ARecord.TimeToLive == 14 AND
DNS.QRecord.QuestionName.contains("google.com")
وكما تعلم، هناك عدد من الطرق لدمج المرشحات لجعلها مفيدة وسهلة الاستخدام. تعد هذه طريقة رائعة لإرجاع البيانات التي تهمك فقط، خاصة وأن التقاط الحزم يمكن أن يصبح كبيرًا جدًا. وفي القسم التالي، نلقي نظرة على بعض الأمثلة المفيدة أكثر.
مرشحات المثال
بعض الأمثلة العملية، بخلاف الأمثلة المضمنة الافتراضية، تقطع شوطا طويلا في مساعدتك على فهم كيفية الوصول إلى البيانات المفيدة التي تحتاجها فقط.
التصفية حسب رقم المنفذ
على الرغم من أنه من الممكن استخدام بروتوكول HTTP للتصفية باستخدامه، إلا أن استخدام الطريقة التالية يسمح لك بحساب المنافذ المخصصة، مثل 8080 أو 8443، وهو أمر مفيد بشكل خاص عند استكشاف الأخطاء وإصلاحها.
tcp.port == 80 OR Payloadheader.LowerProtocol.port == 80
tcp.port == 443 OR Payloadheader.LowerProtocol.port == 443
يتم إعادة تجميع إطارات TCP التي تم تجزئتها وإدراجها في إطار جديد في التتبع الذي يحتوي على رأس خاص يسمى، Payloadheader. ومن خلال البحث عن كليهما، يمكننا التأكد من حصولنا على جميع البيانات التي نبحث عنها هنا.
ابحث عن إطارات تفاوض SSL
أثناء استكشاف الأخطاء وإصلاحها، قد تحتاج إلى فهم اتصالات SSL التي تتم محاولة التفاوض بشأنها. على الرغم من أنك قد لا تتمكن من فك تشفير حركة المرور الداخلية، إلا أن هذا سيساعد في العثور على الخوادم التي يحاول الاتصال استخدامها.
TLS.TlsRecLayer.TlsRecordLayer.SSLHandshake.HandShake.HandShakeType == 0x1
ابحث عن عمليات إعادة إرسال TCP وإعادة إرسال SYN
لاستكشاف مشكلات تحميل الملفات وتنزيلها وإصلاحها، يمكنك البحث لمعرفة ما إذا كانت هناك العديد من عمليات إعادة الإرسال التي قد تؤثر على الأداء.
Property.TCPRetransmit == 1 || Property.TCPSynRetransmit == 1
تأكد من تشغيل المحادثات، فهذا الفلتر يعتمد على تلك الوظيفة.
إطارات القراءة والبيانات السداسية
افتراضيًا، يحتوي تخطيط النافذة على جزأين سفليين مخصصين لتفاصيل الإطار والتفاصيل السداسية. داخل تفاصيل الإطار، يتم تقسيم كل حزمة إلى الأجزاء المكونة لها. على الجانب الآخر توجد التفاصيل السداسية وهي البايتات الأولية وفك التشفير. عند تحديد قسم مختلف ضمن تفاصيل الإطار، سيتم تمييز نفس القسم الموجود داخل الرمز السداسي أيضًا.
خاتمة
يعد إجراء عمليات تتبع الشبكة أمرًا سهلاً للغاية باستخدام أحدث إصدار من Windows. على الرغم من أن Microsoft قد اختارت إيقاف أدواتها التي تم إنشاؤها داخليًا أو إهمالها، إلا أن بعضها لا يزال يزدهر. هناك الكثير من البرامج الأخرى، مثل WireShark، لكن Microsoft Network Monitor لا يزال يجعل من السهل جدًا تحليل وفهم معلومات الحزمة التي تم التقاطها.
(العلامات للترجمة)مايكروسوفت