VLAN Trunking

مفهوم VLAN Trunking در سوئیچ های سیسکو

مفهوم VLAN Trunking :

اگر VLAN در شبکه هایی که با چندین سوئیچ به هم وصل شده اند استفاده شود، برای بخش های بین سوئیچ بایستی که از VLAN Trunking استفاده کنیم. به عبارت ساده تر وقتی روی سوئیچ ها VLAN تعریف می کنیم، سوئیچ ها را از طریق ترانک به هم وصل می کنیم. بنابراین در مورد مثال دانشکده IT و MBA نیز بایستی که بین سوئیچ ها از VLAN Trunking استفاده کنیم. تا سوئیچ دانشکده فیزیک بتواند با VLAN خود در سوئیچ دانشکده IT در ارتباط باشد.

VLAN-Trunking

VLAN-Trunking

اما بسته ای که از سوئیچ دانشکده فیزیک خارج می شود از کجا مشخص می شود که به سمت کدام VLAN باید برود؟

VLAN Tagging

VLAN Trunking باعث می شود که سوئیچ ها از فرآیندی استفاده کنند که VLAN Tagging (برچسب زدن VLAN) نامیده می شود. همان طور که از نام این فرآیند مشخص است، VLANها برچسب گذاری می شوند، تا هویت بسته های ارسالی و دریافتی مشخص باشد و سوئیچ ها بدانند کدام فریم متعلق به کدام VLAN می باشد.

در حقیقت وقتی بسته ای می خواهد که از پورت ترانک سوئیچی خارج گردد، سوئیچ به آن بسته یک برچسب می زند، که در آن برچسب شمارهVLAN یا (VLAN ID) که این بسته به آن تعلق دارد را قرار میدهد تا از این طریق سوئیچهای دیگر متوجه شوند که بسته دریافتی به کدام یکی از VLANهایشان مربوط است.

اما سوئیچها چگونه VLAN ID را پیدا می کنند؟ برای این کار طبق یک استاندارد، سوئیچ قبل از اینکه فریم را به سوئیچ دیگری ارسال کند، یکHeader را به فریم اضافه می کند که VLAN ID در آن Header قرار می گیرد. بنابراین سوئیچ وقتی فریمی را دریافت میکند اول Header آن را برای پیدا کرده و VLAN ID آن را چک می کند تا بداند بسته به کدام یکی از VLAN ها تعلق دارد.

Trunking VLAN به چه صورت در سوئیچ ها ایجاد می شود؟ برای این کار کافی است از یکی از پورت های سوئیچ استفاده کنیم و به تنظیمات پیکربندی سوئیچ رفته و آن پورت را به TRUNK اختصاص دهیم. با اینکار سوئیچ میتواند از VLAN Trunking استفاده کند.

VLAN Trunking :

فقط به یاد داشته باشید که اگر سوئیچ پورت TRUNK داشته باشد، ترافیک دریافتی از VLAN های آن را به تمام پورتهای TRUNK نیز ارسال میکند به جز در مورد حالتی خاص که در مورد آن بحث خواهیم کرد.

شکل زیر سعی دارد TRUNK را روشن تر بیان نماید.

در این شکل PC 3 در VLAN2 قصد دارد که پیامی را به صورت Broadcast ارسال کند. سوئیچ این پیام را به سایر کامپیوترهایی که با کامپیوتر ارسال کننده در یک Broadcast Domain هستند می رساند، در ادامه کار، سوئیچ می بایست این فریم را به پورت ترانک خود نیز ارسال کند تا اگر در سایر سوئیچ ها هم VLAN2 باشد، این پیام به آن ها نیز برسد. اما قبل از اینکه فریم از سوئیچ خارج شود و روی ترانک قرار گیرد، می بایست به فریم برچسب بزنیم! این کار را با اضافه کردن Header به فریم و قرار دادن شماره VLAN ارسال کننده فریم توسط سوئیچ انجام می گیرد.

Access-and-Trunk-Interfaces

Access-and-Trunk-Interfaces

انواع پروتکل های ترانکینگ

پیش تر گفتیم سوئیچ Headerهایی را به فریم ها اضافه می کند. اما این Header چه شکل و قالبی خواهد داشت و چگونه تعریف خواهند شد؟

شکل و قالب این Header توسط پروتکل های ترانکینگ تعریف می شود. به طور کلی دو نوع پروتکل ترانکینگ داریم که یکی خاص منظوره (Inter Switch Link = ISL) که توسط شرکت سیسکو و تنها برای سوئیچ های سیسکو تعریف گردیده و دیگری عام منظوره (۸۰۲٫۱Q) که توسط IEEE برای عموم سوئیچ ها طراحی شده است. در حقیقت پروتکل ISL خیلی قبل تر از پروتکل۸۰۲٫۱Q طراحی شده بود و تنها به منظور استفاده در سوئیچ های سیسکو می باشد؛ اما این پروتکل دیگر حتی در بعضی از سوئیچ های جدید سیسکو نیز پشتیبانی نمی شود! همچنین پروتکل ISL تنها بین دو سوئیچ سیسکو که از پروتکل ISL پشتیبانی می کنند قابل استفاده است.

هر کدام از این پروتکل ها قالب خاص خود را برای تعریف Header دارند.

هر دو پروتکل  از شماره VLAN های یکسـان استفاده می کنند یعنی هر دو از شماره پروتکل ۱۲ بیتـی برای VLAN ID استفاده می کنند که منجر به ۲-۲۱۲ شماره مختلف می شود. (شماره های ۰ و ۴۰۶۵ در نظر گرفته نمی شوند )

توجه داشته باشید که ID های ۱ تا ۱۰۰۵ به عنوان رنج نرمال و ID های بالاتر از آن برای برای VLAN های گسترش یافته استفاده می شود. یک تفاوت خیلی مهم بین پروتکل ISL و ۸۰۲٫۱Q استفاده از ویژگی ای به نام Native VLAN است که فقط پروتکل۸۰۲٫۱Q از آن پشتیبانی می کند .

Native VLAN

روی هر سوئیچ به صورت پیش فرض یک VLAN تعریف شده که تمام پورت های سوئیچ به آن VLAN اختصاص داده شده اند شماره این VLAN همیشه ثابت و برابر ۱ است و به آن native VLAN می گویند. مثلا اگر سوئیچی ۲۶ عدد پورت داشته باشد در ابتدا تمام این ۲۶ پورت در انحصار VLAN 1 است، وقتی شما VLAN 2 را تعریف می کنید می توانید تعدادی از این پورت ها را به VLAN 2 اختصاص دهید که در آن صورت دیگر از انحصار VLAN 1 خارج می شوند. یادتان باشد که شما نمی توانید شماره این VLAN را تغییر دهید و یا آن را حذف کنید و در ضمن همیشه شماره VLAN های شما از ۲ شروع می شود.

۸۰۲٫۱Q از native VLAN استفاده ای مفید می کند، ۸۰۲٫۱Q به فریم هایی که از VLAN 1 یا همان native VLAN می آیند Header اضافه نمی کند و نتیجه این می شود که فریم بی Header به دست سوئیچ دیگری می رسد. سوئیچ دیگر هم وقتی که متوجه شد که فریم Header ندارد می فهمد که این فریم از یک Native VLAN به دستش رسیده و او نیز این فریم را به Native VLAN خود ارسال می کند.

این کار باعث می شود که اگر به سوئیچی متصل شدیم که پروتکل های تراکینگ در آن تعبیه نشده است باز هم بتوانیم عمل انتقال فریم ها را انجام دهیم، چرا که پروتکل های تراکینگ Headerی به فریم اضافه می کنند که باعث می شود فریم اصلی درون این Header کپسوله شود و برای سوئیچی که پروتکل های تراکینگ در آن تعبیه نشده است فریم نامفهوم می شود ولی این Header در Native VLAN وجود ندارد و به این ترتیب می توانیم با سوئیچ بدون TRUNK ارتباط برقرار کنیم.

در حقیقت Native VLAN برای سوئیچ هایی که حداقل قابلیت عبور ترافیک و آن هم تنها برای یک VLAN را دارند کاربرد دارد. دلیل دوم اینکه پروتکل هایی نظیر CDP، STP ، VTP، PagP و… وجود دارند که تنها برای عبور از VLAN 1 تنظیم شده اند.

برای بالا بردن امنیت در VLAN ها می توانیم VLAN 1 را نادیده بگیریم و VLAN دیگری را به عنوان Native VLAN برای سوئیچ ها تعریف کنیم، فقط نکته قابل توجه این است که Native VLAN بایستی که برای همه سوئیچ¬ها تعریف شده باشد و همه قبول داشته باشند که مثلاً VLAN30 یک Native VLAN است.

بیایید فرض کنیم که سه عدد سوئیچ داریم که هر کدام بایستی پورت هایی داشته باشند که به VLAN ای با شماره ۳ اختصاص دارد، برای تعریف این VLAN بایستی که برای هر سوئیچ به قسمت تنظیمات پیکربندی آن رفته و VLAN شماره ۳ و نام آن را تعریف کنیم و اگر احتمالاً مجبور شدیم که نام یک VLAN را عوض کنیم بایستی که این تغییر نام را بر روی تک تک سوئیچ ها اعمال کنیم. مطمئناً برای سه سوئیچ کار چندان سختی نخواهد بود، اما اگر ۲۰۰ عدد سوئیچ داشتید این قضیه به چه شکل خواهد بود، برای رفع این مشکل از پروتکلی به نامVTP استفاده می کنیم.

منبع : آقای اکرمی