انتقل إلى المحتوى الرئيسي

حاسبة CIDR

فهم CIDR بعمق​

CIDR (التوجيه بين المجالات بدون فئات) هو النظام المستخدم لتحديد نطاقات عناوين IP في AWS.

جدول مرجعي لـ CIDR​

┌─────────────────────────────────────────────────────────────┐
│ جدول CIDR الكامل │
├─────────────────────────────────────────────────────────────┤
│ │
│ البادئة │ القناع │ العناوين │ القابلة للاستخدام │
│ ────────┼───────────────────┼──────────┼─────────────────│
│ /16 │ 255.255.0.0 │ 65,536 │ 65,531 │
│ /17 │ 255.255.128.0 │ 32,768 │ 32,763 │
│ /18 │ 255.255.192.0 │ 16,384 │ 16,379 │
│ /19 │ 255.255.224.0 │ 8,192 │ 8,187 │
│ /20 │ 255.255.240.0 │ 4,096 │ 4,091 │
│ /21 │ 255.255.248.0 │ 2,048 │ 2,043 │
│ /22 │ 255.255.252.0 │ 1,024 │ 1,019 │
│ /23 │ 255.255.254.0 │ 512 │ 507 │
│ /24 │ 255.255.255.0 │ 256 │ 251 │
│ /25 │ 255.255.255.128 │ 128 │ 123 │
│ /26 │ 255.255.255.192 │ 64 │ 59 │
│ /27 │ 255.255.255.224 │ 32 │ 27 │
│ /28 │ 255.255.255.240 │ 16 │ 11 │
│ │
│ ملاحظة: "القابلة للاستخدام" = الإجمالي - 5 (محجوزة بواسطة AWS) │
│ │
└─────────────────────────────────────────────────────────────┘

صيغة الحساب​

┌─────────────────────────────────────────────────────────────┐
│ الصيغة السحرية │
├─────────────────────────────────────────────────────────────┤
│ │
│ عدد العناوين = 2^(32 - البادئة) │
│ │
│ أمثلة : │
│ │
│ /16 : 2^(32-16) = 2^16 = 65,536 عنوان │
│ /24 : 2^(32-24) = 2^8 = 256 عنوان │
│ /28 : 2^(32-28) = 2^4 = 16 عنوان │
│ │
│ قوى 2 التي يجب تذكرها : │
│ 2^4 = 16 2^8 = 256 2^12 = 4,096 │
│ 2^5 = 32 2^9 = 512 2^16 = 65,536 │
│ 2^6 = 64 2^10 = 1,024 │
│ 2^7 = 128 2^11 = 2,048 │
│ │
└─────────────────────────────────────────────────────────────┘

أمثلة على التقسيم​

المثال 1: VPC قياسي​

┌─────────────────────────────────────────────────────────────┐
│ تقسيم VPC 10.0.0.0/16 │
├─────────────────────────────────────────────────────────────┤
│ │
│ VPC : 10.0.0.0/16 (65,536 عنوان) │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ الشبكات الفرعية /24 الممكنة : 256 │ │
│ │ العناوين لكل شبكة فرعية : 251 (قابلة للاستخدام) │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ التقسيم المقترح : │
│ │
│ عام (10.0.0.0 - 10.0.9.255) │
│ ├── 10.0.1.0/24 عام-1a 251 IPs │
│ ├── 10.0.2.0/24 عام-1b 251 IPs │
│ └── 10.0.3.0/24 عام-1c 251 IPs │
│ │
│ خاص تطبيق (10.0.10.0 - 10.0.19.255) │
│ ├── 10.0.11.0/24 خاص-1a 251 IPs │
│ ├── 10.0.12.0/24 خاص-1b 251 IPs │
│ └── 10.0.13.0/24 خاص-1c 251 IPs │
│ │
│ خاص قاعدة بيانات (10.0.20.0 - 10.0.29.255) │
│ ├── 10.0.21.0/24 قاعدة-1a 251 IPs │
│ ├── 10.0.22.0/24 قاعدة-1b 251 IPs │
│ └── 10.0.23.0/24 قاعدة-1c 251 IPs │
│ │
│ محجوز للتوسع : 10.0.30.0 - 10.0.255.255 │
│ │
└─────────────────────────────────────────────────────────────┘

المثال 2: VPC صغير​

┌─────────────────────────────────────────────────────────────┐
│ تقسيم VPC 10.0.0.0/20 │
├─────────────────────────────────────────────────────────────┤
│ │
│ VPC : 10.0.0.0/20 (4,096 عنوان) │
│ النطاق : 10.0.0.0 - 10.0.15.255 │
│ │
│ التقسيم إلى /24 : │
│ │
│ 10.0.0.0/24 → عام-1a │
│ 10.0.1.0/24 → عام-1b │
│ 10.0.2.0/24 → خاص-1a │
│ 10.0.3.0/24 → خاص-1b │
│ 10.0.4.0/24 → قاعدة-1a │
│ 10.0.5.0/24 → قاعدة-1b │
│ 10.0.6.0/24 - 10.0.15.0/24 → محجوز │
│ │
│ الإجمالي المستخدم : 6 شبكات فرعية = 1,506 IPs قابلة للاستخدام │
│ الاحتياطي : 10 شبكات فرعية = 2,510 IPs │
│ │
└─────────────────────────────────────────────────────────────┘

تمارين عملية​

التمرين 1: حساب أساسي​

السؤال: كم عدد العناوين في /22 ؟

💡 الحل
2^(32-22) = 2^10 = 1,024 عنوان
قابلة للاستخدام : 1,024 - 5 = 1,019 عنوان

التمرين 2: تقسيم​

السؤال: لديك VPC 172.16.0.0/16. قم بإنشاء 4 شبكات فرعية متساوية.

💡 الحل
VPC : 172.16.0.0/16 (65,536 IPs)
التقسيم إلى 4 = 65,536 / 4 = 16,384 IPs لكل منها

للحصول على 16,384 عنوان : /18

الشبكات الفرعية :
172.16.0.0/18 → 172.16.0.0 - 172.16.63.255
172.16.64.0/18 → 172.16.64.0 - 172.16.127.255
172.16.128.0/18 → 172.16.128.0 - 172.16.191.255
172.16.192.0/18 → 172.16.192.0 - 172.16.255.255

التمرين 3: التحقق من التداخل​

السؤال: هل تتداخل هاتان النطاقتان؟

  • 10.0.0.0/24
  • 10.0.1.0/24
💡 الحل
10.0.0.0/24 : 10.0.0.0 - 10.0.0.255
10.0.1.0/24 : 10.0.1.0 - 10.0.1.255

لا، لا تتداخلان.
هما متجاورتان ولكن منفصلتان.

التمرين 4: تداخل حقيقي​

السؤال: هل تتداخل هاتان النطاقتان؟

  • 10.0.0.0/16
  • 10.0.5.0/24
💡 الحل
10.0.0.0/16 : 10.0.0.0 - 10.0.255.255
10.0.5.0/24 : 10.0.5.0 - 10.0.5.255

نعم! 10.0.5.0/24 محتوى في 10.0.0.0/16

لا يمكن أن يكون لديك هذان CIDR في نفس المستوى.
يمكن أن يكون 10.0.5.0/24 شبكة فرعية لـ 10.0.0.0/16.

أدوات عبر الإنترنت​

حاسبات CIDR مجانية​

  1. CIDR.xyz - https://cidr.xyz/

    • تصور بياني
    • بسيط وسريع
  2. IP Address Guide - https://www.ipaddressguide.com/cidr

    • حساب مفصل
    • تقسيم تلقائي
  3. Visual Subnet Calculator - https://www.davidc.net/sites/default/subnets/subnets.html

    • مرئي جداً
    • مثالي للتخطيط

أمر AWS CLI​

# التحقق من CIDR قبل الإنشاء
aws ec2 describe-vpcs --filters "Name=cidr,Values=10.0.0.0/16"

# إنشاء VPC مع التحقق من CIDR
aws ec2 create-vpc --cidr-block 10.0.0.0/16

# إضافة CIDR ثانوي
aws ec2 associate-vpc-cidr-block --vpc-id vpc-xxx --cidr-block 10.1.0.0/16

أفضل الممارسات​

┌─────────────────────────────────────────────────────────────┐
│ أفضل الممارسات لـ CIDR │
├─────────────────────────────────────────────────────────────┤
│ │
│ ✅ يجب فعله │
│ │
│ • توثيق خطة العنونة الخاصة بك │
│ • ترك مساحة للنمو │
│ • استخدام CIDR القياسية (/16, /24) │
│ • تجنب التداخل بين VPC │
│ • التخطيط لـ VPC Peering (CIDR متميزة) │
│ │
│ ❌ يجب تجنبه │
│ │
│ • CIDR صغير جداً (صعب التوسع) │
│ • CIDR يتداخل مع VPC آخر │
│ • استخدام 192.168.x.x (تعارض شبكة المنزل) │
│ • نسيان 5 IPs المحجوزة لكل شبكة فرعية │
│ │
└─────────────────────────────────────────────────────────────┘

ملخص​

المفهومالصيغة/القيمة
حساب IPs2^(32-البادئة)
/1665,536 IPs
/24256 IPs
IPs المحجوزة لـ AWS5 لكل شبكة فرعية
الحد الأدنى لـ AWS/28 (16 IPs)
الحد الأقصى لـ AWS/16 (65,536 IPs)

العودة: نظرة عامة على الوحدة 5