فقدان حزم الشبكة: التشخيص والحل
دليل تشخيص وحل فقدان حزم الشبكة باستخدام أدوات ping و traceroute و mtr و tcpdump، مشاكل MTU وتحسين أداء الشبكة.
جدول المحتويات
مقدمة
فقدان حزم الشبكة مشكلة خطيرة تؤثر مباشرة على أداء الخادم وتجربة المستخدم. يمكن أن يسبب فقدان الحزم بطء تحميل المواقع وانقطاع اتصالات SSH وتأخر في خوادم الألعاب وتدهور جودة VoIP.
في هذا الدليل، سنستعرض الأدوات والطرق لاكتشاف فقدان الحزم وتحديد مصدره وحله.
ما هو فقدان الحزم؟
يحدث فقدان الحزم عندما لا تصل حزم البيانات المرسلة عبر الشبكة إلى وجهتها. في الظروف العادية، يُتوقع 0% فقدان.
| فقدان الحزم | التأثير |
|---|---|
| 0% | طبيعي — لا مشاكل |
| 1-2% | خفيف — ملحوظ في VoIP والألعاب |
| 3-5% | متوسط — تبطؤ صفحات الويب |
| 5-10% | شديد — بدء انقطاع الاتصالات |
| 10%+ | حرج — الخدمة غير قابلة للاستخدام |
اكتشاف فقدان الحزم باستخدام ping
# اختبار ping بسيط
ping -c 100 IP_الهدف
# اختبار بحجم حزمة محدد
ping -c 50 -s 1400 IP_الهدف
# ping سريع (flood — يتطلب root)
sudo ping -f -c 1000 IP_الهدف
تفسير المخرجات:
100 packets transmitted, 97 received, 3% packet loss, time 99145ms
rtt min/avg/max/mdev = 1.234/5.678/45.123/8.901 ms
بعض الخوادم قد تحظر حزم ICMP. عدم استجابة ping لا يعني دائمًا فقدان حزم. تحقق باختبارات TCP.
تحليل القفزات باستخدام traceroute
traceroute يعرض كل عقدة شبكة (قفزة) تمر بها الحزم:
# traceroute أساسي
traceroute IP_الهدف
# قائم على ICMP (يتطلب root)
sudo traceroute -I IP_الهدف
# قائم على TCP (المنفذ 80)
sudo traceroute -T -p 80 IP_الهدف
المراقبة المستمرة باستخدام mtr
mtr أداة قوية تجمع بين ping و traceroute:
# التثبيت
sudo apt install mtr -y
# الوضع التفاعلي
mtr IP_الهدف
# وضع التقرير (100 حزمة)
mtr -r -c 100 IP_الهدف
# وضع TCP
mtr -T -P 80 IP_الهدف
# إخراج واسع
mtr -r -c 100 -w IP_الهدف
قراءة مخرجات mtr:
HOST Loss% Snt Last Avg Best Wrst StDev
1. gateway 0.0% 100 1.2 1.3 0.8 5.4 0.6
2. isp-router 2.0% 100 5.4 6.1 4.2 25.3 3.2
3. core-router 0.0% 100 15.2 15.8 14.1 22.4 1.5
4. IP_الهدف 0.0% 100 20.1 20.5 19.2 28.7 1.8
إذا ظهر فقدان الحزم في قفزة واحدة فقط ولم يستمر في القفزات التالية، فقد تكون تلك القفزة تطبق تحديد معدل ICMP فقط. المشكلة الحقيقية عندما يستمر الفقدان حتى القفزة الأخيرة.
التقاط الحزم باستخدام tcpdump
# التقاط كل حركة المرور على واجهة
sudo tcpdump -i eth0 -c 100
# التقاط حركة المرور إلى IP محدد
sudo tcpdump -i eth0 host IP_الهدف -c 100
# حركة مرور منفذ محدد
sudo tcpdump -i eth0 port 80 -c 50
# حفظ في ملف (لتحليل Wireshark)
sudo tcpdump -i eth0 -w capture.pcap -c 1000
# التقاط حزم ICMP
sudo tcpdump -i eth0 icmp -c 50
فحص أخطاء واجهة الشبكة
# إحصائيات الواجهة
ip -s link show eth0
# عدادات الأخطاء التفصيلية
ethtool -S eth0 | grep -i error
# عدد الحزم المسقطة
netstat -i
# إحصائيات شبكة النواة
cat /proc/net/dev
مشاكل MTU
عدم تطابق MTU (وحدة النقل القصوى) يمكن أن يسبب فقدان حزم:
# فحص قيمة MTU الحالية
ip link show eth0 | grep mtu
# اختبار اكتشاف مسار MTU
ping -c 5 -M do -s 1472 IP_الهدف
# تغيير قيمة MTU (مؤقت)
sudo ip link set eth0 mtu 1400
MTU القياسي لـ Ethernet هو 1500 بايت. إذا كنت تستخدم VPN أو أنفاق، قد تحتاج لتخفيض MTU (عادة 1400-1420).
اختبار عرض النطاق
# تثبيت iperf3
sudo apt install iperf3 -y
# البدء في وضع الخادم
iperf3 -s
# الاختبار كعميل
iperf3 -c IP_الخادم -t 30
# اختبار UDP (قياس فقدان الحزم)
iperf3 -c IP_الخادم -u -b 100M -t 30
خطوات الحل
1. تحديد المصدر
# تحليل قفزة بقفزة مع mtr
mtr -r -c 200 IP_الهدف
# هل المشكلة محلية أم عند مزود الخدمة أم في الوجهة؟
# - فقدان في القفزات الأولى → مشكلة شبكة محلية
# - فقدان في القفزات الوسطى → مشكلة مزود الخدمة
# - فقدان في القفزة الأخيرة → مشكلة الخادم الهدف
2. مشاكل الشبكة المحلية
# إعادة تشغيل واجهة الشبكة
sudo ip link set eth0 down && sudo ip link set eth0 up
# فحص حل DNS
dig google.com +short
# فحص جدول التوجيه
ip route show
الخلاصة
يمكن أن ينتج فقدان حزم الشبكة عن أسباب عديدة مختلفة. باستخدام ping و traceroute و mtr و tcpdump، يمكنك تحديد مصدر المشكلة وتطبيق الحل المناسب. المراقبة المنتظمة للشبكة للكشف المبكر عن المشاكل هي الطريقة الأكثر فعالية لتقليل الانقطاعات.
مقالات ذات صلة
مشكلة اتصال SSH: لا يمكن الاتصال بالخادم — الحل
دليل حل مشاكل اتصال SSH: قواعد جدار حماية Path.net، Default Block، إنشاء قاعدة تصفية لمنفذ SSH وخطوات استكشاف الأخطاء وإصلاحها.
مشكلة اتصال RDP: لا يمكن الاتصال بـ Windows Server
دليل حل مشاكل اتصال RDP: قواعد جدار حماية Path.net، Default Block، إنشاء قاعدة تصفية لمنفذ RDP وخطوات استكشاف الأخطاء وإصلاحها.
كيفية إجراء اختبار MTR وإرسال النتائج للدعم
دليل اختبار الشبكة باستخدام WinMTR وLinux MTR، إنشاء قاعدة فلترة ICMP وإرسال النتائج لفريق الدعم. تشخيص فقدان الحزم والتأخير في الشبكة.