سابنتینگ یا Subnetting چیست و چگونه انجام می شود؟ (آموزش و مثال)
در دنیای امروزی فناوریها و اتصالات شبکه، بسیار پرکاربرد هستند و در ارتباطات ما روزانه نقش بسیار مهمی ایفا میکنند. اما برای بهرهبرداری بهینه از این شبکهها، نیازمند تعیین آدرسدهی و طبقهبندی مناسب آنها هستیم. در اینجا مفهوم سابنتینگ یا Subnetting به عنوان یک تکنیک مهم در این حوزه مطرح میشود.
در مطالب قبل به موضوع آدرس IP چیست پرداختیم، اما در این مقاله، به بررسی مفهوم سابنتینگ و روشهای اجرایی آن میپردازیم. ابتدا به توضیح اهمیت سابنتینگ در شبکههای کامپیوتری میپردازیم و سپس به توضیح مراحل اصلی انجام سابنتینگ، از جمله تقسیم بندی شبکه و تعیین ماسک زیر شبکه، میپردازیم، و در پایان، به مزایا و معایب سابنتینگ اشاره میکنیم.
Subnetting چیست؟
تقسیم بندی یک شبکه بزرگتر به زیرشبکههای کوچکتر، به اصطلاح به”Subnetting” معروف است. وقتی ISPها محدودههای آدرس IP را به سازمانها اختصاص میدهند، آنها بر اساس تعداد شبکهها و نقاط پایانی مورد نیاز سازمانها عمل میکنند. اما بعضی سازمانها به بیش از یک شبکه نیاز دارند و به همین دلیل تقسیم بندی فضای آدرس IP به زیر شبکهها ضروری میشود.
در فرآیند Subnetting، فضای آدرس IP اختصاص داده شده به سازمان توسط ISP، به زیر شبکههای کوچکتر تقسیم میشود. این تقسیم بندی با استفاده از subnetting صورت میگیرد. با ایجاد زیر شبکههای کوچکتر در سازمان، تعداد زیر شبکهها افزایش مییابد و به همین ترتیب تعداد آدرسهای IP قابل استفاده در هر زیر شبکه کاهش مییابد.
هر زیر شبکه که به صورت مستقل عمل میکند، به عنوان یک زیر شبکه IP شناخته میشود. این زیرشبکهها قادرند ارتباط داخلی خود را برقرار کنند و با استفاده از روترها و سوئیچها، ارتباط با سایر شبکهها را نیز برقرار کنند.
چرا باید از subnetting استفاده کنیم؟
تخصیص آدرسهای شبکه به شکل موثر و کارآمد، امکان تقسیم آنها به بخشهای کوچکتر را در سازمان میدهد. به عنوان مثال، برای اتصال دو روتر با استفاده از یک اتصال WAN نقطه به نقطه، تنها دو آدرس لازم است. اما بخشی از شبکه که برای LAN استفاده میشود ممکن است نیاز به پشتیبانی از تعداد زیادی گره(Node) داشته باشد، از جمله سرورها، کامپیوترها، لپتاپها و دستگاههای تلفن همراه که از طریق Wi-Fi به شبکه متصل میشوند.
استفاده از تقسیم بندی زیر شبکهها (Subnetting) به منظور بهبود کارایی جداول مسیریابی در روترها ضروری است. طولانی ترین مسیریابها نیاز کمتری به جزئیات آدرسدهی دارند، بنابراین میتوان مسیرها را به طور محسوسی خلاصه کرد. با این حال، هنگامی که بستهها به شبکه مقصد نزدیکتر میشوند، روترها به اطلاعات مسیریابی محلی بیشتری نیاز خواهند داشت، مانند ماسک زیرشبکه محلی. با اعمال ماسک به آدرس مقصد بسته، روترها قادر خواهند بود تا تشخیص دهند کدام بخش از شبکه شامل میزبان مقصد است و بسته را به درستی تحویل دهند.
در مرحله بعد، اجازه دهید برخی از اطلاعات پایه از جمله آنچه مدیران شبکه باید در مورد آدرسدهی IP و زیر شبکهسازی بدانند، مرور کنیم. توصیه میکنیم با بررسی برخی از عناصر اساسی آدرسدهی IP و زیرشبکه شروع کنید. استفاده از Subnetting در شبکهها به دلایل زیر مورد نیاز است:
- مدیریت آدرسدهی: هنگامی که یک شبکه بزرگ را به چند زیر شبکه کوچکتر تقسیم میکنید، میتوانید آدرسدهی را بهبود بخشید. با استفاده از Subnetting، میتوانید آدرسها را به صورت منطقی و بهینه تر تقسیم کنید، به این صورت که هر زیر شبکه مجموعهای از آدرسهای IP را در اختیار داشته باشد. این کار موجب کاهش تداخل و اشتباهات در آدرسدهی میشود و به مدیران شبکه کمک میکند تا به راحتی شبکه را مدیریت کنند.
- کنترل ترافیک: با استفاده از Subnetting، میتوانید ترافیک شبکه را به طور مؤثر تر مدیریت کنید. با تقسیم شبکه به زیرشبکههای کوچکتر، میتوانید ترافیک را درون زیر شبکهها محدود کنید و از انتشار ترافیک ناشی از یک بار زیاد در کل شبکه جلوگیری کنید. همچنین، با اعمال سیاستهای مدیریتی در زیرشبکهها، میتوانید بهبود عملکرد شبکه و کاهش تداخلهای ترافیکی را تجربه کنید.
- امنیت: Subnetting میتواند به افزایش امنیت شبکه کمک کند. با تقسیم شبکه به زیرشبکههای جداگانه، میتوانید سطح دسترسی و کنترل بر روی آدرسها و منابع شبکه را برای هر زیر شبکه مدیریت کنید. این کار به شما امکان میدهد تا به صورت دقیقتر و ایمنتر کنترل کنید که کدام دستگاهها و کاربران به کدام بخشهای شبکه دسترسی داشته باشند.
به طور کلی، Subnetting به مدیران شبکه کمک میکند تا آدرسدهی، مدیریت ترافیک و امنیت شبکه را بهبود بخشند و به طور کارآمدتری شبکه را مدیریت کنند.
آموزش Subnetting با مثال
اکنون، بیایید در مورد آدرس دهی IP و زیرشبکه و نحوه اعمال آنها در شبکه واقعی بیشتر بیاموزیم. در هنگام برنامهریزی شبکه خود، یک سوال رایج و مهم این است: “برای شبکهام چه ماسک زیرشبکهای نیاز دارم؟” برای پاسخ به این سوال، بیایید روش استفاده از فرمول میزبان را بررسی کنیم.
فرمول میزبان به شما می گوید که در یک شبکه که دارای زیرشبکه خاصی است، چند میزبان مجاز خواهد بود. این فرمول به صورت 2 به توان h منهای 2 تعریف میشود. در این فرمول، h تعداد صفرها در ماسک زیرشبکه است که به صورت باینری تعبیر میشود. اولین و آخرین آدرس در این محدوده رزرو شده است. اولین آدرس برای شناسایی شبکه و آخرین آدرس برای استفاده به عنوان آدرس پخش مورد استفاده قرار میگیرد.
مرحله 1. محدوده میزبان را پیدا کنید
در مرحله اول Subnetting، باید محدوده میزبان را تعیین کنید. برای استفاده از فرمول میزبان، میتوانید با یک مثال ساده شروع کنید. فرض کنید قصد دارید از فضای آدرس آی پی 192.168.0.0 استفاده کنید. در حال حاضر، شما یک زیرشبکه کوچک با 20 هاست دارید. اما در آینده، تعداد هاستها به 300 افزایش خواهد یافت و شما قصد دارید چندین مکان با اندازه مشابه داشته باشید و بتوانید آنها را با استفاده از این فضای آدرس به هم متصل کنید.
با یک زیرشبکه واحد و تنها 20 هاست، سادهترین راه استفاده از ماسک زیرشبکه 255.255.255.0 است. این به این معنی است که شما میتوانید از آدرس 192.168.0.1 تا 192.168.0.254 برای میزبانهای خود استفاده کنید. آدرس 192.168.0.0 برای شناسه زیرشبکه استفاده میشود و آدرس 192.168.0.255 برای آدرس پخش شبکه رزرو شده است.
مرحله 2. تبدیل به باینری
اما قبل از تصمیمگیری برای استفاده از این ماسک زیرشبکه، بیایید فرمول میزبان را بر روی آن اعمال کنیم. در این سناریو، ما ماسک زیرشبکه 255.255.255.0 را در نظر میگیریم و آن را به باینری تبدیل میکنیم. این تبدیل به ما این را میدهد:
11111111 11111111 11111111 00000000
نکته: تبدیل مبنای دسیمال به باینری یکی از تواناییهای فنی مبتدی برای Subnetting است.
همانطور که مشاهده میکنید، هشت عدد صفر در قسمت آخر ماسک زیرشبکه وجود دارد. برای استفاده از فرمول میزبان که 2 به توان h) h تعداد صفر های ماسک زیر بکه است) منهای 2 بود. ما باید 2 را به توان 8 برسانیم که حاصل 256 است و در نهایت ان را منهای 2 کنیم که با این کار به عدد 254 می رسیم. بنابراین، با استفاده از ماسک زیرشبکه مشخص شده، ما میتوانیم از 254 میزبان استفاده کنیم. این تعداد میزبانها برای شبکه فعلی شما با 20 کاربر مناسب است، اما برای گسترش شبکه به 300 هاست، این ماسک کافی نیست.
تعداد هاستها = 2^(تعداد بیتهای میزبان) – 2
مرحله 3. تعداد کل هاست ها در هر زیرشبکه را محاسبه کنید
برای انجام این محاسبات Subnetting، بهتر است قبل از هر چیزی برنامهریزی کنید و در ابتدا، بهترین ماسک زیرشبکه را انتخاب کنید. زیرا در غیر این صورت ممکن است در آینده نتوانید به آسانی تمام آدرسهای IP موجود در این شبکه را تغییر دهید.
اضافه کردن یک به ماسک زیرشبکه به این معنی است که تعداد کمتری میزبان در هر زیرشبکه دریافت خواهید کرد، اما تعداد بیشتری زیرشبکه دریافت خواهید کرد. اگر از ماسک زیرشبکه 1 را حذف کنید، تعداد بیشتری میزبان در هر شبکه خواهید داشت، اما تعداد کمتری زیرشبکه خواهید داشت. مورد دوم را به عنوان کاری که باید انجام دهیم در نظر بگیرید.
برای انجام این کار، میتوانیم یکی از 1ها را برداریم تا ماسک زیرشبکهمان را بسازیم:
11111111 11111111 11111110 0000000
در نمایش اعشاری یا نمایش با چهار نقطه، این معادل 255.255.254.0 است.
این به این معناست که شما 9 عدد 0 در قسمت میزبان ماسک زیرشبکه دارید. برای محاسبه تعداد آدرسهای IP میزبان قابل استفاده، ما از فرمول 2 به توان تعداد صفرها منهای 2 استفاده میکنیم. بنابراین تعداد آدرسهای IP میزبان قابل استفاده برابر با 2 به توان 9 یعنی 512 منهای 2 که برابر 510 است می باشد. این تعداد برای یک شبکه با حدود 20 کاربر در حال حاضر و با رشد و توسعه آینده مناسب است. بنابراین، اکنون ما در کل 300 هاست را داریم.
با توجه به این اطلاعات، میدانیم که ماسک زیرشبکهای که بیشترین کارایی را دارد، ماسک 255.255.254.0 است. برای نمایش محدوده آدرس میزبان معتبر در هر زیرشبکه، باید آن را به صورت دو محدوده نوشت، زیرا توانایی نوشتن آدرسها به صورت چهار نقطه محدود است. بنابراین، برای اولین زیرشبکه، محدوده آدرس IP از 192.168.0.1 تا 192.168.0.255 و از 192.168.1.0 تا 192.168.1.254 خواهد بود. لازم به ذکر است که 192.168.0.0 زیرشبکه را مشخص میکند و 192.168.1.255 آدرس پخش شبکه است.
با این ترتیب، به مجموع 510 هاست قابل استفاده میرسیم.
مرحله 4. برای Subnetting تعداد زیر شبکه ها را محاسبه کنید
با توجه به درک فرمول میزبان در subnetting، در مرحله قبل، حالا باید فرمول زیرشبکه را نیز بشناسید. این فرمول به شما اطمینان میدهد که ماسک زیرشبکهای مناسب برای تعداد زیرشبکههایتان دارید. اما توجه کنید که فقط به این دلیل که با استفاده از فرمول میزبان تعیین میکنید تعداد هاست مناسبی برای شبکه محلی خود دارید، به این معنی نیست که زیرشبکههای کافی برای شبکه خود خواهید داشت. حالا بیایید ببینیم فرمول زیرشبکه چگونه کار میکند.
سابنت ماسک با طول 32 بیت، هر بیت را به یکی از دو حالت 1 یا 0 تنظیم میکند. بیتهایی که در سابنت ماسک با مقدار 1 قرار میگیرند، بیتهای شبکه را نشان میدهند و بیتهایی که با مقدار 0 قرار میگیرند، بیتهای میزبان را نشان میدهند. فرمول زیرشبکه 2s است، که در آن s تعداد 1هایی است که به ماسک زیرشبکه اضافه شده است.
به طور مثال از شبکه 192.168.0.0، ما انتظار 100 سایت راه دور با 300 رایانه شخصی را داریم. از چه ماسک زیرشبکهای استفاده کنیم؟ در مثال قبلی متوجه شدیم که ماسک زیرشبکه 255.255.254.0، میزان 510 میزبان را در هر زیرشبکه فراهم میکند. این تعداد میزبانها بیش از حد کافی برای پشتیبانی از 300 رایانه شخصی است، اما آیا همین ماسک زیرشبکه، حداقل تعداد زیرشبکه مورد نیاز برای 100 سایت راه دور را فراهم میکند؟ بیایید این مورد را بررسی کنیم.
مرحله 5. تأیید تعداد کل زیرشبکهها
در subnetting، برای تعیین تعداد زیرشبکهها، باید تعداد بیتهایی که ماسک اولیه آنها گسترش یافته است، که به عنوان بیتهای زیرشبکه نیز شناخته میشوند، را شمارش کنیم. در مثال ما، آدرس اولیه ما 192.168.0.0 با ماسک 255.255.0.0 بود. با استفاده از فرمول میزبان، ماسک زیرشبکه را به 255.255.254.0 تغییر دادیم. بیایید این دو ماسک را با هم مقایسه کنیم و تعداد بیتهای زیرشبکه را شمارش کنیم.
ابتدا به باینری تبدیل میکنیم:
255.255.0.0 = 11111111 11111111 00000000 00000000
255.255.254.0 = 11111111 11111111 11111110 00000000
ماسک جدید از هفت بیت زیرشبکه استفاده میکند. با استفاده از فرمول زیرشبکه، هر بیت زیرشبکه برابر با 2 به توان 7 (27) میشود که 128 زیرشبکه به ما میدهد. این حداقل برای 100 زیرشبکه است، بنابراین ما تعداد کافی از زیرشبکهها برای 100 شبکه دور داریم. به این معنی است که ما زیرشبکه مناسب برای شبکه خود را پیدا کردهایم. ماسک زیرشبکه را از فرمت باینری به فرمت دسیمال اعشاری تبدیل میکنیم و مقدار 255.255.254.0 را برای آن انتخاب میکنیم.
با اضافه کردن بیتهای زیرشبکه، تعداد زیرشبکهها دو برابر افزایش مییابد و تعداد میزبانها در هر زیرشبکه دو برابر کاهش مییابد. در جدول زیر، تعداد زیرشبکهها و تعداد میزبانها برای هر یک از هشت بیت ماسک در قسمت سوم آدرس IPv4 نشان داده شده است.
زیرشبکه با طول متغیر
شبکهها برای انجام کارهایشان نیاز به زیرشبکههایی با اندازههای مختلف دارند. برای این منظور، میتوان از یک زیرشبکه بزرگتر با ماسک کوتاهتر استفاده کرده و با استفاده از الگوریتم subnetting، زیرشبکههای کوچکتر را ایجاد کرد. این زیرشبکه با طول متغیر شناخته میشود، زیرا ماسکهای زیرشبکه در طولهای مختلفی وجود خواهند داشت.
با گسترش مثال بالا، فرض کنید که 100 سایت به دو اتصال WAN نقطه به نقطه یا 200 زیرشبکه با دو میزبان، هر کدام به یک روتر در هر انتهای اتصال نیاز دارند. ما با زیر شبکه ماسک 255.255.254.0 شروع می کنیم. با استفاده از فرمول میزبان، به دو بیت میزبان نیاز داریم (22 – 2 = 4 – 2 = 2). گسترش زیر شبکه ماسک به صورت باینری موارد زیر را میدهد:
255.255.254.0 = 11111111 11111111 11111110 00000000
255.255.255.252 = 11111111 11111111 11111111 11111100
ماسک زیرشبکه با افزایش هفت بیت تغییر کرده است. با استفاده از فرمول زیرشبکه 2 به توان 7، ما 128 زیرشبکه به دست میآوریم. اما این تعداد برای تمامی ارتباطات WAN ما کافی نیست، بنابراین ما از یک زیرشبکه بزرگتر دیگر استفاده میکنیم. با رزرو دو زیرشبکه بزرگتر برای ارتباطات WAN، ما ظرفیت کافی برای 256 اتصال نقطه به نقطه را خواهیم داشت.
192.168.252.0 تا 192.168.253.254: زیرشبکه های WAN 0 تا 127
192.168.254.0 تا 192.168.255.254: زیرشبکه های WAN 128 تا 255
اگر سایتهای کوچک راه دور زیادی داشته باشیم که هاستهای کمی در هر سایت دارند، مانند یک کسبوکار کوچک، میتوان از همین فرآیند استفاده کرد.
طراحی شبکه و subnetting در مقیاس بزرگ
در واقعیت، احتمالا هرگز این شانس را نخواهید داشت که یک شبکه بزرگ را از ابتدا طراحی کنید و برای آن subnetting انجام دهید. با این حال، مهارت های طراحی شبکه در مقیاس بزرگ به دلایل مختلف ارزشمند هستند:
- درک زیرشبکه یک شبکه در مقیاس بزرگ که قبلاً پیاده سازی شده است.
- درک اینکه ایجاد تغییرات در شبکه، آدرس دهی IP و زیرشبکه آن چه تأثیری خواهد داشت.
- برای اینکه در آزمون های مختلف ثابت کنید که آدرسدهی IP و زیرشبکه را میدانید و میتوانید آنها را اعمال کنید. معمولاً در مدارکی مانند Cisco Certified Network Associate از شما میخواهد که این مهارتها را اعمال کنید و آدرس IP را بدون ماشین حساب محاسبه کنید.
- مهم است که زیرشبکه را درک کنیم و بتوانیم ماسکها، محدوده میزبان و زیرشبکهها را به صورت طولانی محاسبه کنیم.
نتیجه گیری
سابنتینگ یک تکنیک مهم در طراحی و مدیریت شبکهها است که امکان تقسیمبندی شبکهها به زیرشبکههای کوچکتر را فراهم میکند. با استفاده از سابنتینگ، میتوان شبکهها را به شکلی سازماندهی کرد که منطقیتر و کارآمدتر باشند و مدیریت آنها آسانتر باشد.
فرایند سابنتینگ با استفاده از ماسک زیرشبکه (Subnet Mask) انجام میشود. حال با تعیین ماسک زیرشبکه، بیتهای شبکه و بیتهای میزبان در آدرس IP مشخص میشوند. با تغییر مقادیر ماسک زیرشبکه، محدودههای زیرشبکهها تغییر میکنند و امکان ایجاد زیرشبکههای جدید برای تقسیمبندی شبکه به بخشهای کوچکتر فراهم میشود.
با توجه به مزایای سابنتینگ و توانایی ایجاد زیرشبکههاIPی بیشتر، میتوان نتیجه گرفت که استفاده از این تکنیک برای طراحی و مدیریت شبکهها بسیار حائز اهمیت است و بهبود قابل توجهی را در عملکرد و کارایی شبکهها به ارمغان میآورد. در پایان امیدواریم این مطلب برایتان مفید بوده باشد.