akofaraji.ir
قسمت دوم: (IP Addressing (part 2
نوشته شده در تاریخ 28 فروردین 1403
نظرات: 0 امتیاز: 9 زمان مطالعه: 18 دقیقه

 

ما دو نوع IP داریم.

  1. Private IP
  2. Public IP

 

(Private IP Address (invalid ip آدرس هایی هستند که در سازمان ها و شبکه های خصوصی مورد استفاده قرار میگیرند و در دنیای اینترنت قابل استفاده و مسیریابی نیستند.

(Public IP Address (valid ip آدرس هایی هستند که در دنیای اینترنت مورد استفاده قرار میگیرند و قابل مسیریابی هستند.

رنج Private IP ها در جدول زیر آمده است.

 

 

ما در بخش قبل نیز IP شبکه را متوجه شدیم و گفتیم که مثلا ۱۹۲٫۱۶۸٫۲٫۰ را IP شبکه و یا NET ID گویند.

 

چند تعریف :

uni cast : ارتباط یک به یک را uni cast گویند. مثلا ارتباط من با شما یک ارتباط یک به یک است.

multi cast : ارتباط یک به چند را multi cast گویند. مثلا ارتباط من با گروه فناوری از این سایت.

broad cast : ارتباط یک به همه را broad cast گویند. مثلا ارتباط من با کل افراد این سایت.

 

هر رنج آدرس IP داخل یک شبکه واحد ، مجموعه ای از یک سری آدرس IP است که همگی داخل آن شبکه اند. از این مجموعه دو آدرس منحصر به فرد حضور دارد:

 

Network ID : که مشخصه و معرف آن شبکه است.

Broadcast address : که برای دسترسی به همه نودهای آن شبکه استفاده میشود.

 

این دو آدرس را نمیتوان به عنوان آدرس معتبر به نود ها احتصاص داد.

برای محاسبه NET ID تمامی بیت های HOST را صفر میکنیم و برای رسیدن به Broadcast address تمامی بیت های HOST را یک میکنیم.

مثال : NET ID و Broadcast address شبکه ای که IP آدرس ۸۰٫۳۲٫۵۱٫۶۰ در آن وجود دارد را پیدا کنید.

ابتدا مشخص میکنیم این IP عضو کدام کلاس است که بخش NETWORK را از HOST جدا کنیم. این آدرس متعلق به کلاس A است پس:

 

HOST NETWORK
32.51.60 80

 

اگر آدرس را به صورت باینری بنویسیم خواهیم داشت:

 

HOST NETWORK
00100000.00110011.00111100 01010000

 

حالا برای اینکه NET ID را به دست بیاوریم تمامی بیت های HOST را صفر میکنیم:

 

HOST NETWORK
00000000.00000000.00000000 01010000

 

پس NET ID می شود: ۸۰٫۰٫۰٫۰

و برای به دست آوردن Broadcast address تمامی بیت های HOST را یک میکنیم:

 

HOST NETWORK
11111111.11111111.11111111 01010000

 

پس Broadcast address میشود: ۸۰٫۲۵۵٫۲۵۵٫۲۵۵

جون این دو آدرس را نمیتوانیم به ند ها اختصاص دهیم پس آدرس قابل استفاده یکی بالاتر از NET ID شروع میشود:

 

HOST NETWORK
00000000.00000000.00000001 01010000

 

اولین آدرس این شبکه میشود : ۸۰٫۰٫۰٫۱

و آخرین آدرس شبکه نیر یکی مونده به آدرس Broadcast یعنی:

 

HOST NETWORK
11111111.11111111.11111110 01010000

 

آخرین آدرس قابل استفاده در این شبکه نیز میشود: ۸۰٫۲۵۵٫۲۵۵٫۲۵۴

بنابراین وقتی میخواهیم تعداد آدرس های قابل استفاده در یک شبکه را حساب کنیم،از فرمول زیر استفاده میکنیم:

۲^N – 2

که N در آن ، تعداد های بیت های host میباشد.

وقتی از شما میخواهند شبکه ای را تحلیل کنید بایستی موارد زیر را در نظر بگیرید.

به طور مثال آدرس ۲۰۱٫۲۰۲٫۳۲٫۴۰:

 

 

مثال: شبکه ای ۲۰۰ عدد نود دارد،از کدام کلاس برای آدرس دهی استفاده کنیم.

(۲^h)-2>=200

h=8 پس تعداد بیت های host باید حداقل ۸ باشد.

 

Host Network
hhhhhhhh xxxxxxxx.xxxxxxxx.xxxxxxxx

 

پس ار کلاس C استفاده خواهیم کرد.

نکته:در آدرس هایی که در Class ها را یاد گرفتیم، یک سری آدرس رزرو شده میباشند، به طور مثال:

 

127.0.0.0 Loopback
238.0.0.0 224to Multicast
254.0.0.0 239to Experimental

 

Subnetting:

 

هدف از subnetting این است که یک range از آدرس های IP که به ما تعلق دارد را به چند range آدرس مجزا خرد کنیم تا بتوانیم از هر رنج جداگانه استفاده کنیم.

وقتی یک شبکه را subnet میکنیم ، subnet mask جدیدی خواهیم داشت که معرف بخش network و host خواهند بود.

یک آدرس کلاس A را در نظر بگیرید ، مثلا ۱۰٫۰٫۰٫۰ و این شبکه ۲ به توان ۲۴ منهای ۲ ، آدرس IP قابل استفاده به ما میدهند.یعنی ۱۶۷۷۷۲۱۴٫حالا این IP در یک سازمان که ۴۰ شعبه دارد و هر شعبه ۱۰۰ کامپیوتر ، به چه درد میخورد! در اینجا ما به جای یک شبکه بزرگ ، ۴۰ شبکه کوچک تر داریم تا بتوانیم در صورت نیاز بین آنها مسیر یابی کنیم.

کاری که میکنیم این است که دیگز از کلاس های پیش فرض استفاده نمیکنیم بلکه آن کلاس ها را بسته به میل خودمان به بخش های کوچک تر تقسیم میکنیم که به این عمل subnetting میگویند.

چه چیز این تقسیم بندی جدبد را به ما میدهد؟ subnet mask جدید.

یک مثال از همان اسم و فامیل که در بخش اول زدیم:

 

 

زمانی که subnet mask به صورت بالا در نظر گرفته میشود، همه عضو یک خانواده حساب میشوند.حالا فرض کنید خط subnet mask (یا خط جدا کننده network از host ) را به سمت راست بکشیم:

 

 

میبینید که دیگر همه عضو یک خانواده نیستند و ما یک خانواده بزرگ را به دو خانواده کوچک تقسیم کردیم.

چگونه؟ با افزایش فضای network و در نتیجه کاهش فضای host.

 

حالا با این دیدی که از این مثال به دست آوردیم متوجه شدیم که برای این که یک network بزرگ را به چند network کوجکتر تقسیم کنیم، راه حل این است که قسمت network را بزرگتر و قسمت host را کوچک تر کنیم.این کار با قرض کردن بیت های قسمت host و اضافه کردن این بیت ها به قسمت network صورت میگیرد.

 

حالا باید مشخص کنیم که چند بیت را قرض بگیریم:

یک فرمول ساده –> اگر حداقل تعداد ip های قابل استفاده ، مد نظر ما بود : از فرمول زیر استفاده میکنیم:

۲^h – 2 >= number of available IP address

که در آن h تعداد بیت هایی است که از سمت چپ host میشماریم تا تعداد بیت هایی که باید قرض بگیریم معلوم شود.

و اگر تعداد subnet های مورد نیاز مطرح بود از فرمول زیر استفاده میکنیم:

۲^n >= number of subnet needed

که در آن n تعداد بیت هایی است که باید از سمت راست از host قرض بگیریم و به network اضافه کنیم.

مثال: شبکه ۱۰٫۰٫۰٫۰ متعلق به سازمان ما میباشد.میخواهیم آن را طوری تقسیم کنیم که ۵ شبکه به ما بدهد.

شبکه class A میباشد. پس:

 

Host Network
00000000.00000000.00000000 .00001010

 

حالا فرمول را اعمال میکنیم.

۲ ^ n >= 5

پس n=3 است.

حالا از سمت network سه بیت به داخل host جلو میرویم و به network اضافه میکنیم:

 

Host Network
00000.00000000.00000000 00001010.000

 

اولین موردی که باید رعایت کنیم ، subnet mask جدید است:

۱۱۱۱۱۱۱۱٫۱۱۱۰۰۰۰۰٫۰۰۰۰۰۰۰۰٫۰۰۰۰۰۰۰۰

۲۵۵٫۲۲۴٫۰٫۰

که به این subnet mask میتوانیم ۱۱/ بگوییم.

N/ یعنی subnet mask به گونه ای است که در بخش Network آن ، N مقدار ۱ وجود دارد و قسمت Host آن ۳۲-N صفر دارد.

حالا تمام حالت هایی را که با تغییر Network جدید (سه بیت اضافه شده) به دست آمده را حساب میکنیم.

 

 

پس شبکه های جدید ما به این صورت خواهند بود:

۱۰٫۰٫۰٫۰/۱۱

۱۰٫۳۲٫۰٫۰/۱۱

۱۰٫۶۴٫۰٫۰/۱۱

۱۰٫۹۶٫۰٫۰/۱۱

۱۰٫۱۲۸٫۰٫۰/۱۱

۱۰٫۱۶۰٫۰٫۰/۱۱

۱۰٫۱۹۲٫۰٫۰/۱۱

۱۰٫۲۲۴٫۰٫۰/۱۱

به عنوان تمرین شبکه سوم را آنالیز میکنیم:

شبکه ۱۰٫۶۴٫۰٫۰/۱۱ :

 

Subnet Network
00000.00000000.00000000 00001010.010

 

حالا برای اینکه NetID را به دست بیاوریم تمام بیت های host را صفر میکنیم:

 

Subnet Network
00000.00000000.00000000 00001010.010

 

پس NetID میشود : ۱۰٫۶۴٫۰٫۰

برای به دست آوردن آدرس Broadcast همه بیت های host را یک میکنیم:

 

Host Network
11111.11111111.11111111 00001010.010

 

پس Broadcast address میشود: ۱۰٫۹۵٫۲۵۵٫۲۵۵

چون این دو آدرس را نمیتوانیم به نود ها اختصاص دهیم ، بنابراین اولین آدرس قابل استفاده میشود یکی بالاتر از NetID به عبارتی:

۱۰٫۶۴٫۰٫۱

آخرین آدرس شبکه نیز میشود یکی مانده به آدرس Broadcast یا به عبارتی:

۱۰٫۹۵٫۲۵۵٫۲۵۴

و تعداد آدرس ip قابل استفاده در شبکه : ۲ به توان ۲۱ منهای ۲ که میشود ۲۰۹۷۱۵۰ آدرس IP.

سوال؟ حد اقل تعداد آدرس IP های قابل استفاده در یک شبکه چقدر است؟

(۲^n) – 2 >= 2

پس برای اینکه کوچکترین شبکه را داشته باشیم باید ۲ بیت را به host اختصاص دهیم تا ۲ آدرس IP قابل استفاده به ما بدهند.

در این حالت subnet mask به صورت زیر است:

۱۱۱۱۱۱۱۱٫۱۱۱۱۱۱۱۱٫۱۱۱۱۱۱۱۱٫۱۱۱۱۱۱۰۰

۲۵۵٫۲۵۵٫۲۵۵٫۲۵۲

/۳۰

این subnet mask برای شبکه های point-to-point استفاده میشود.

 

در آخرین بخش از IP Addressing نیز به بحث Supernetting میپردازیم.

Supernetting دقیقا عمل عکس subnetting است. یعنی پند شبکه کوچک را با هم ادغام کرده و چند شبکه بزرگ ایجاد کنیم.

نکته مهم این است که هر دو شبکه ای را نمی توان باهم supernetting کرد.

به عنوان مثال آدرس IP به دست آورید که نمایانگر چهارشبکه زیر باشد.

۱۰٫۱۲۸٫۰٫۰/۱۱

۱۰٫۱۶۰٫۰٫۰/۱۱

۱۰٫۱۹۲٫۰٫۰/۱۱

۱۰٫۲۲۴٫۰٫۰/۱۱

ابتدا آدرس ها را به صورت باینری مینویسیم.

 

Host Network
00000.00000000.00000000 00001010.100
00000.00000000.00000000 00001010.101
00000.00000000.00000000 00001010.110
00000.00000000.00000000 00001010.111

 

اگر به قسمت Network نگاه کنید،هر ۴ شبکه در ۹ بیت اول مقدارشان مشترک است پس میتوان Network را دو بیت از سمت چپ کرد.

 

Host Network
0000000.00000000.00000000 00001010.1
0100000.00000000.00000000 00001010.1
1000000.00000000.00000000 00001010.1
1100000.00000000.00000000 00001010.1

 

بنابراین NetID جدید را به دست می آوریم:

NetID:00001010.10000000.00000000.00000000

NetID جدید میشود: ۱۰٫۱۲۸٫۰٫۰

و subnet mask جدید میشود:

۲۵۵٫۱۲۸٫۰٫۰

پس آدرس مورد نظر ۱۰٫۱۲۸٫۰٫۰/۹ است.

به این ترتیب بحث IP Addressing تمام میشود.

 

منبع: سایت سابیو


اگر احساس می کنید این مطلب برای شما مفید بود ، از 1 تا 10 به این مطلب امتیاز دهید

دیدگاه کاربران در مورد این مطلب

ثبت نظر
به نظر خوب میاد!
لطفا نام را وارد کنید
@
لطفا یک ایمیل منحصر به فرد و معتبر انتخاب کنید.
لطفا متن با کلمات و معانی مفهوم دار وارد نمایید