نوشته‌ها

پورت Trunk چیست

پورت Trunk چیست

تعریف Trunk 

به عنوان کسی که در حوزه شبکه فعالیت میکند حتما میدانید که ما مفهومی به نام VLAN داریم که پورت های سویچ ها را از هم تفکیک و ترافیک آنها را مجزا می کنیم و در وهله اول باید به این موضوع توجه کنید که شما می توانید VLAN هایی به یک اسم و با یک ID مشترک در سویچ های مختلف شبکه داشته باشید که ترافیک این سویچ ها در این پورت ها برای VLAN مورد نظر ایزوله است !!

پس این طرز فکر را از ذهنتان بیرون بیندازید که VLAN فقط مختص یک سویچ و پورت های آن است و بس !!

شما می توانید کامپیوتری در VLAN 100 در سویچ MALI داشته باشید که بعد از جدا کردن از سیستم و بردن آن به طبقه دهم و اتصال به سویچ MODIRIYAT همچنان در همان VLAN 100 قرار داشته باشد !! اما چطور ممکن است که ما همچنان در یک VLAN باشیم و با کامپیوترهایی در سویچ های دیگر در همان VLAN صحبت کنیم ؟ شما می توانید با استفاده از یک پورت به عنوان شاه پورت ترافیک سویچ های مختلف به هم را مدیریت و آنها را به هم متصل کنید به این شاه پورت در اصطلاح فنی پورت Trunk گفته می شود.

پورت Trunk چیست

یک پورت ترانک یا Trunk Port در واقع پورتی است که وظیفه آن انتقال ترافیک VLAN هایی است که سویچ به آنها دسترسی دارد ، به فرآیندی که در آن ترافیک VLAN ها می تواند به سویچ دیگر از طریق پورت Trunk منتقل شود نیز Trunking گفته می شود. پورت های Trunk هر Frame را با استفاده از یک برچسب شناسایی منحصر به فرد که در اصطلاح Tag گفته می شود علامت گذاری می کند ، برای مثلا برچسبی بر روی یک Frame قرار می گیرد که مشخص کننده این است که این Frame متعلق به VLAN 100 می باشد.

البته برچسب های متنوعی وجود دارند که بر اساس پروتکل های مورد استفاده در سویچ متفاوت هستند ، معمولترین نوع برچسب ها یا Tag های مورد استفاده در Trunking برچسب 802.1Q و همچنین برچسب Inter-Switch Link یا ISL می باشد. این برچسب ها یا Tag ها زمانی کاربرد دارند که ترافیک بین سویچ ها جابجا می شوند. با استفاده از این مکانیزم و برچسب ها هرگاه یک Frame از سویچ خارج شود با توجه به برچسب مورد نظر ، مشخص می شود که قرار است به کجا هدایت شود و مسیر مشخصی را طی خواهد کرد و به VLAN مورد نظر ما هدایت می شود.

به این نکته توجه کنید که یک پورت اترنت یا می تواند یک Access Port باشد یا یک Trunk Port و نمی تواند بصورت همزمان هر دو کار را انجام بدهد ، بنابراین به پورتی که به عنوان Trunk تعریف شده است کامپیوتری را نمی توانید متصل کنید. نکته جالبتر در خصوص پورت های Trunk این است که برخلاف پورت های Access یا دسترسی ، این پورت ها می توانند همزمان به عضویت چندین VLAN در بیایند و به همین دلیل است که می توانند ترافیک های VLAN های مختلفی را همزمان هدایت کنند.

 

Trunk Port

Trunk Port

همانطور که گفتیم برای اینکه پورت ترانک ما به درستی بتواند ترافیک های VLAN های مختلف را هدایت کند با استفاده از پروتکل 802.1Q هر کدام از Frame هایی که از پورت های مختلف سویچ دریافت می شوند را برچسب گذاری یا Tag می زند. به این فرآیند 802.1Q Encapsulation نیز گفته می شود. در این روش Tag مورد نظر و مربوط به VLAN مورد نظر بر روی Header بسته یا Frame اطلاعاتی ما قرار می گیرد. محتویات این برچسب یا Tag مشخص کننده VLAN ای است که Frame از آن وارد سویچ شده است.

این فرآیند باعث می شود که هرگاه ترافیک از پورت های Trunk یک سویچ عبور می کنند مشخص باشد که قرار است به کدام VLAN وارد شوند و همزمان می توان چندین Frame از VLAN های مختلف را درون یک Trunk Port هدایت کرد. بصورت پیشفرض همه ترافیک VLAN های مختلف به سمت همه Trunk Port ها هدایت می شوند اما شما می توانید این روند را تغییر بدهید و طراحی خاص خودتان را در سویچ ها پیاده سازی کنید.

منظور از Native VLAN چیست

اما در این میان یک نکته جالب وجود دارد و آن هم VLAN محلی یا Native VLAN است. مفهوم این موضوع خیلی ساده است ، تصور کنید که 802.1Q هیچ برچسب یا Tag ای برای یک Frame قرار ندهد و آن را در Trunk برای سایر سویچ ها ارسال کند !! خوب چه اتفاقی می افتد ؟ سویچ های مقصد با توجه به برچسب باید مسیر Frame را و اینکه باید در کدام VLAN قرار بگیرد مشخص کنند اما Tag ای وجود ندارد !

در چنین مواقعی بصورت پیشفرض ما یک VLAN از قبل تعریف و پیکربندی شده بر روی همه سویچ ها داریم که به آن Native VLAN گفته می شود به این معنی که اگر ترافیک مورد نظر ما یا بهتر بگوییم Frame های ما که از پورت Trunk می آیند فاقد برچسب یا Tag بودند به سمت یک VLAN مشخص هدایت شوند که به آن Native VLAN گفته می شود.

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 ارسال کننده فریم توسط سوئیچ انجام می گیرد.

VLAN Trunking

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 استفاده می کنیم .

جهت خرید سوئیچ سیسکو ، روی عبارت مورد نظر کلیک کنید .

منبع : آقای اکرمی و www.orbit-computer-solutions.com

لینک های مفید :

مفهوم پروتکل VTP در سوئیچ های سیسکومفهوم پایه VLAN در سوئیچ های سیسکو