آنچه در مقاله میخوانید
CIDR روشی استاندارد برای آدرسدهی و دستهبندی اینترنتی است که جایگزین کلاسهای قدیمی شد تا از هدررفت آیپیها جلوگیری کند. پیش از ابداع این راهکار، تقسیمبندی صلب آدرسها اینترنت را با بحران کمبود فضا مواجه کرده بود؛ اما برای اینکه دقیقتر بدانیم سازوکار واقعی CIDR چیست، باید گفت این استاندارد با معرفی پیشوندهای منعطف (مانند /24)، امکان تخصیص دقیق تعداد آدرسهای موردنیاز را برای شبکهها فراهم کرد.
اگر میخواهید بدانید کاربرد اساسی CIDR چیست، در این مطلب از وبلاگ مبین هاست نحوۀ کارکرد این ساختار، شیوۀ خواندن نمادگذاری اسلش و روشهای محاسبۀ سریع آن را بررسی میکنیم. تا انتهای این مطلب همراه ما باشید.
مفهوم CIDR در شبکه چیست و چرا ابداع شد؟
برای درک اینکه مفهوم CIDR در شبکه چیست، باید به ساختار آدرسدهی اولیۀ اینترنت در دهۀ ۱۹۸۰ برگردیم. عبارت CIDR مخفف Classless Inter-Domain Routing به معنای «مسیریابی بیندامنهای بدون کلاس» است. بر پایۀ استاندارد رسمی مهندسی اینترنت در RFC 4632، این راهکار در اوایل دهۀ ۱۹۹۰ میلادی برای مهار دو چالش فنی بزرگ معرفی شد:
- پیشگیری از اتمام سریع فضای IPv4: توقف هدررفت گستردۀ آدرسها که به دلیل مرزبندیهای غیرمنعطف در کلاسهای قدیمی رخ میداد.
- مهار رشد انفجاری جدول مسیریابی اینترنت (BGP): تجمیع رنجهای متعدد در یک مسیر کلی، تا حافظۀ سختافزاری روترهای ستون فقرات اینترنت اشباع نشود.
این واقعیت در مورد CIDR به ما نشان میدهد چگونه این معماری بدون نیاز به تغییر طول آدرسهای ۳۲ بیتی، عمر عملیاتی IPv4 را بیش از دو دهه تمدید کرد.
محدودیتهای کلاسهای سنتی (Class A, B, C)
در مدل سنتی آدرسدهی که در سند RFC 791 تعریف شده بود، هر آدرس IP با توجه به مقادیر بیتهای ابتدایی در یکی از کلاسهای صلب قرار میگرفت:
- کلاس A: پیشوند 8/ با گنجایش بیش از ۱۶ میلیون آدرس میزبان (برای ابرسازمانها).
- کلاس B: پیشوند 16/ با ظرفیت ۶۵,۵۳۴ آدرس میزبان.
- کلاس C: پیشوند 24/ با ظرفیت تنها ۲۵۴ آدرس میزبان.
تفاوت آدرسدهی Classful و Classless در مبحث شبکه و CIDR
تفاوت بنیادین این دو رویکرد در جدول زیر خلاصه شده است:
| شاخص ارزیابی | آدرسدهی سنتی با کلاس (Classful) | آدرسدهی بدون کلاس (CIDR) |
| تعیین مرز شبکه | مرزهای ثابت در اکتتها (فقط پیشوندهای 8/، 16/ و 24/) | مرزبندی متغیر روی هر بیتی از 0/ تا 32/ |
| میزان اتلاف آدرسها | بسیار بالا به دلیل پرشهای ظرفیتی نامتناسب | حداقل هدررفت با امکان انتخاب دقیق ابعاد سابنت |
| بار حافظۀ روترها | ثبت جداگانه هر شبکه و اشباع جداول BGP | فشردهسازی هزاران مسیر در قالب اعلانهای تجمیعی |
ساختار نمادگذاری CIDR (Slash Notation) چگونه کار میکند؟
در مدل CIDR، مرزبندی خشک بایتها برداشته شد و مدیران شبکه توانستند مرز شبکه را روی هر بیتی از فضای ۳۲ بیتی قرار دهند. این ساختار به فرمت نمادگذاری اسلش IP/Prefix نمایش داده میشود (مانند 192.168.10.130/26). عدد پس از علامت اسلش () طول پیشوند نام دارد و مشخص میکند چند بیت از سمت چپ به شناسۀ شبکه (Network Prefix) اختصاص یافته است:
برای نمونه، در نشانی 192.168.10.130/26، تعداد ۲۶ بیت اول به شناسۀ شبکه اختصاص دارد و ۶ بیت باقیمانده برای آدرسدهی به میزبانها استفاده میشود.
برای محاسبۀ تعداد کل آدرسهای IP در یک شبکه با استفاده از CIDR، کافی است طول پیشوند را از عدد ۳۲ کم کنیم و عدد ۲ را به توان مقدار بهدستآمده برسانیم. فرمول این محاسبه به شکل زیر است:
در این فرمول، n طول پیشوند CIDR است که بعد از علامت اسلش (/) قرار میگیرد.
در نتیجه، این زیرشبکه در مجموع ۶۴ آدرس IP دارد که در حالت معمول، ۶۲ آدرس آن برای میزبانها قابل استفاده است؛ زیرا یک آدرس به شناسۀ شبکه و یک آدرس به برودکست اختصاص دارد.
اگر بپرسید نقش مسیریابی در CIDR چیست، باید گفت روترها برای پیدا کردن مقصد نهایی هر بسته، آدرس IP مقصد را با ماسک زیرشبکه در عملیات بیتی AND ترکیب میکنند. اگر برای یک بسته چند مسیر مختلف در جدول وجود داشته باشد، قانون استاندارد Longest Prefix Match طولانیترین پیشوند منطبق (خاصترین مسیر) را برای هدایت بسته انتخاب میکند.
راهنمای گامبهگام محاسبه CIDR از روی IP
پس از اینکه بررسی کردیم مفاهیم اولیه CIDR چیست، در این بخش میخواهیم فرایند محاسبه CIDR از روی IP و ماسک زیرشبکه را مرور کنیم که روندی سرراست است و برای انجام آن نیازی به محاسبات پیچیده ریاضی نیست. بهمنظور محاسبه CIDR از روی IP کافی است ۳ گام زیر را دنبال کنید:
1) شناسایی ماسک زیرشبکه (Subnet Mask)
ابتدا به ماسک عددی شبکه خود نگاه کنید؛ به عنوان نمونه مقدار 255.255.255.0 را در نظر بگیرید.
2) شمارش بیتهای فعال (یکها)
هر بخش ۲۵۵ در سیستم باینری برابر با هشت بیت یک است (11111111). با جمع زدن بیتهای یک، پیشوند اسلش به دست میآید:
$$8 + 8 + 8 + 0 = 24 \longrightarrow /24$$
3) محاسبۀ میزبانهای قابل استفاده
برای شبکههای معمول، تعداد کل آدرسها را حساب کرده و ۲ نشانی رزروشده را کسر کنید:
بررسی نمونۀ عملی (مثال 192.168.10.130/26)
در این مثال، ۲۶ بیت اول مربوط به شبکه و ۶ بیت آخر (۳۲ – ۲۶ = ۶) مربوط به هاست است. برای تبدیل اکتتی مانند ۱۹۲ به باینری، بیتهای فعال ارزشگذاری میشوند (128 + 64 = 192) که معادل باینری 11000000 است. با برقراری بیتهای هاست، محاسبات به شرح زیر خواهد بود:
- آدرس شبکه (Network ID): 168.10.128
- آدرس برودکست (Broadcast): 168.10.191
- بازۀ آدرسهای قابل استفاده: 168.10.129 تا 192.168.10.190
هشدار فنی: علت کسر دو آدرس در هر سابنت
طبق استانداردهای رسمی RFC 919 و RFC 922، در هر زیر شبکه استاندارد دو نشانی قابل واگذاری به کامپیوترها نیست: اولین نشانی که بیتهای هاست آن همگی صفر است، معرف شناسۀ کل شبکه (Network ID) بوده و آخرین نشانی که بیتهای هاست آن همگی یک است، به عنوان آدرس برودکست (Directed Broadcast) برای ارسال عمومی پیام به تمام سیستمهای سابنت رزرو شده است.
جدول راهنمای سریع (Cheat Sheet) مقادیر پرکاربرد CIDR
برای دسترسی سریع به مشخصات سابنتها و ممانعت از محاسبات تکراری در راهاندازی سرورها، جدول زیر مقادیر متداول از 24/ تا 32/ را به تفکیک ظرفیت نشان میدهد:
| پیشوند CIDR | ماسک نقطهدار معادل | کل آدرسهای IP | آدرسهای قابل استفاده برای هاست | سناریوی کاربردی |
| 24/ | 255.255.255.0 | ۲۵۶ | ۲۵۴ | شبکۀ محلی اداری، هاستینگ اشتراکی |
| 25/ | 255.255.255.128 | ۱۲۸ | ۱۲۶ | تفکیک شبکۀ محلی به دو بخش مجزا |
| 26/ | 255.255.255.192 | ۶۴ | ۶۲ | بخشبندی VLAN و محیطهای تست |
| 27/ | 255.255.255.224 | ۳۲ | ۳۰ | زیرشبکۀ دپارتمانی یا کلاستر سرور |
| 28/ | 255.255.255.240 | ۱۶ | ۱۴ | شبکۀ مدیریت تجهیزات دیتاسنتر |
| 29/ | 255.255.255.248 | ۸ | ۶ | رنج سرورهای عمومی اختصاصی کوچک |
| 30/ | 255.255.255.252 | ۴ | ۲ | ارتباط دوطرفۀ سنتی بین دو روتر |
| 31/ | 255.255.255.254 | ۲ | ۲ (بدون کسر آدرس) | لینک Point-to-Point طبق RFC 3021 |
| 32/ | 255.255.255.255 | ۱ | ۱ (تکآدرس دقیق) | کارت شبکۀ مجازی Loopback، فایروال |
دو استثنای فنی در پیشوندهای ۳۱/ و ۳۲/
بر اساس استاندارد RFC 3021، در لینکهای مستقیم نظیربهنظیر (Point-to-Point) بین دو روتر میتوان از پیشوند 31/ استفاده کرد. در این ساختار خاص، آدرس شبکه و برودکست حذف میشوند و هر دو نشانی موجود مستقیماً به دو سر لینک اختصاص مییابند تا در مصرف آیپی صرفهجویی شود. همچنین پیشوند 32/ تنها نمایندۀ یک آدرس واحد (Host Route) است که اغلب در قوانین فایروال یا تنظیمات اینترفیس Loopback کاربرد دارد.
مزایای CIDR چیست؟
استفاده از آدرسدهی بدون کلاس تحولی اساسی در مدیریت ترافیک داده ایجاد کرد. این فناوری علاوه بر توزیع بهینۀ منابع، ثبات ارتباطات بینالمللی را تضمین میکند:
- صرفهجویی در تخصیص آیپی: ارائهدهندگان زیرساخت میتوانند بلوکها را دقیقاً به اندازۀ ابعاد درخواست کلاینت خرد کنند. در این میان، سرورهای مبتنی بر پروتکل DHCP خود به عنوان یک مزیت مستقیم CIDR تلقی نمیشوند، بلکه ابزاری کاربردی برای توزیع پویای نشانیها در داخل این بلوکهای تعیینشده بدون هدررفت زیرشبکهها هستند.
- تجمیع مسیرها (Route Aggregation / Supernetting): با این قابلیت میتوان چند زیرشبکه پیوسته را در یک آدرس واحد خلاصه کرد. به عنوان نمونه، چهار بلوک همتراز 24/ همجوار با هم ادغام شده و در قالب یک مسیر 22/ به روترهای دیگر اینترنت معرفی میشوند. این کار تعداد مسیرهای ذخیرهشده در حافظۀ TCAM روترهای Core را کاهش میدهد.
- چالش و راهکار در خدمات زیربنایی اینترنت: اگرچه آدرسدهی CIDR تفویض رکوردهای معکوس اینترنت (Reverse DNS) را برای سابنتهای کوچکتر از 24/ با پیچیدگی و دشواری مواجه کرد، اما ارائۀ سند استاندارد RFC 2317 به عنوان یک راهکار فنی توانست این مشکل را برطرف سازد و امکان تفویض صحیح DNS معکوس را در شبکههای بدون کلاس فراهم کند.
کاربرد عملی CIDR در کانفیگ سرورها و ماشینهای مجازی
اگر بدانید اهمیت عملی CIDR چیست، متوجه خواهید شد که در محیطهای دیتاسنتر هنگام تحویل زیرساخت به مشتریان، از نماد اسلش برای تنظیم کارت شبکهها و فایروال استفاده میشود.
برای تخصیص آدرسهای مبتنی بر نماد اسلش، مدیران سرور با دستوری مشابه نمونه زیر آدرس و پیشوند را تعیین میکنند:
ip addr add 192.168.10.10/24 dev eth0
همچنین در دیوارهای آتش لینوکس میتوان ترافیک کل یک بازه را به صورت یکجا کنترل کرد:
# مسدود کردن کل زیرشبکه در iptables
iptables -A INPUT -s 203.0.113.0/24 -j DROP
# باز کردن دسترسی یک بازه مشخص در فایروال ufw
ufw allow from 198.51.100.64/26
نکات مهم و هشدارهای کاربردی
- بررسی نام کارت شبکه: پیش از وارد کردن دستورات، نام دقیق کارت شبکه خود را حتماً با دستور ip a چک کنید.
- موقتی بودن تغییرات: تغییرات اعمالشده با دستور ip addr add موقتی بوده و پس از ریبوت سیستم پاک میشوند.
- جلوگیری از قطع دسترسی خود: پیش از مسدود کردن (DROP) یک رنج IP، حتماً مطمئن شوید آیپی خودتان درون آن بازه قرار نداشته باشد.
برای مشاهدۀ IP address ،Netmask و Gateway سرور مجازی خود، در لینوکس میتوانید از دستور ip addr show (یا ip route برای گیتوی) و در ویندوز از دستور ipconfig در محیط Command Prompt استفاده کنید.
نکته دربارۀ IPv6: مفهوم CIDR و نمادگذاری اسلش در IPv6 نیز بهطور کاملاً مشابه برای تعیین طول پیشوند متغیر (مانند 64/) و تجمیع مسیرها به کار میرود.
استفاده از بلوکهای دقیق آدرسدهی در محیطهای ابری به مدیران امکان میدهد هنگام پیادهسازی سرور مجازی، سابنتهای مجزایی برای ارتباط داخلی ماشینها و ترافیک عمومی وب بسازند. علاوه بر این، در راهاندازی سرویسهای توسعه روی سرور مجازی لینوکس، تفکیک دسترسی از طریق رنجهای اسلش، امنیت زیرساخت را در برابر دسترسیهای غیرمجاز بالا میبرد.
جمعبندی
اجرای پایدار و بدون وقفه سابنتها و ماشینهای ابری نیازمند میزبانی در بستری با پهنای باند باکیفیت و اختصاص دقیق آدرسهای IP عمومی است. اگر به دنبال بستری مطمئن برای استقرار پروژههای وب یا پیادهسازی زیرساختهای شبکه سازمانی هستید، کارشناسان مبین هاست همراه شما هستند تا با ارائۀ انواع سرور مجازی پرسرعت و سرور اختصاصی مجهز به IPهای ثابت، محیطی مطمئن را برای توسعۀ سامانههای شما فراهم کنند.
منابع
ICANN Official Announcement on Free Pool of IPv4 Address Depletion (February 2011)
APNIC – BGP in 2025 Report by Geoff Huston (2026)
Debian Manpages – iproute2 ip-address(8)
سوالات متداول
هر دو ساختار محدودۀ شبکه و هاست را مشخص میکنند، اما CIDR جایگزینی فشرده است که نوشتن اعداد طولانی مثل 255.255.255.0 را با نماد کوتاهی مانند 24/ جایگزین کرده و انعطافپذیری بیشتری روی هر بیت دارد.
این استاندارد با جلوگیری از تخصیص بلوکهای بزرگ (بهجز /31 و /32) و تجمیع جداول مسیریابی در دهۀ ۱۹۹۰، در کنار فناوری NAT توانست پایان فضای IPv4 را بیش از دو دهه به تعویق بیندازد.
در سیستمعامل لینوکس با اجرای دستور ip a در ترمینال، پیشوند اسلش در کنار آیپی هر اینترفیس نمایش داده میشود؛ در ویندوز نیز در بخش Status تنظیمات کارت شبکه یا دستور ipconfig میتوان ماسک معادل آن را مشاهده کرد.







