سابنت ماسک و CIDR
سابنت ماسک به دستگاه میگوید کدام بخش از آدرس IPv4 شبکه را مشخص میکند و کدام بخش میزبان را. نمادگذاری CIDR همین اطلاعات را بهصورت یک اسلش و یک عدد مینویسد، مثلاً /24 که یعنی 24 بیت اول بخش شبکه است. ماسک 255.255.255.0 و پیشوند /24 دو شکل نوشتن یک چیز هستند.
ماسک در مبنای دودویی
آدرس IPv4 دارای 32 بیت است. سابنت ماسک ردیفی از بیتهای 1 است که پس از آن ردیفی از بیتهای 0 میآید. بیتهای 1 بخش شبکه و بیتهای 0 بخش میزبان را نشان میدهند. طول پیشوند تعداد بیتهای 1 است.
/24 11111111.11111111.11111111.00000000 = 255.255.255.0
/26 11111111.11111111.11111111.11000000 = 255.255.255.192
/20 11111111.11111111.11110000.00000000 = 255.255.240.0
هر اکتت ماسک یکی از نه مقدار 0، 128، 192، 224، 240، 248، 252، 254 یا 255 را دارد. اینها مجموع بیتها از سمت چپ هستند: 128، 128+64=192، 192+32=224 و همینطور ادامه مییابد.
تعداد بیتهای میزبان برابر 32 - prefix است. یک سابنت در مجموع 2^(host bits) آدرس دارد. معمولاً دو آدرس قابلاستفاده نیستند: اولی آدرس شبکه و آخری آدرس broadcast است. بنابراین تعداد قابلاستفاده برابر 2^(host bits) - 2 است.
مثال حلشده: 192.168.10.37/26
آدرس شبکه، آدرس broadcast و بازه میزبانهای 192.168.10.37/26 را پیدا کنید.
- ماسک برابر
255.255.255.192است. فقط اکتت آخر بهطور جزئی استفاده شده است. - اندازه بلوک برابر
256 - 192 = 64است. سابنتها در اکتت آخر از 0، 64، 128 و 192 شروع میشوند. - مقدار 37 بین 0 و 63 قرار دارد، پس سابنت از 0 شروع میشود.
| مورد | مقدار |
|---|---|
| آدرس شبکه | 192.168.10.0 |
| اولین میزبان قابلاستفاده | 192.168.10.1 |
| آخرین میزبان قابلاستفاده | 192.168.10.62 |
| آدرس broadcast | 192.168.10.63 |
| کل آدرسها | 64 (26) |
| میزبانهای قابلاستفاده | 62 |
میتوانید نتیجه را با عملیات AND بیتی بررسی کنید: آدرس شبکه برابر است با آدرس AND ماسک. در اکتت آخر، 37 برابر 00100101 و 192 برابر 11000000 است؛ حاصل AND برابر 00000000، یعنی 0 است. هر مثالی را میتوانید با محاسبهگر سابنت راستیآزمایی کنید.
جدول مرجع CIDR از /8 تا /32
| CIDR | سابنت ماسک | کل آدرسها | میزبانهای قابلاستفاده |
|---|---|---|---|
| /8 | 255.0.0.0 | 16,777,216 | 16,777,214 |
| /9 | 255.128.0.0 | 8,388,608 | 8,388,606 |
| /10 | 255.192.0.0 | 4,194,304 | 4,194,302 |
| /11 | 255.224.0.0 | 2,097,152 | 2,097,150 |
| /12 | 255.240.0.0 | 1,048,576 | 1,048,574 |
| /13 | 255.248.0.0 | 524,288 | 524,286 |
| /14 | 255.252.0.0 | 262,144 | 262,142 |
| /15 | 255.254.0.0 | 131,072 | 131,070 |
| /16 | 255.255.0.0 | 65,536 | 65,534 |
| /17 | 255.255.128.0 | 32,768 | 32,766 |
| /18 | 255.255.192.0 | 16,384 | 16,382 |
| /19 | 255.255.224.0 | 8,192 | 8,190 |
| /20 | 255.255.240.0 | 4,096 | 4,094 |
| /21 | 255.255.248.0 | 2,048 | 2,046 |
| /22 | 255.255.252.0 | 1,024 | 1,022 |
| /23 | 255.255.254.0 | 512 | 510 |
| /24 | 255.255.255.0 | 256 | 254 |
| /25 | 255.255.255.128 | 128 | 126 |
| /26 | 255.255.255.192 | 64 | 62 |
| /27 | 255.255.255.224 | 32 | 30 |
| /28 | 255.255.255.240 | 16 | 14 |
| /29 | 255.255.255.248 | 8 | 6 |
| /30 | 255.255.255.252 | 4 | 2 |
| /31 | 255.255.255.254 | 2 | 2 (پیوند نقطهبهنقطه، RFC 3021) |
| /32 | 255.255.255.255 | 1 | 1 (یک میزبان) |
وایلدکارت ماسک
وایلدکارت ماسک معکوس سابنت ماسک است: تمام بیتها برعکس میشوند. هر جا سابنت ماسک 1 دارد، وایلدکارت 0 دارد و برعکس. مسیریابها و فایروالها (مثلاً ACLهای Cisco و دستورهای network در OSPF) از وایلدکارت ماسک استفاده میکنند، که در آن بیت 0 یعنی «باید برابر باشد» و بیت 1 یعنی «هر مقداری».
/24، ماسک 255.255.255.0 وایلدکارت0.0.0.255میدهد/26، ماسک 255.255.255.192 وایلدکارت0.0.0.63میدهد/20، ماسک 255.255.240.0 وایلدکارت0.0.15.255میدهد
روش سریع محاسبه: هر اکتت ماسک را از 255 کم کنید.
تقسیم یک /24 به چهار سابنت /26
شبکه مستندات 198.51.100.0/24 را در نظر بگیرید. افزودن دو بیت به پیشوند، 22 = 4 سابنت با 64 آدرس در هر کدام ایجاد میکند.
| سابنت | شبکه | بازه قابلاستفاده | Broadcast |
|---|---|---|---|
| 1 | 198.51.100.0/26 | 198.51.100.1 – 198.51.100.62 | 198.51.100.63 |
| 2 | 198.51.100.64/26 | 198.51.100.65 – 198.51.100.126 | 198.51.100.127 |
| 3 | 198.51.100.128/26 | 198.51.100.129 – 198.51.100.190 | 198.51.100.191 |
| 4 | 198.51.100.192/26 | 198.51.100.193 – 198.51.100.254 | 198.51.100.255 |
این چهار سابنت روی هم 4 × 62 = 248 میزبان قابلاستفاده دارند، در مقایسه با 254 میزبان در یک /24 واحد. اختلاف شش آدرس به دلیل آدرسهای شبکه و broadcast اضافی است. زیرشبکهبندی برای جدا کردن بخشهای سازمان، سرورها و Wi-Fi مهمانان و برای محدود کردن ترافیک broadcast مفید است.
قراردادهای پیشوند در IPv6
IPv6 از همان نمادگذاری اسلش استفاده میکند، اما قواعد برنامهریزی متفاوت است. چون فضای آدرس بسیار بزرگ است، میزبانها شمرده نمیشوند. قراردادهای رایج عبارتاند از:
- /64 برای هر شبکه محلی (LAN) معمولی. قابلیتهایی مانند SLAAC (پیکربندی خودکار آدرس) به بخش میزبان 64 بیتی نیاز دارند. در یک LAN معمولی از پیشوند بلندتر استفاده نکنید.
- /56 یا /48 برای یک مشتری یا یک سایت. یک /48 شامل 65,536 شبکه /64 و یک /56 شامل 256 شبکه است.
- /32 تخصیص معمول برای یک ارائهدهنده اینترنت است و
2001:db8::/32بازه مستندات است. - /128 یک آدرس واحد است، مانند /32 در IPv4.
برای مثال، سایتی با 2001:db8:abcd::/48 میتواند برای یک VLAN از 2001:db8:abcd:1::/64 و برای VLAN بعدی از 2001:db8:abcd:2::/64 استفاده کند.
مطالب مرتبط
برای آشنایی با مبانی آدرسها، آدرس IP چیست را بخوانید. برای محاسبه سریع هر شبکه از محاسبهگر سابنت استفاده کنید.