اگر در یک سازمان از اینترنت استفاده می کنید، مطمئن باشید که بخشی از یک ساب نت ( subnet ) یا زیر شبکه است. اما چرا ساب نت ها مهم بوده و از کجا می توان فهمید که بر روی کدام ساب نت در حال فعالیت هستیم؟ یک subnet که در اصل مخفف subnetwork است، شبکه ای درون یک شبکه دیگر است. پس اگر یک شبکه را به چند شبکه کوچک تر و مجزا تقسیم کنید، آن شبکه های کوچک، subnet خواهند بود. در این مطلب به طور مفصل در خصوص زیر شبکه ها صحبت خواهیم کرد.
Subnet یا زیر شبکه چیست؟
همانطور که در خلاصه گفتیم، ساب نت ها شبکه هایی درون شبکه ای بزرگ تر هستند، که باعث افزایش کارایی آن می شوند. به کمک زیر شبکه سازی، ترافیک شبکه می تواند با طی کردن مسیری کوتاه تر به مقصد خود برسد ( بدون گذر از روترهای اضافی ).
بگذارید با یک مثال شروع کنیم...
فرض کنید مریم نامه ای را در صندوق قرار داده که آدرسش به وحید که دقیقا در شهر کناری مریم زندگی می کند، منتهی می شود؛ برای اینکه این نامه با سرعت تمام به دست وحید رسد، باید دقیقاً از اداره پست مریم به اداره پست شهر وحید منتقل و در نهایت به دست وی برسد.
اگر این نامه ابتدا به یک اداره پست که کیلومترها فاصله دارد ارسال شده و سپس به شهر وحید برسد، مسلماً مدت زمان بسیار بیشتری طول خواهد کشید تا نامه مریم به دست وحید برسد.
شبیه به همین مثال خدمات پستی، شبکه ها نیز زمانی که پیام ها مستقیم تر به مقصد رسند، موثر تر خواهند بود. زمانی که شبکه ای از شبکه ای دیگر بسته های داده ای را دریافت می کند، آن بسته ها بر اساس ساب نت ها را مرتب کرده و مسیر دهی می کند. به این ترتیب بسته مورد نظر دیگر مسیر غیر کارآمدی را برای رسیدن به مقصد طی نخواهد کرد.
در اینجا لازم است یک مروری بر آدرس های IP داشته باشیم تا در فهم این موضوع دچار سردرگمی نشوید.
آدرس IP چیست؟
برای درک بهتر زیر شبکه ها ( SUBNETS ) باید آدرس های IP را بخوبی بشناسیم؛ به هر دستگاهی که به اینترنت متصل می شود، یک آدرس IP اختصاصی تعلق می گیرد. این آدرس به ما کمک می کند تا داده های مورد نظرمان را بین میلیون ها دستگاه متصل به اینترنت در جهان، دقیقا به همان دستگاه مورد نظرمان ارسال کنیم.
با اینکه کامپیوترها آدرس های IP را به شکل کدهای صفر و یکی ( Binary code ) می خوانند، آدرس های IP به شکل کارکترهای ترکیبی از حروف و اعداد نوشته می شوند.
قسمت های مختلف یک آدرس IP به چه معنا هستند؟
در این بخش به آدرس های IPv4 اشاره خواهیم کرد، که در قالب چهار عدد دهگانی نمایان می شوند که با دوره هایی ( period ) از هم جدا می شوند. چیزی شبیه به این: 203.0.113.112
آدرس های IPv6 از حروف نیز در بین این اعداد استفاده کرده و معمولاً طولانی تر هستند.
هر آدرس IP دارای دو بخش است؛ قسمت اول بیان کننده این است که این آدرس به کدام شبکه تعلق دارد. و قسمت دوم دستگاهی که درون آن شبکه قرار دارد را مشخص می کند. با این حال، طول قسمت اول، بسته به کلاس شبکه تغییر خواهد کرد.
شبکه ها در چند کلاس مختلف طبقه بندی می شوند که از A تا E برچسب می خورند. شبکه های کلاس A می توانند به میلیون ها دستگاه متصل شوند. شبکه های کلاس B و C به طور قابل توجهی کوچک تر هستند. و در آخر شبکه های کلاس D و E به ندرت مورد استفاده قرار می گیرند.
بگذارید ببینیم که این کلاس ها چه تأثیری بر ساختار آدرس های IP دارند:
- شبکه کلاس A: هر چیزی که قبل از دوره اول ( 1st period ) نمایان شود، مشخص کننده شبکه و هر چه پس از آن آید دستگاه درون آن شبکه را معرفی می کند. برای مثال در آدرس 203.0.113.112 شبکه توسط عدد 203 و دستگاه توسط عدد 0.113.112 مشخص می شود.
- شبکه کلاس B : هر چیز قبل از دوره دوم ( 2ND period ) مشخص کننده شبکه و بعد از آن دستگاه. برای مثال 203.0 مشخص کننده شبکه و 113.112 دستگاه.
- شبکه کلاس C : در این کلاس هر چیز قبل از دوره سوم شبکه و بعد از آن دستگاه را مشخص می کند؛ مثل 203.0.113 و 112.
خب به موضوع زیر شبکه برگردیم...
چرا Subnet سازی مهم است؟
همانطور که مثال بالا نشان داد، نحوه ساختار بندی آدرس های IP کار را برای روترهای اینترنتی آسان تر کرده تا بتوانند داده ها را به شبکه درستی هدایت کنند. با این وجود، برای مثال در یک شبکه کلاس A، ممکن است میلیون ها دستگاه به آن متصل باشند، که این موضوع می تواند زمان بیشتری برای داده ها طول بکشد تا دستگاه مورد نظر را پیدا کنند.
به همین دلیل است که زیر شبکه سازی بسیار کاربردی است. Subnetting باعث ریز تر شدن گستره ای از دستگاه های درون یک شبکه می شود.
از آنجا که آدرس های IP تنها می توانند شبکه و دستگاه درون آن را مشخص کنند، نمی توانند برای یافتن ساب نت و مسیردهی بسته ها به آن راه حل مناسبی باشند.
به همین دلیل، روترهای درون شبکه از چیزی به نام Subnet mask برای مرتب سازی داده های درون subnetwork ها استفاده می کنند.
قبل از توضیح subnet mask ها بگذارید برای subnet ها نیز یک مثال بیان کنیم...
زیر شبکه سازی شبیه به تقسیم کردن یک ساختمان به بخش ها و واحد های مختلف است. این ساختمان دارای یک آدرس مشخص بوده که هر کس می تواند برای پیدا کردن آن، به آدرس مراجعه کند. اما این ساختمان دارای واحد های بسیاری است؛
و آدرس تمام آنها نیز یکی است. اما درون آن ساختمان حتی این واحد ها نیز دارای آدرس هستند، برای مثال شماره واحد ( واحد 101 ) ؛ این شماره نیز که نوعی زیر آدرس است، معمولاً در انتهای آدرس ساختمان اضافه شده و در اختیار افراد بیرونی قرار می گیرد.
منظور از Subnet mask چیست؟
Subnet mask چیزی شبیه به آدرس IP است با این تفاوت که درون یک شبکه برای استفاده داخلی کاربرد دارد. روترها از Subnet mask ها برای هدایت بسته ها به مقصد درست استفاده می کنند.
این ماسک ها درون بسته های مسافر مشخص نمی شوند، بلکه بسته ها تنها آدرس IP مقصد را می دانند؛ این کار بر عهده روترهاست تا بسته را با یک ساب نت جفت کنند.
بگذارید با یک مثال بهتر توضیح دهیم...
فرض کنید در همان مثال بالا، وحید پاسخ نامه مریم را می دهد. اما بجای فرستادن نامه به خانه مریم، آن را به محل کارش می فرستد. اداره مریم بسیار بزرگ بوده و دارای دپارتمان های متعددی است.
برای اینکه نامه ها به درستی و سریع تر به دست کارمندان برسد، تیم مدیریتی اداره مریم، نامه ها را بجای نام کارمندان، بر اساس دپارتمان مرتب می کند.
پس از دریافت نامه وحید، آنها به دنبال دپارتمان مریم گشته و متوجه می شوند که او در واحد پشتیبانی از مشتریان کار می کند. پس نامه را به جای ارسال به مریم، به دپارتمانی که در آن کار می کند، می فرستند. در نهایت واحد پشتیبانی از مشتریان آن را به مریم تحویل می دهد.
در این مثال، مریم شبیه به یک آدرس IP و واحد پشتیبانی از مشتریان شبیه به یک Subnet mask بود. با هماهنگ کردن مریم و دپارتمانش، نامه وحید به سرعت در دسته درستی قرار گرفت؛ اما در غیر این صورت، مدیران می بایست به زحمت به دنبال میز مریم می گشتند.
یک مثال نزدیک تر به IP ها؛
فرض کنید که یک بسته به آدرس IP با شماره 192.0.2.15 آدرس دهی شده باشد. این آدرس IP از کلاس C بوده و شبکه توسط 192.0.2 مشخص می شود. روترهای شبکه بسته را به سمت میزبانش در شبکه هدایت می کنند.
زمانی که بسته به آن شبکه می رسد، یک روتر درون شبکه از جداول مسیردهی خود کمک می گیرد. سپس یک سری محاسبات ریاضی صفر و یکی به کمک Subnet mask خود یعنی 255.255.255.0 انجام داده و آدرس دستگاه 15 را می بیند.
در نهایت مشخص می کند که بسته باید به کدام ساب نت مراجعه کند. به همین ترتیب، آن بسته را به سمت روتر یا سوییچِ مسئولِ تحویل بسته ها درون آن ساب نت هدایت می کند. اینجاست که بسته به آدرس 192.0.2.15 می رسد.
نحوه محاسبه subnet ها
همانند آدرس های UPv4، ماسک های ساب نت ( Subnet masks ) آدرس هایی 32 بیتی بوده که از 8 گروه 8 بیتی ساخته می شوند. معمولاً این ساب نت ها فرمتی مثل 255.255.255.255 ( دهگانی ) داشته و یا در قالب صفر و یک نمایش داده می شوند؛ مثل 11111111.11111111.11111111.11111111 ( binary ).
یکی از معروف ترین subnet mask ها، شبکه /24 است که معادل 255.255.255.0 می باشد. این یعنی آدرس های IP درون شبکه از یک پیشوند یکسان برای سه بخش اولیه استفاده می کنند.
در حالت Binary این زیر شبکه معادل 11111111.11111111.11111111.00000000 خواهد بود. شبکه A/24 مجموعاً دارای 256 آدرس از دستگاه های مختلف است.
نکته: 8 بیت انتهایی در این مثال همه صفر بودند؛ بیت های درون یک mask تنها می توانند از راست به چپ، صفر باشند، پس یک آدرس نمی تواند در وسط از صفر استفاده کرده باشد. مثل : 11111011.
مثال آخر:
فرض کنید که یک ادمین سیستمی هستید که یک بلوک از آدرس های IP در اختیار شما قرار داده شده است، مدیریت شبکه هایی به شما محول شده که طوری سازماندهی نشده اند که با این آدرس ها هم خوانی داشته باشند.
برای مثال با شبکه ای گسترده از 150 هاست در سه شبکه ( در 3 شهر مختلف ) مواجه هستید که توسط روترهای TCP/IP به یکدیگر متصل اند.
هر کدام از این سه شبکه 50 هاست دارد. به شما شبکه کلاس C با شماره 192.168.123.0. اختصاص یافته است. که یعنی شما می توانید از آدرس های 192.168.123.1 تا 192.168.123.254 برای 150 هاست تان استفاده کنید.
دو آدرسی که نمی توانند در مثال ما مورد استفاده قرار گیرند عبارتند از : 192.168.123.0 و 192.168.123.255 ؛ چراکه آدرس های Binary تمام صفر و یک معتبر نخواهد بود.
آدرس صفر به این دلیل نامعتبر است که به شبکه ای بدون یک هاست اشاره دارد. آدرس 255 نیز برای ارسال یک پیام به تمام هاست های یک شبکه مورد استفاده قرار می گیرد.
پس توجه داشته باشید که آدرس های اول و آخر هر شبکه یا ساب نت را نمی توان به هیچ هاستی اختصاص داد.
خب حالا می توانید به تمام 254 هاست خود یک آدرس ip اختصاص دهید. اگر تمام 150 کامپیوتر روی یک شبکه قرار داشته باشند، این سناریو به درستی کار خواهد کرد.
اما یادتان باشد که 150 کامپیوتر شما در سه شبکه فیزیکی جداگانه مستقر هستند. پس بجای درخواست بلوک های آدرس بیشتر برای هر شبکه، بهتر است شبکه خود را به subnet هایی تقسیم کنید. به این صورت می توانید از یک بلوک آدرس بر روی چند شبکه فیزیکی استفاده کنید.
راهکار میزبان کلود
به کمک سرور های ابری میزبان کلود می توانید به سادگی و تنها با چند کلیک برای خود در دیتاسنتر مورد نظر یک سرور با منابع دلخواه ایجاد کرده و به راحتی برای خود شبکه های ابری ایجاد کنید.
پنل کاربری میزبان کلود طوری طراحی شده تا شما بتوانید تنها با یک کلیک یک شبکه خصوصی ابری ایجاد کرده و آدرس های سابنت مورد نظر را تنظیم کنید.
جمع بندی
Subnet ها در هر شبکه ای لازم و ضروری هستند؛ بخصوص برای سازمان هایی که قصد دارند از شبکه برای هدایت موثر ترافیک استفاده کنند. ساب نت ها به شما کمک می کنند تا جلوی مشکلاتی مانند IP conflict را بگیرید؛ یعنی زمانی که دو دستگاه درون یک شبکه از آدرس های IP یکسانی برخوردارند. در این مطلب سعی شد تا با مثال هایی قابل درک، چیستی و اهمیت وجود Subnetwork ها را برای شما شرح دهیم. امیدواریم این مطلب نیز برای شما مفید واقع شده باشد.
ارائه دهنده خدمات زیرساخت یکپارچه ابری