شبکه

آدرس دهی IP و subnetting با مثال

طول پیشوند (/24، /26، …) یعنی چه، هر subnet چند آدرس دارد، آدرس شبکه و broadcast را چطور حساب کنیم، و چطور یک بازه‌ی آدرس را بین VLANهای یک سازمان تقسیم کنیم.

نوشته‌ی تیم پیکوگاید آخرین بازبینی فنی: ۴ دقیقه مطالعه
در این صفحه
  1. جدول پیشوندهای رایج
  2. روش سریع: اندازه‌ی بلوک
  3. مثال: آدرس 192.168.10.77/26
  4. مثال: آدرس 10.20.5.200/22
  5. آدرس‌های خصوصی و رزروشده
  6. تقسیم یک بازه بین VLANها (VLSM)
  7. خلاصه سازی (summarization)
  8. اشتباه‌های رایج

آدرس IPv4 ۳۲ بیت دارد. عددی که بعد از / می‌آید (طول پیشوند) می‌گوید چند بیت اول مربوط به شبکه است؛ بقیه‌ی بیت‌ها برای دستگاه‌ها می‌ماند. یک subnet با پیشوند /n در کل 2^(32−n) آدرس دارد و دو آدرس اول و آخر آن (آدرس شبکه و broadcast) به دستگاه داده نمی‌شوند. مثلاً /24 یعنی ۲۵۶ آدرس و ۲۵۴ دستگاه.

جدول پیشوندهای رایج

پیشوند subnet mask کل آدرس‌ها دستگاه قابل استفاده
/16 255.255.0.0 65,536 65,534
/20 255.255.240.0 4,096 4,094
/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 (فقط لینک نقطه به نقطه)
/32 255.255.255.255 1 1 (یک دستگاه، مثل loopback)

/31 یک استثناست: طبق RFC 3021 روی لینک‌های نقطه به نقطه بین دو روتر، هر دو آدرس قابل استفاده‌اند و آدرس شبکه و broadcast ندارد.

روش سریع: اندازه‌ی بلوک

برای پیدا کردن محدوده‌ی یک subnet لازم نیست باینری حساب کنید:

  1. در subnet mask، اولین عددی را که ۲۵۵ نیست پیدا کنید (مثلاً در /26، عدد ۱۹۲).
  2. اندازه‌ی بلوک = ۲۵۶ منهای آن عدد (۲۵۶ − ۱۹۲ = ۶۴).
  3. subnetها در همان octet از صفر و با گام‌های اندازه‌ی بلوک شروع می‌شوند: ۰، ۶۴، ۱۲۸، ۱۹۲.

مثال: آدرس 192.168.10.77/26

  • اندازه‌ی بلوک ۶۴ است و ۷۷ بین ۶۴ و ۱۲۸ قرار دارد.
  • آدرس شبکه: 192.168.10.64
  • broadcast: 192.168.10.127 (یکی کمتر از شروع بلوک بعدی)
  • محدوده‌ی دستگاه‌ها: 192.168.10.65 تا 192.168.10.126

مثال: آدرس 10.20.5.200/22

  • mask برابر 255.255.252.0 است؛ اولین عدد غیر ۲۵۵ در octet سوم است: ۲۵۶ − ۲۵۲ = ۴.
  • بلوک‌ها در octet سوم: ۰، ۴، ۸؛ عدد ۵ در بلوک ۴ تا ۷ است.
  • آدرس شبکه: 10.20.4.0، broadcast: 10.20.7.255، دستگاه‌ها: 10.20.4.1 تا 10.20.7.254.

آدرس‌های خصوصی و رزروشده

بازه کاربرد
10.0.0.0/8 خصوصی (RFC 1918)
172.16.0.0/12 خصوصی (RFC 1918)؛ یعنی 172.16 تا 172.31
192.168.0.0/16 خصوصی (RFC 1918)
100.64.0.0/10 CGNAT سرویس دهنده‌های اینترنت
169.254.0.0/16 link-local؛ وقتی دستگاه از DHCP آدرس نمی‌گیرد
127.0.0.0/8 loopback
192.0.2.0/24، 198.51.100.0/24، 203.0.113.0/24 فقط برای مستندات و مثال

تقسیم یک بازه بین VLANها (VLSM)

فرض کنید 10.20.0.0/22 (از 10.20.0.0 تا 10.20.3.255) برای یک دفتر در نظر گرفته شده است. نیازها را از بزرگ به کوچک مرتب کنید و به ترتیب جا بدهید:

VLAN نیاز subnet محدوده‌ی دستگاه‌ها gateway
کاربران ۲۰۰ دستگاه 10.20.0.0/24 10.20.0.1 تا 10.20.0.254 10.20.0.1
وای فای مهمان ۲۰۰ دستگاه 10.20.1.0/24 10.20.1.1 تا 10.20.1.254 10.20.1.1
سرورها ۱۰۰ دستگاه 10.20.2.0/25 10.20.2.1 تا 10.20.2.126 10.20.2.1
دوربین‌ها ۵۰ دستگاه 10.20.2.128/26 10.20.2.129 تا 10.20.2.190 10.20.2.129
مدیریت ۲۰ دستگاه 10.20.2.192/27 10.20.2.193 تا 10.20.2.222 10.20.2.193

10.20.2.224/27 و کل 10.20.3.0/24 برای رشد آینده خالی می‌مانند. شروع از بزرگ‌ترین subnet تضمین می‌کند هیچ subnetی از وسط یک بلوک شروع نشود. مفهوم VLAN را در VLAN چیست و چطور پیکربندی می‌شود و پیاده سازی چنین جدولی را روی روتر میکروتیک در VLAN در میکروتیک با bridge VLAN filtering ببینید.

خلاصه سازی (summarization)

دو یا چند subnet پشت سر هم را می‌شود با یک پیشوند کوتاه‌تر اعلام کرد. 10.20.0.0/24 و 10.20.1.0/24 با هم 10.20.0.0/23 هستند و کل برنامه‌ی بالا 10.20.0.0/22. برای همین در طراحی چند شعبه، به هر شعبه یک بلوک پیوسته بدهید؛ جدول مسیریابی روتر مرکزی برای هر شعبه فقط یک خط خواهد داشت.

اشتباه‌های رایج

  • دادن آدرس شبکه یا broadcast به دستگاه: در /24 آدرس‌های .0 و .255، ولی در /26 مثلاً .64 و .127 هم همین حکم را دارند.
  • هم‌پوشانی subnetها بین شعبه‌ها: دو شعبه با 192.168.0.0/24 را نمی‌شود بدون NAT با VPN به هم وصل کرد.
  • subnet خیلی کوچک: شبکه‌ای که امروز ۵۰ دستگاه دارد را /26 نکنید؛ اضافه شدن چند دستگاه یعنی تغییر آدرس کل VLAN.
  • mask اشتباه روی یک دستگاه: دستگاهی با /16 در شبکه‌ای که /24 است، مقصدهای بیرون از subnet را محلی فرض می‌کند و به gateway نمی‌فرستد.

عیب یابی مشکلات شبکه لایه به لایه در مدل OSI و TCP/IP آمده است.

منابع

  1. RFC 1918 — Address Allocation for Private Internets www.rfc-editor.org
  2. RFC 4632 — Classless Inter-domain Routing (CIDR) www.rfc-editor.org
  3. RFC 3021 — Using 31-Bit Prefixes on IPv4 Point-to-Point Links www.rfc-editor.org