موقف من الحياة اليومية#

وإنت بتظبط الراوتر، أو بتوصّل طابعة بالشبكة، طلعلك رقم غريب زي 192.168.1.10.

وبعدين صاحبك اللي بيفهم في الشبكات قالك: «جرّب 127.0.0.1». ولما سألت جارك عن عنوان جهازه، طلع 192.168.1.10 برضه، نفس عنوان جهازك بالظبط!

طب إزاي جهازين ليهم نفس العنوان؟ وإيه معنى الأرقام دي أصلًا؟

خلاصة سريعة#

  • الـ IPv4 Address · عنوان IPv4عنوان طوله 32 بت (4 بايت) يميّز الجهاز على الشبكة، ويتكون من جزء يحدد الشبكة وجزء يحدد الجهاز داخلها.عرض في القاموس (عنوان IPv4) رقم طوله 32 بت، بيتكتب 4 أرقام بينهم نقط، وكل رقم من 0 لـ 255، زي 192.168.1.10. وفيه جزء بيحدد الشبكة، وجزء بيحدد الجهاز جواها.
  • فيه عناوين خاصة (Private) للاستخدام جوه البيوت والشركات، ومش بتتنقل على الإنترنت. علشان كده جهازك وجهاز جارك ممكن يكون ليهم نفس العنوان. وفيه عناوين عامة (Public) فريدة على الإنترنت كله.
  • فيه عناوين ليها استخدام خاص: 127.0.0.1 معناها «الجهاز نفسه»، والعناوين اللي بتبدأ بـ 169.254 معناها إن الجهاز ما لقاش حد يديله عنوان، وده غالبًا علامة على مشكلة.

ببساطة#

فكّر في عنوان IPv4 زي رقم شقة في عمارة: جزء منه بيقول أنهي عمارة (الشبكة)، وجزء بيقول أنهي شقة فيها (الجهاز).

وعمارات كتير ممكن يكون فيها شقة رقم 5. جوه العمارة الرقم ده بيكفي، لكن لو جواب جاي من برا، لازم عنوان العمارة نفسها الأول. وده بالظبط الفرق بين العنوان الخاص اللي جوه بيتك، والعنوان العام اللي بيشوفه الإنترنت.

كل رقم من الأربعة هو 8 بت، والعنوان كله 32 بت. والعنوان بيتقري من الشمال لليمين، حتى في الصفحة العربية.

بالتفصيل#

تركيب العنوان#

عنوان IPv4 طوله 32 بت، يعني 4 بايت. ولأن كتابة 32 صفر وواحد صعبة جدًا على البني آدمين، بنقسّمه 4 أجزاء، كل جزء 8 بت، ونكتب كل جزء بالنظام العشري، ونحط بينهم نقطة.

وكل جزء من دول اسمه Octet · الثُّمانيةوحدة بيانات من 8 بتات بالضبط، ويُفضَّل استخدام هذا المصطلح في معايير الشبكات لأن حجم البايت اختلف في بعض الأنظمة القديمة.عرض في القاموس (ثُماني)، يعني 8 بت. وأقل قيمة ليه 0 (كل البتات أصفار)، وأكبر قيمة 255 (كل البتات واحد). ولو محتاج تراجع ده، شوف مقال النظام الثنائي.

مثال: العنوان 192.168.1.10 بالثنائي:

الناتج المتوقع
11000000.10101000.00000001.00001010

والعنوان مش مجرد رقم: أوله بيحدد الشبكة، وباقيه بيحدد الجهاز جوه الشبكة دي. وفين بالظبط الحد بين الجزئين؟ ده موضوع قناع الشبكة (Subnet mask) وصيغة CIDR، وليهم مقال لوحده.

الفئات (Classes): الطريقة القديمة#

في أول IPv4، الحد بين جزء الشبكة وجزء الجهاز كان ثابت، وبيتحدد من أول بتات في العنوان. وده كان اسمه نظام الفئات:

الفئةأول بتاتأول رقم في العنوانالاستخدام
A0من 0 لـ 127شبكات قليلة جدًا وكبيرة جدًا
B10من 128 لـ 191شبكات متوسطة
C110من 192 لـ 223شبكات كتير وصغيرة
D1110من 224 لـ 239Multicast (إرسال لمجموعة أجهزة مرة واحدة)
E1111من 240 لـ 255محجوزة، ومش بتستخدم في العناوين العادية

وأول رقم في العنوان بيتحسب من البتات دي: مثلًا كل عنوان بيبدأ بالبتين 10 أقل رقم ليه 10000000 = 128، وأكبر رقم 10111111 = 191.

العناوين الخاصة والعامة#

فيه 3 نطاقات محجوزة للاستخدام جوه الشبكات الخاصة بس، زي بيتك أو شركتك:

النطاقمنلـ
10.0.0.0/810.0.0.010.255.255.255
172.16.0.0/12172.16.0.0172.31.255.255
192.168.0.0/16192.168.0.0192.168.255.255

والعناوين دي اسمها Private IP Address · العنوان الخاصعنوان من نطاقات محجوزة للاستخدام داخل الشبكات الخاصة (10/8 و172.16/12 و192.168/16)، ولا يُمرَّر على الإنترنت لأنه ليس له معنى عالمي.عرض في القاموس (عناوين خاصة). وأي شبكة في العالم تقدر تستخدمها من غير ما تستأذن حد. ولأن آلاف الشبكات بتستخدم نفس العناوين، العنوان الخاص مالوش معنى على الإنترنت، وعلشان كده:

  • مينفعش يتنقل على الإنترنت: الأجهزة اللي بتربط الشبكات ببعض المفروض ما تعدّيش أي بيانات رايحة لعنوان خاص أو جاية منه.
  • عادي يتكرر: جهازك وجهاز جارك ممكن يبقوا الاتنين 192.168.1.10، لأن كل واحد في شبكة منفصلة.

أما Public IP Address · العنوان العامعنوان فريد على مستوى الإنترنت كله، يمكن الوصول إليه عبر الإنترنت، بخلاف العنوان الخاص.عرض في القاموس (العناوين العامة) فهي فريدة على الإنترنت كله، ومفيش جهازين على الإنترنت ليهم نفس العنوان العام في نفس الوقت.

طب إزاي جهازك بعنوانه الخاص بيوصل للإنترنت؟ الـ Router · الموجّه (الراوتر)جهاز يربط الشبكات ببعضها ويوجّه حركة البيانات بينها، مثل الراوتر المنزلي الذي يربط شبكة البيت بالإنترنت.عرض في القاموس (الراوتر) اللي في بيتك بيعمل حاجة اسمها NAT (Network Address Translation) · ترجمة عناوين الشبكةطريقة تحوّل عناوين IP من مجموعة إلى أخرى دون أن يشعر المستخدم، وتسمح لأجهزة بعناوين خاصة بالوصول إلى الإنترنت عبر عنوان عام.عرض في القاموس (ترجمة العناوين): كل أجهزة البيت بتطلع على الإنترنت بعنوان عام واحد هو عنوان الراوتر، والراوتر بيفتكر أنهي بيانات راجعة لأنهي جهاز جوه.

عناوين ليها استخدام خاص#

Loopback Address · عنوان الحلقة الداخليةعنوان من النطاق 127.0.0.0/8 يشير إلى الجهاز نفسه، ولا يجوز أن يظهر خارجه، وأشهره 127.0.0.1.عرض في القاموس (127.0.0.0/8): أي عنوان بيبدأ بـ 127 معناه «الجهاز نفسه». وأشهرها 127.0.0.1. البيانات اللي بتتبعت عليه ما بتخرجش من الجهاز أصلًا، وعلشان كده بيستخدم لاختبار إن الشبكة شغالة جوه الجهاز، أو علشان برنامج يكلم برنامج تاني على نفس الجهاز.

APIPA (IPv4 Link-Local) · العنوان التلقائي المحليعنوان من النطاق 169.254.0.0/16 يعطيه الجهاز لنفسه تلقائيًا عند عدم توفر طريقة إعداد أخرى مثل DHCP، ولا يصلح إلا للتواصل مع الأجهزة على نفس الوصلة.عرض في القاموس (169.254.0.0/16): المعتاد إن جهازك ياخد عنوانه تلقائيًا من الراوتر عن طريق بروتوكول اسمه DHCP (Dynamic Host Configuration Protocol) · بروتوكول الإعداد الديناميكي للأجهزةبروتوكول يمرر إعدادات الشبكة إلى الأجهزة تلقائيًا، ومنها توزيع عناوين IP عليها.عرض في القاموس. ولو الجهاز ما لقاش أي طريقة ياخد بيها عنوان، بيدّي لنفسه عنوان بيبدأ بـ 169.254. والعنوان ده بيشتغل مع الأجهزة اللي على نفس الوصلة بس، وما يوصلش للإنترنت.

جرّب بنفسك: اعرف عنوان جهازك#

على Linux:

  1. افتح الطرفية، واكتب:
نافذة الطرفية
ip -4 addr
  1. النتيجة المتوقعة: قائمة بكروت الشبكة، وجنب كلمة inet هتلاقي عنوان IPv4 بتاع كل كارت. مثلًا (بعناوين أمثلة):
الناتج المتوقع
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 ...
    inet 127.0.0.1/8 scope host lo
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 ...
    inet 192.168.1.10/24 brd 192.168.1.255 scope global dynamic enp3s0

لاحظ حاجتين: الكارت lo عليه 127.0.0.1، وده الـ Loopback. والكارت التاني عليه عنوان خاص بيبدأ بـ 192.168. والرقم اللي بعد العلامة / هو صيغة CIDR، وهنشرحها في المقال الجاي.

  1. اختبر إن الشبكة شغالة جوه الجهاز:
نافذة الطرفية
ping -c 2 127.0.0.1
  1. النتيجة المتوقعة: في الآخر هتلاقي سطر فيه 2 received و0% packet loss، يعني الرسالتين رجعوا.

والعناوين وأسماء الكروت عندك هتختلف.

على Windows:

  1. افتح موجّه الأوامر (Command Prompt)، واكتب:
نافذة الطرفية
ipconfig
  1. النتيجة المتوقعة: لكل كارت شبكة، بيظهر عنوان IPv4 وعنوان IPv6، وقناع الشبكة، والبوابة الافتراضية (Default Gateway).

لو حصلت مشكلة:

  • العنوان بيبدأ بـ 169.254؟ ده APIPA، يعني الجهاز ما خدش عنوان من الراوتر. راجع الصندوق اللي فوق.
  • ظهرلك أكتر من كارت؟ ده طبيعي: كارت للكابل، وكارت للواي فاي، والـ Loopback، وكمان كروت افتراضية لو عندك برامج أجهزة افتراضية. دوّر على الكارت اللي عليه عنوان بيبدأ بـ 192.168 أو 10 أو 172.
للمتعمقين

الفئات بالأرقام

الفئةعدد الشبكاتعدد الأجهزة في كل شبكة
A128حوالي 16.7 مليون (16777216 قبل خصم القيم المحجوزة)
B1638465536 قبل خصم القيم المحجوزة
C2097152254

ورقم 254 في الفئة C جاي من 256 احتمال (8 بت) ناقص احتمالين محجوزين: كل البتات أصفار وكل البتات واحد.

عناوين محجوزة تانية

  • 0.0.0.0/8: محجوز، ومعناه «الجهاز ده على الشبكة دي».
  • 240.0.0.0/4: الفئة E، ومحجوزة للاستخدام المستقبلي.
  • 255.255.255.255: اسمه Limited Broadcast، يعني إرسال لكل الأجهزة اللي على الشبكة المحلية بس.

عناوين الأمثلة

فيه 3 نطاقات محجوزة للأمثلة في الشرح والتوثيق بس، ومش بتستخدم في أي شبكة حقيقية: 192.0.2.0/24 و198.51.100.0/24 و203.0.113.0/24. لو شفت عنوان منهم في كتاب أو مقال، يبقى مثال، مش عنوان جهاز حقيقي.

ليه APIPA مهم؟

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

أخطاء شائعة#

  • «العنوان 192.168.1.1 بتاعي أنا بس»: غلط. ده عنوان خاص، وملايين الشبكات بتستخدمه جوه البيوت. العنوان اللي بيشوفه الإنترنت هو عنوان الراوتر العام.
  • «127.0.0.1 عنوان سيرفر على الإنترنت»: غلط. ده الجهاز نفسه، والبيانات المبعوتة عليه ما بتخرجش من الجهاز.
  • «الفئة هي اللي بتحدد الشبكة لحد النهارده»: غلط. نظام الفئات اتبدل بـ CIDR من التسعينات، والحد بين الشبكة والجهاز بقى مرن.
  • «الأرقام في العنوان ممكن توصل لـ 300»: غلط. كل رقم 8 بت، فأكبر قيمة 255. العنوان 192.168.1.300 مش صحيح.
  • «العنوان 169.254.x.x عادي»: غالبًا لأ. ده معناه إن الجهاز ما خدش عنوان من الراوتر، وما يقدرش يوصل للإنترنت.

المصطلحات#

  • عنوان IPv4 (IPv4 Address · عنوان IPv4عنوان طوله 32 بت (4 بايت) يميّز الجهاز على الشبكة، ويتكون من جزء يحدد الشبكة وجزء يحدد الجهاز داخلها.عرض في القاموس): عنوان طوله 32 بت يميّز الجهاز على الشبكة، فيه جزء للشبكة وجزء للجهاز.
  • الثُماني (Octet · الثُّمانيةوحدة بيانات من 8 بتات بالضبط، ويُفضَّل استخدام هذا المصطلح في معايير الشبكات لأن حجم البايت اختلف في بعض الأنظمة القديمة.عرض في القاموس): مجموعة من 8 بتات، وعنوان IPv4 مكوّن من 4 منها.
  • العنوان الخاص (Private IP Address · العنوان الخاصعنوان من نطاقات محجوزة للاستخدام داخل الشبكات الخاصة (10/8 و172.16/12 و192.168/16)، ولا يُمرَّر على الإنترنت لأنه ليس له معنى عالمي.عرض في القاموس): عنوان للاستخدام داخل الشبكات الخاصة، ولا يُمرَّر على الإنترنت.
  • العنوان العام (Public IP Address · العنوان العامعنوان فريد على مستوى الإنترنت كله، يمكن الوصول إليه عبر الإنترنت، بخلاف العنوان الخاص.عرض في القاموس): عنوان فريد على مستوى الإنترنت.
  • ترجمة عناوين الشبكة (NAT (Network Address Translation) · ترجمة عناوين الشبكةطريقة تحوّل عناوين IP من مجموعة إلى أخرى دون أن يشعر المستخدم، وتسمح لأجهزة بعناوين خاصة بالوصول إلى الإنترنت عبر عنوان عام.عرض في القاموس): تحويل العناوين الخاصة إلى عنوان عام للوصول إلى الإنترنت.
  • عنوان الحلقة الداخلية (Loopback Address · عنوان الحلقة الداخليةعنوان من النطاق 127.0.0.0/8 يشير إلى الجهاز نفسه، ولا يجوز أن يظهر خارجه، وأشهره 127.0.0.1.عرض في القاموس): عنوان يشير إلى الجهاز نفسه، وأشهره 127.0.0.1.
  • العنوان التلقائي المحلي (APIPA (IPv4 Link-Local) · العنوان التلقائي المحليعنوان من النطاق 169.254.0.0/16 يعطيه الجهاز لنفسه تلقائيًا عند عدم توفر طريقة إعداد أخرى مثل DHCP، ولا يصلح إلا للتواصل مع الأجهزة على نفس الوصلة.عرض في القاموس): عنوان من النطاق 169.254.0.0/16 يعطيه الجهاز لنفسه عند غياب DHCP.
  • بروتوكول الإعداد الديناميكي (DHCP (Dynamic Host Configuration Protocol) · بروتوكول الإعداد الديناميكي للأجهزةبروتوكول يمرر إعدادات الشبكة إلى الأجهزة تلقائيًا، ومنها توزيع عناوين IP عليها.عرض في القاموس): بروتوكول يوزّع إعدادات الشبكة والعناوين على الأجهزة تلقائيًا.

اختبر نفسك#

جهاز عنوانه 172.20.5.9. ده عنوان خاص ولا عام؟

إظهار الإجابة

خاص. النطاق الخاص 172.16.0.0/12 بيبدأ من 172.16.0.0 لحد 172.31.255.255، و172.20 جوه النطاق ده.

فتحت ipconfig ولقيت عنوان الجهاز 169.254.37.12، والنت مش شغال. إيه المشكلة غالبًا؟

إظهار الإجابة

الجهاز ما خدش عنوان من DHCP، فادّى لنفسه عنوان APIPA. ابدأ بالتأكد من الكابل أو الواي فاي، وجرّب تعيد تشغيل الراوتر.

العنوان 200.10.4.1 كان هيبقى من أنهي فئة في النظام القديم؟

إظهار الإجابة

الفئة C. أول رقم 200، والفئة C من 192 لـ 223.