شبکه , هک و امنیت اطلاعات

امام سجاد(ع):آن کس که بر دوستی ما در دوران غیبت قائم ما پایدار بماند، خداوند به او پاداش هزار شهید از شهیدان بدر واحد بدهد

 
Subnetting چیست ؟
نویسنده : مصطفی نورزاده - ساعت ۱۱:٥٦ ‎ق.ظ روز جمعه ۱۳٩۱/۱٠/۱
 

ساده ترین تعریفی که می توان برای واژه Subnetting در نظر گرفت این است : دستکاری کردن یک محدوده آدرس IP به شکلی که بتوان با آن بیش از یک شبکه منطقی یا بهتر بگوییم شبکه LAN را ایجاد کرد . در این حالت شما با استفاده از دستکاری محدوده آدرس Subnet mask از درون یک محدوده IP چندین محدوده دیگر را جدا می کنید و در شبکه های مختلفی استفاده می کنید....


چرا Subnetting امری ضروری است ؟

Subnetting زمانی لازم است که شما نیاز دارید که یک محدوده آدرس دهی را در میان چندین شبکه محلی یا سگمت شبکه به اشتراک بگذارید. این عمل در مواقعی از قبیل زیر ضروری است :

  1. شرکت یا سازمان از تکنولوژی های مختلف همبندی شبکه ( ستاره ای ، حلقه ای ، و یا اترنت ) استفاده می کند.
  2. دو یا چند شبکه در محدوده های جغرافیایی مختلفی از یکدیگر قرار گرفته اند ( مثال دو دفتر کار یکی در اینجا و یکی در شهر دیگر که بوسیله ارتباطات نقطه به نقطه به یکدیگر متصل شده اند )
  3. برای اینکه بتوانیم سگمنت های شبکه را متمرکز سازی کنیم ( قسمت مالی ، قسمت آموزش ...)
  4. کامپیوترهایی که نیاز به پهنای باند بیشتری در شبکه دارند میبایست از دیگران ایزوله شوند.

 

مزایا و معایب

امیدوارم قبل از اینکه شبکه خود را طراحی کرده باشید به فکر Subnetting و محاسبه محدوده آدرس دهی شبکه خود باشید . این امر به شما انعطاف پذیری و قدرت مانور بیشتری در تعیین و انتساب آدرس ها و محدوده های آدرس دهی IP در شبکه می دهد . Sunetting ضمن اینکه به شما مدیریت آسانتر شبکه را هدیه می کند در کنار این نیز به شما در رفع اشکال و ایرادهای شبکه در سریعترین زمان ممکن نیز کمک خواهد کرد . همچنین Subnetting باعث میشود که اندازه Routing Table های مربوط به مسیریاب ها نیز کاهش پیدا کند به دلیل اینکه دیگر نیازی نیست برای هر یک از شبکه ها محدوده آدرس دهی جداگانه ای تعریف کنیم .

مسیریابی برای دسترسی به شبکه های خارج از محدوده شبکه داخلی شما همچنان بر اساس همان محدوده آدرس قبلی شما و بر اساس تنها یک محدوده آدرس دهی انجام خواهد شد که این باعث آسانتر شدن فرآیند مسیریابی نیز خواهد شد . اما در نظر داشته باشید که در کنار همه اینها Subnetting باعث میشود تا حدودی تجهیزات بیشتری از جمله مسیریاب را برای شبکه خود خریداری کنید که این موضوع را در ادامه بصورت کامل تشریح خواهیم کرد.

چگونه کار می کند ؟

یک آدرس IP یک عدد 32 بیتی است که به 4 قسمت 8 بیتی که به هر قسمت آن یک اکتت یا Octet گفته می شود تقسیم می شود . هر اکتت توسط محاسبات باینری می تواند با اعداد صفر و یک عددی بین 0 تا 255 با توجه به 8 بیت صفر و یک ایجاد کند که این 8 بیت با یک نقطه از بیت های دیگر جدا می شوند . این آدرس به خودی خود میتواند به قسمت آدرس شبکه و آدرس هاست تقسیم شود . قسمت هاست قابل تغییر و بیت های آن توسط ما می تواند تعویض و دستکاری شود و این در حالی است که قسمت شبکه آن غیر قابل تغییر و در بین شبکه ما مشترک هستند. قسمت هاست برای آدرس دهی کلاینت ها و قسمت شبکه برای مشخص کردن محدده شبکه مورد استفاده قرار می گیرد .

برای اینکه به سادگی متوجه شویم قسمت شبکه و قسمت هاست چگونه از یکدیگر مجزا میشوند قسمتی به نام Subnet mask به آدرس های IP ما اضافه می شود ( به اصطلاح Netmask یا Mask خالی نیز گفته می شود ) . برای مثال ما از آدرس IP به شماره 38.9.211.0 با Subnet mask به شماره 255.255.255.0 استفاده میکنیم با تبدیل به دودویی یا باینری نتیجه به شکل زیر خواهد شد :

 



عدد باینتری 1 به معنی این است که نمی توان آن آدرس را تغییر داد و عدد 0 به این معناست که می توان آن را تغییر و آدرس دهی کرد ، یعنی در مثال بالا ما می توانیم از 8 بیت برای آدرس دهی استفاده کنیم و از 24 بیت نمی توانیم استفاده کنیم . بنابراین محدوده شبکه ما یا به اصطلاح Netmask ما بصورت 24 نیز میتواند نمایش داده شود یعنی در شبکه ما از آدرس های دریافت شده 24 بیت را نمیتوانیم برای آدرس دهی استفاده کنیم و مجبور هستیم که از 8 بیت برای آدرس دهی استفاده کنیم که به شکل 38.9.211.024 نیز نمایش داده می شود.

بیت های ثابت مربوط به قسمت شبکه ( Network ) و بیت های باقی مانده قسمت میزبان ( Host ) را تشکیل می دهند ، بنابر این ما در اینجا 8بیت داریم که می توانیم آنها را استفاده کنیم که محدوده بین 0 تا 255 را آدرس دهی می کنند . در استاندارد مربوط به پروتکل IP اینطور تعیین شده است که در صورتیکه تمامی بیت های موجود در قسمت میزبان ( Host ) عدد 0 بود ، این عدد نمایانگر کل شبکه ما یا به زبان فنی تر Network ID یا شناسه شبکه ما محسوب می شود و در صورتیکه تمامی این بیت ها 1 بودند عدد حاصل نمایانگر آدرس IP مربوط به عملیات Broadcast می باشد ، این دو عدد آدرس IP به همین دلایلی که ذکر کردیم و کاربردی که دارند در شبکه قابل استفاده نیستند و همین امر باعث می شود که تعداد آدرس هایی که ما می توانیم با 8 بیت آدرس دهی کنیم از عدد 256 عدد به 254 عدد کاهش پیدا کند .

 



وقتی شما تعداد بیت های شبکه خود را شناختید ، مثلا 24 یا25 یا 26/ را داشتید ، این قابلیت را خواهید داشت که قسمت شبکه خود را گسترش داده و با استفاده از زیاد کردن Netmask تعداد محدوده های IP بیشتری را ایجاد کنید . تعداد بیت هایی که شما به داخل قسمت میزبان یا Host ID خود وارد می شوید تعیین کننده تعداد سگمت ها و تعداد سابنت ها ( Subnet ) است که ایجاد کرده اید . طولانی کردن Netmask به تعداد n بیت باعث ایجاد 2 به توان n عدد Subnet خواهد شد .

خوب بیایید در یک مثال عملی این موضوع را روشن کنیم ، ببینید که چه اتفاقی رخ می دهد زمانی که شما 2 بیت از Subnet را استفاده می کنید . تعداد بیت های قسمت میزبان یا Host به عدد 6 می رسد ( 2 بیت قرض داده ) . در این حالت شما با استفاده از دو بیت ، می توانید 4 حالت و محدوده مختلف IP یا Subnet مختلف ایجاد کنید. به شکل زیر توجه کنید :

 



کاری که در واقع ما در مرحله قبل انجام دادیم این است که از یک محدوده آدرس دهی شبکه ، 4 عدد محدوده آدرس دهی یا به مفهوم فنی تر از یک عدد Subnet موجود 4 عدد Subnet جدا کردیم . باز هم تکرار میکنم ، تعداد بیت ها در هر Subnet اگر همگی صفر بودند نمایانگر Net ID یا شناسه شبکه است و اگر همگی 1 بودند نمایانگر Broadcast IP هستند که ما می توانیم از همین روش شروع و پایان هر Subnet را در اینجا تعیین کنیم ، به جدول زیر دقت کنید :

 

 

نکته مهم

بعضی از مسیریاب های قدیمی Subnet Mask های همه Route های موجود را مسیریابی نمی کنند . این مسیریاب ها اعداد تمام 1 و تمام 0 را درک نمی کنند و این Subnet ها را تشخیص نمی دهند ، بنابراین ممکن است که این محدوده آدرس ها را نتوان در اینگونه مسیریاب ها استفاده کرد .

منبع : انجمن حرفه ای های فناوری اطلاعات ایران