راهنمای مطالعه:
جلسه قبل راجع به کلاس بندی های IPv4 صحبت شد و فهمیدیم که ۵ کلاس مختلف دارن که از بین این ۵ کلاس ۳ تای اولی یعنی A و B و C برای ما بیشتر اهمیت دارند. همچنین تعداد تقریبی Network و Hostهای هر شبکه رو هم گفتیم اماااا چیزی که نگفتیم اینه که این اعداد چجوری محاسبه شد؟تازه از اونجا میرسیم به مبحث شیرین Subnetting و از همه مهمتر اینکه classful و classless چیه و چه ربطی به این داستان داره؟
خب توی این مقاله قرار خیلی شیک مفهوم subnetting رو یاد بگیرید…. گفتم شیک چون قراره از این به بعد توی بعضی مقالات یک سری سوالات هم از همون مبحث ازتون پرسیده بشه (تحت عنوان چطور شد؟) که نسبتاً سادست. اولین نفری هم که توی کامنت ها به تمامی سوالات توی هر مقاله جواب درست بده یک کد تخفیف برای محصولات آموزشی جایزه میگیره!!
Classful IPv4-Class A:
توی این کلاس NetID دارای ۸ بیت و HostID دارای ۲۴ بیت است. نکته مهم در این کلاس IP این است که با ارزش ترین بیت اوکتت اول همیشه صفر است و ۷ بیت بعدی این اوکتت برای Network استفاده می شود.
لذا برای تعداد شبکه ها داریم:
Number of Networks: 27-2=126
در این کلاس ۲ تا شبکه از تعداد کل باید کم بشه. (بگید چرا؟ شماره ۱).
0.0.0.0
127.x.y.z
لذا بازه IP در این کلاس به صورت زیر خواهد بود:
IP Range: 1.x.x.x – 126.x.x.x
Number of Hosts: 224 = 16,777,214
Classful IPv4-Class B:
توی این کلاس NetID دارای ۱۶ بیت و HostID دارای ۱۶ بیت است. به علاوه دو تا با ارزش ترین بیت اوکتت اول توی NetID همواره 10 است (بگید چرا؟ شماره ۲)
لذا داریم:
Number of Networks: 214=16,384
Number of Hosts: 216 -2= 65,534
IP Range: 128.0.x.x – 191.255.x.x
Classful IPv4-Class C:
توی این کلاس NetID دارای ۲۴ بیت و HostID دارای ۸ بیت است. به علاوه سه تا با ارزش ترین بیت اوکتت اول توی NetID همواره 110 است.
لذا داریم:
Number of Networks: 221=2,097,152
Number of Hosts: 28 -2= 256
IP Range: 192.0.0.x – 223.255.255.x
نکته: اگر دقت کرده باشین وقتی که خواستیم تعداد Host هر کلاس رو محاسبه کنیم ۲ تا ازش کم کردیم یا به عبارتی دیگر از تعداد IP ها دو تا کم شد. دلیل این کار اینه که:
اولین IP هر شبکه معرف شبکه است و نمی توان از آن استفاده کرد.
آخرین IP هر شبکه هم به عنوان broadcast رزرو شده است و نمی توان از آن استفاده کرد.
نکته: subnet Mask رو به اختصار به صورت عدد/ هم نشون میدن که توی اون عدد، تعداد یک های موجود توی subnet Mask است برای مثال برای یک IP کلاس C میشه اینجور نوشت:
192.168.1.80/24
آدرس دهی Classful چه اشکالی دارد؟
با این روش آدرس دهی، میلیون ها آدرس از کلاس A و تعداد بسیار بالایی از آدرس های کلاس B بلا استفاده می شوند در حالی که تعداد آدرس های موجود توی کلاس C انقدر کمه که پاسخگوی نیاز بسیاری از سناریوهای شبکه ای نیست!! لذا آدرس دهی classful در سال ۱۹۹۳ میلادی با Classless Inter-Domain Routing (CIDR) یا همان آدرس دهی Classless جایگزین شد.
Subnetting چیست؟
بخوام خیلی ساده براتون بگم کار این نوع کلاس بندی (classless) در حقیقت شکوندن بلوک های بزرگ آدرس ها به بلوک های کوچکتر همجوار است به طوری که این بلوک ها هر کدوم برای یک شبکه کوچکتر استفاده می شوند. به این کار Subnetting می گویند.
برای مثال 192.168.1.1/28 رو در نظر بگیرید. توی کلاس C گفتیم که subnet mask برابر ۲۴ هست ولی اینجا برای این IP عدد ۲۸ است یعنی subnet mask آن برابر 255.255.255.240 خواهد بود. جهت یافتن تعداد Host ها در هر subnet از فرمول زیر استفاده می شود:
2(32 – given bits for mask) – 2
هیچی مثل حل یک مثال نیست! بریم یه مثال حل کنیم…
حل یک مثال آدرس دهی classless
فرض کنید شبکه زیر به شما داده شده است.
172.16.0.0/25
1) کلاس اون رو تعیین کنید
2) تعداد subnet های این این شبکه را تعیین کنید
3) تعداد Host ها به ازای هر subnet رو تعیین کنید
4) برای اولین Subnet، آدرس Subnet، اولین Host ID، آخرین Host ID و آدرس Broadcast رو تعیین کنید
خب از قیافش معلومه که کلاس B است از طرفی دیگر در حالت Classful به صورت /16 خواهد بود. پس Classful نیست!
Number of Subnets: 2(25-16) = 29=512
Hosts per Subnet: 2(32-25) -2 = 27 – 2=126
First Subnet Block, Subnet address = 172.16.0.0
First Host ID = 172.16.0.1
Last Host ID = 172.16.0.126
Broadcast address = 172.16.0.127
2 دیدگاه برای "Subnetting چیست و چرا از آن استفاده می شود؟"
Sadegh 10 خرداد 1403 در 18:55
بگید چرا؟ شماره ۱ برا اینکه net id ۱۲۷ برای loopback استفاده میشه همچنین 0 هم از ip های رزرو شده هست
بگید چرا؟ شماره ۲ برای اینکه رنج ip های network کلاس B از ۱۲۸ که 10000000 تا حداکثر ۱۹۱ هست 10111111
ممنون از مقاله مفیدتون به زبون ساده توضیح داده بودید
هایبرت مارکاریان 11 خرداد 1403 در 19:49
خوشحالیم که براتون این مطلب مفید بوده 🤩🤩