يعد الترميز الشبكي أحد مفاهيم التوجيه الرئيسية في الشبكات التي يجب أن يكون بديهيًا للمستخدم المحترف لنظام التشغيل لينكس، إذ سنوضح في هذه المقالة ما هو CIDR، وما هي آلية عمله. يرمز اختصار CIDR إلى التوجيه بين النطاقات عديم التصنيف، وهو نظام ترميز عنونة الشبكة الذي يستخدم لتحديد الجزء الخاص بعنوان الشبكة في عنوان IP.
فئات عناوين الشبكة
قبل أن نبدأ بشرح آلية عمل CIDR دعونا نطلع على ترميز الشبكة الفئوي classful الذي حل CIDR محله. طُرِح النظام الفئوي في عام 1981، وكان يعرِّف 5 فئات لعناوين الشبكة تستخدم في تحديد الأجهزة الموصولة على الإنترنت وعنونتها. تحدَّد الفئة المخصصة للشبكة بأول 4 بتات من العنوان.
العنوان/ الشبكة | الشبكات | CIDR | قناع الشبكة | النهاية | البداية | البتات البادئة | الفئة |
---|---|---|---|---|---|---|---|
16,177,216 (224) | 128 | 8/ | 255.0.0.0 | 127.255.255.255 | 0.0.0.0 | 0 | A |
65,536 (216) | 16,384 | 16/ | 255.255.0.0 | 191.255.255.255 | 128.0.0.0 | 10 | B |
256 (28) | 2,097,152 | 24/ | 255.255.255.0 | 223.255.255.255 | 192.0.0.0 | 110 | C |
غير محددة | غير محددة | 239.255.255.255 | 224.0.0.0 | 1110 | D | ||
غير محددة | غير محددة | 255.255.255.255 | 240.0.0.0 | 1111 | E |
يعرض الجدول فئات عناوين الشبكة الخمسة التي تحددها عنونة الشبكة الفئوية، متضمنًا كلًا من قناع الشبكة وترميز CIDR لكل فئة. الفئات A و B و C هي مجالات عناوين البث الأحادي unicast التي يشيع إسنادها إلى المؤسَّسات. يشير البث الأحادي إلى أن رزم البيانات ترسَل إلى مضيف واحد. أما الفئة D مخصصة لما يسمى بمجال عناوين البث المتعدد multicast، إذ ترسل في هذا المجال رزم البيانات إلى جميع المضيفين الموجودين ضمن شبكة محددة. لم يكن هذا المجال من العناوين IP مستخدمًا تقريبًا. وأما مجال عناوين الفئة E كان محجوزًا لإمكانية التوسع في المستقبل لكنه لم يستخدَم أيضًا قط.
لاحظ أنه لا يوجد إلا 3 احتمالات لأقنعة الشبكة التي تتوافق مع كل فئة من الشبكات الفئوية، وهي: 255.0.0.0 (8 بت)، و 255.255.0.0 (16 بت)، و 255.255.255.0 (24 بت)، مقسَّمةً إلى ثمانيات منفصلة. هذا إحدى العوامل التي جعلت تخصيص العناوين العامة Public IP addresses محدودًا، ويرجع ذلك إلى عدد الشبكات المحدود نسبيًا الذي تحدده هذه الفئات.
للأسف أدى تخصيص الشبكات الفئوية إلى هدر ضخم في العناوين. فمثلًا عندما تطلب المؤسَّسات الحصول على عدد من العناوين الذي يكون أكبر من عدد العناوين المتاحة في شبكة من الفئة C، سيخصص لهم شبكةً كاملةً من الفئة B سواءً احتاجوا إلى جميع العناوين في تلك الشبكة أم لا. وينطبق المثال ذاته على الشبكات من الفئة B، فبعض المؤسَّسات الكبرى احتاجت إلى شبكة أكبر من الشبكات من الفئة B فخصِّصت لهم شبكات من الفئة A. وبالتالي خُصص عدد هائل من العناوين IP لبعض المؤسَّسات الكبرى فقط.
من المهم أن نفهم أن أول 4 بتات (التي تكون أقصى اليسار) من العنوان هي من تحدد فئة الشبكة، وليس قناع الشبكة أو CIDR المكافئ له. هذا يعني من الناحية العملية أنه لا يمكن تقسيم الشبكات الضخمة إلى شبكات فرعية على مستوى الإنترنت، لأن الموجهات على الإنترنت تستطيع تحديد مسارًا واحدًا فقط إلى كل شبكة فئوية مخصصة. إضافةً إلى ذلك، رغم أن المؤسسَّسات التي تملك الشبكات الفئوية الضخمة تستطيع تقسيمها إلى شبكات فرعية، لكن توجيه الرزم إلى مواقع جغرافية أخرى تنتمي إلى نفس الشبكة سيتطلب عندها أن تستخدم المؤسَّسة شبكات داخلية خاصة أو شبكات خاصة افتراضية VPN عامة ذات تكلفة باهظة.
مثلًا ليكن لدينا شركة تتضمن 6 أقسام وتحتاج إلى تخصيص 400 عنوان IP لكل منها، التي يعادل مجموعها 2400 عنوان. لن تفي شبكة واحدة من الفئة C التي تحتوي على 256 عنوان IP فقط بالغرض، لذا ستُخصَّص للشركة شبكة من الفئة B التي تعنون حتى 65,536 جهاز، لذا ستهدَر العناوين 63,136 المتبقية لأنه لا يمكن تخصيصها لمؤسَّسة أخرى.
اقتباسملاحظة: من الضروري في هذا المثال استخدام جزء من مجموعة عناوين 10.0.0.0/8 CIDR الخاصة الحالية بدلًا من العنوان العام من الفئة B، وهذا تجنبًا لذكر عناوين عامة قد تكون مخصصةً لإحدى المؤسَّسات.
استخدمت برنامج sipcalc على موجه الأوامر لتوفير المعلومات الشبكية لهذه الشبكة من الفئة B التي اخترتها عشوائيًا من مجال العناوين العام المزيف. يوفر الأمر sipcalc
عددًا كبيرًا من المعلومات عن عنوان أو مجال من العناوين IP. وكما سترى لاحقًا، يستطيع هذا الأمر توليد قائمةً بالشبكات الفرعية ضمن مجال عناوين محدد عند تزويده بقناع الشبكة. قد تضطر إلى تثبيت برنامج sipcalc، حيث أنه لم يكن مثبتًا افتراضيًا على نظام التشغيل فيدورا Fedora لدي.
$ sipcalc 10.125.0.0/16 -[ipv4 : 10.125.0.0/16] - 0 [CIDR] Host address - 10.125.0.0 Host address (decimal) - 175964160 Host address (hex) - A7D0000 Network address - 10.125.0.0 Network mask - 255.255.0.0 Network mask (bits) - 16 Network mask (hex) - FFFF0000 Broadcast address - 10.125.255.255 Cisco wildcard - 0.0.255.255 Addresses in network - 65536 Network range - 10.125.0.0 - 10.125.255.255 Usable range - 10.125.0.1 - 10.125.255.254
يظهر خرج الأمر sipcalc عنوان الشبكة network address وقناع الشبكة netmask ومجال عناوين الشبكة network address range إضافةً إلى العناوين المتاحة في هذا المجال وغير ذلك. إن العنوان 10.125.0.0 هو عنوان الشبكة والعنوان 10.125.255.255 هو عنوان البث العام broadcast لهذه الشبكة. لا يمكن إسناد هذين العنوانين إلى المضيفين.
كان الخيار الآخر المتاح تخصيص عدة شبكات من الفئة C للشركة. سيخفض هذا الخيار عناوين IP المهدورة بدرجة كبيرة لكن سيصبح ضبط التوجيه بين شبكات هذه الشركة معقدًا أكثر من ضبط التوجيه لشبكة واحدة. كما سيخفض هذا الخيار عدد الشبكات المتاحة من الفئة C التي تستطيع مؤسسات أخرى حجزها.
مفهوم CIDR
طُرح مفهوم ترميز CIDR في عام 1993 كوسيلة لإطالة عمر عناوين IPV4 التي كانت تنفد منها العناوين المتاحة. حقق ترميز CIDR هذا بأن أتاح للمؤسَّسات أن تستفيد استفادةً كاملةً من مجالات عناوين IPV4 المسنَدة إليها، وبإتاحة بعض مجالات العناوين التي كانت محجوزة.
حسّن نهج RFC1918 من CIDR بتخصيص شبكات محجوزة من مجالات الفئات A و B و C لا يمكن توجيهها خارج الشبكة الداخلية. تستطيع أية مؤسَّسة استخدام هذه الشبكات الخاصة private networks بحرية ضمن شبكاتها الداخلية. لذا لم يعد ضروريًا أن يسنَد عنوان IP عام لكل حاسوب. كانت لهذه الخاصية الحصة الأكبر في حل عدة مشاكل.
عدد عناوين IP | مجال العناوين | مجموعة CIDR |
---|---|---|
16,777,216 | 10.0.0.0 – 10.255.255.255 | 10.0.0.0/8 |
1,048,576 | 172.16.0.0 – 172.31.255.25 | 172.16.0.0/12 |
65,536 | 192.168.0.0 – 192.168.255.255 | 192.168.0.0/16 |
أتاحت هذه الشبكات الخاصة الداخلية تخصيص عنوان IP عام أو أكثر قليلًا للمؤسَّسة الواحدة لتتمكن من الوصول إلى الإنترنت الخارجي، وتوفير مجالات عناوين خاصة واسعة ضمن الشبكات الداخلية. ويمكن لأكثر من مؤسَّسة مختلفة استخدام أي مجال من مجالات العناوين هذه، لأن عناوين الشبكة الخاصة هذه لا يمكن توجيهها عبر الإنترنت، لكن بالطبع تستطيع المؤسَّسات التوجيه بين الشبكات الخاصة داخليًا.
لنعد إلى الشركة في مثالنا، ولنفترض أنها تحتاج إلى عنوان IP عام واحد فقط للاتصال بالعالم الخارجي. لا يخصص مزود الخدمة الذي تتعامل معه الشركة مجموعات تحتوي أقل من 4 عناوين، اثنان منهم محجوزان لعنوان الشبكة وعنوان البث العام، ويبقى عنوانين فقط يمكن إسنادهما إلى الأجهزة. يحقق هذا توازنًا بين العناوين التي لا يمكن إسنادها بسبب المغالاة في تقسيم الشبكة إلى شبكات فرعية subnetting، والعناوين المهدورة، والكلفة المترتبة على العميل.
يخصص مزود خدمة الإنترنت عنوان شبكة عام للشركة، وهو 10.125.16.32/30. تذكر مثلًا أننا سنستخدم جزءًا من الشبكة الخاصة 10.0.0.0/8 على أنه شبكة عامة. سيوفر هذا التخصيص للشركة الشبكة العامة التالية:
$ sipcalc 10.125.16.32/30 -[ipv4 : 10.125.16.32/30] - 0 [CIDR] Host address - 10.125.16.32 Host address (decimal) - 175968288 Host address (hex) - A7D1020 Network address - 10.125.16.32 Network mask - 255.255.255.252 Network mask (bits) - 30 Network mask (hex) - FFFFFFFC Broadcast address - 10.125.16.35 Cisco wildcard - 0.0.0.3 Addresses in network - 4 Network range - 10.125.16.32 - 10.125.16.35 Usable range - 10.125.16.33 - 10.125.16.34
تستطيع الشركة في مثالنا أن تختار استخدام أي مجال من مجالات الشبكة الخاصة ضمن شبكتها الداخلية، ثم تستعين بخدمة ترجمة عنوان الشبكة NAT للوصول إلى العالم الخارجي من شبكتها الداخلية الخاصة.
$ sipcalc 172.16.0.0/12 -[ipv4 : 172.16.0.0/12] - 0 [CIDR] Host address - 172.16.0.0 Host address (decimal) - 2886729728 Host address (hex) - AC100000 Network address - 172.16.0.0 Network mask - 255.240.0.0 Network mask (bits) - 12 Network mask (hex) - FFF00000 Broadcast address - 172.31.255.255 Cisco wildcard - 0.15.255.255 Addresses in network - 1048576 Network range - 172.16.0.0 - 172.31.255.255 Usable range - 172.16.0.1 - 172.31.255.254
في الوهلة الأولى، قد يكون أول أمر واضح تفعله هو اختيار شبكة من المجال الخاص 172.16.0.0/12 لتوفير مجال واسع بما يكفي لشبكة داخلية واحدة. يمكنهم مثلًا اختيار الشبكة 172.16.0.0/12 التي ستوفر حيز الشبكة الداخلية التالية لهم.
لاحظ أن هذه الشبكة لا تتوافق مع الشبكة من الفئة B المتعارف عليها لأنها تتضمن عددًا أقل من بتات الشبكة في قناع الشبكة، وبالتالي هي توفر حيزًا أوسع لبتات عنوان المضيف، إذ تتيح بتات الشبكة الاثنا عشرة حيز عشرين بتًا للمضيفين، أو 1,048,576 مضيف بالمجمَل. هذا العدد من المضيفين أكبر بكثير من العدد الذي توفره الشبكة من الفئة B المتعارف عليها للشبكة الواحدة. كما أنه حيز أوسع بكثير مما يحتاجون إليه فعلًا لشبكتهم.
أقنعة الشبكة متغيرة الطول VLSM
رافق CIDR ظهور نهج جديد مختلف عن نهج تحديد قناع الشبكة المتعارف عليه، يسمى أقنعة الشبكة متغيرة الطول VLSM. أشرنا إلى هذا النهج عند استخدام قناع شبكة من 12 بت لمجال العناوين الخاص المحدد بمجموعة CIDR Block في المثال السابق.
تتيح أقنعة الشبكة متغيرة الطول للشركة في مثالنا أن تنشئ بسهولة شبكات فرعية يمكنها إدارتها أكثر من إدارة حيز العناوين الخاصة الواسع المتاح لهم بإضافة بتات إلى قناع الشبكة. يشمل استخدام قناع شبكة بطول 12 بت كامل مجال العناوين الخاصة المتاح، لذا ليكونوا أكثر اعتدالًا في حيز العناوين الذي تحتاجه الشركة فعلًا، قرروا زيادة عدد البتات في قناع الشبكة الذي سيستخدمونه.
تستطيع استخدام الأمر sipcalc - s xx
لحساب عدد الشبكات الفرعية في مجال العناوين الخاصة، حيث تستبدل xx بعدد البتات في قناع الشبكة. مثلًا يستعرض الأمر في المثال التالي الشبكات الفرعية الستة عشرة للشبكة 172.16.0.0/12 التي قناع الشبكة الخاص بها هو 16 بت.
$ sipcalc 172.16.0.0/12 -s 16 -[ipv4 : 172.16.0.0/12] - 0 [Split network] Network - 172.16.0.0 - 172.16.255.255 Network - 172.17.0.0 - 172.17.255.255 Network - 172.18.0.0 - 172.18.255.255 Network - 172.19.0.0 - 172.19.255.255 Network - 172.20.0.0 - 172.20.255.255 Network - 172.21.0.0 - 172.21.255.255 Network - 172.22.0.0 - 172.22.255.255 Network - 172.23.0.0 - 172.23.255.255 Network - 172.24.0.0 - 172.24.255.255 Network - 172.25.0.0 - 172.25.255.255 Network - 172.26.0.0 - 172.26.255.255 Network - 172.27.0.0 - 172.27.255.255 Network - 172.28.0.0 - 172.28.255.255 Network - 172.29.0.0 - 172.29.255.255 Network - 172.30.0.0 - 172.30.255.255 Network - 172.31.0.0 - 172.31.255.255
باستخدامهم الأمر sipcalc
لحساب عدد العناوين التي يوفرها عدد مختلف من البتات في قناع الشبكة 172.16.0.0/12، يحددون ما يلي:
عدد العناوين | عدد البتات في قناع الشبكة |
---|---|
1,048,576 | 12 |
65,536 | 16 |
32,768 | 17 |
16,384 | 18 |
8,192 | 19 |
4,096 | 20 |
سبق وذكرنا أن الشركة تحتاج إلى 2400 عنوان IP. تختار الشركة أن تستخدم قناع شبكة ذو 19 بت الذي يوفر 8,192 عنوانًا، وذلك لتتيح مجالًا فسيحًا للتوسع وتخفض العدد الإجمالي من العناوين إلى عدد تستطيع إدارته في ذات الوقت. واستخدموا في حساب الشبكات الفرعية المتاحة الأمر sipcalc
وفق ما يلي:
$ sipcalc 172.16.0.0/12 -s 19 -[ipv4 : 172.16.0.0/12] - 0 [Split network] Network - 172.16.0.0 - 172.16.31.255 Network - 172.16.32.0 - 172.16.63.255 Network - 172.16.64.0 - 172.16.95.255 Network - 172.16.96.0 - 172.16.127.255 Network - 172.16.128.0 - 172.16.159.255 Network - 172.16.160.0 - 172.16.191.255 Network - 172.16.192.0 - 172.16.223.255 Network - 172.16.224.0 - 172.16.255.255 <snip> Network - 172.31.0.0 - 172.31.31.255 Network - 172.31.32.0 - 172.31.63.255 Network - 172.31.64.0 - 172.31.95.255 Network - 172.31.96.0 - 172.31.127.255 Network - 172.31.128.0 - 172.31.159.255 Network - 172.31.160.0 - 172.31.191.255 Network - 172.31.192.0 - 172.31.223.255 Network - 172.31.224.0 - 172.31.255.255
اختارت الشركة عشوائيًا استخدام الشبكة الفرعية 172.30.64.0/19، لتبدو مواصفات شبكتها كما يلي:
$ sipcalc 172.30.64.0/19 -[ipv4 : 172.30.64.0/19] - 0 [CIDR] Host address - 172.30.64.0 Host address (decimal) - 2887663616 Host address (hex) - AC1E4000 Network address - 172.30.64.0 Network mask - 255.255.224.0 Network mask (bits) - 19 Network mask (hex) - FFFFE000 Broadcast address - 172.30.95.255 Cisco wildcard - 0.0.31.255 Addresses in network - 8192 Network range - 172.30.64.0 - 172.30.95.255 Usable range - 172.30.64.1 - 172.30.95.254
طبعًا هذه إحدى الشبكات الفرعية المحتمَلة ذات 19 بت من بين 128 شبكة فرعية في مجال العناوين الخاصة، ولا فرق في أية شبكة فرعية كانت ستختارها.
كما يوجد لديها خيار آخر وهو استخدام مجال العناوين الخاصة 192.168.0.0/16 واختيار إحدى الشبكات الفرعية المتاحة ذات 19 بت من ذلك المجال. يمكنك التدرب بتحديد ما هي الشبكات الفرعية المتاحة في ذلك المجال، وما هو عددها.
الخاتمة
إن استخدام ترميز CIDR إلى جانب إعادة تنظيم مجموعة CIDR للعناوين الموزعة مسبقًا، إضافةً إلى استخدام أقنعة الشبكة متغيرة الطول، يوفر مزيدًا من عناوين IP العامة المتاحة، ومزيدًا من المرونة في تخصيص العناوين العامة. يراعي تصميم ترميز CIDR مع أقنعة الشبكة متغيرة الطول المخطط الشبكي الفئوي المتعارف عليه إلى جانب تأمين مرونة أكبر وتوافر عناوين IP للاستخدام الداخلي الخاص لمختلف فئات المؤسَّسات. يمكن تقسيم مجالات العناوين الخاصة إضافةً إلى مجالات العناوين العامة المخصصة بسهولة إلى شبكات فرعية، بإضافة بتات إلى قناع الشبكة دون مراعاة فئات الشبكة.
يمكن استخدام ترميز CIDR عند الإشارة إلى الشبكات الفئوية لكن فقط كاختصار رمزي.
ترجمة -وبتصرف- للمقال A Linux networking guide to CIDR notation and configuration لصاحبه David Both.
أفضل التعليقات
لا توجد أية تعليقات بعد
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.