VLAN چیست؟
تیر 3, 1403 1403-04-03 8:58VLAN چیست؟
VLAN چیست؟
در یک شبکه LAN اگر همه کامپیوترها و دستگاهها را در لایه 3 از هم جدا کنیم باز هم در لایه 2 در یک Broadcast Domain قرار دارند و همه یکدیگر را میبینند، چون؛ سوییچها در لایه 2 کار میکنند. برای اینکه این مشکل را برطرف کنیم یک راهکار این است که برای هر شبکه یک سوییچ فیزیکی قرار دهیم تا شبکهها از هم جدا شوند. همانطور که در تصویر زیر میبینید.
اما پر واضح است که این کار شدنی نیست و دلیل آن هم هزینه زیاد سختافزار در این حالت است و از طرف دیگر همه دستگاههای نهایی (End Device) در یک ناحیه قرار ندارند که همه به یک سوییچ متصل شوند. پس عملا این کار نشدنی است.
برای حل این مسئله سیسکو مفهومی تحت عنوان Virtual LAN یا همان VLAN را مطرح کرد. براساس این مفهوم ما میتوانیم بر روی یک سوییچ شبکههای مجزایی در لایه 2 داشته باشیم که نسبت بهم ایزوله هستند و این شبکهها ترافیک هم را حتی اگر در لایه 3 در یک شبکه باشند نمیبینند. با این قابلیت ما میتوانیم چندین Broadcast Domain بر روی یک سوییچ داشته باشیم. برای مقایسه به تصویر زیر دقت کنید.
پروتکل ایجاد شده توسط سیسکو ISL نام دارد که مخفف Inter-Switch Link میباشد اما به دلیل اینکه این پروتکل هدر سنگینی به بستهها اضافه میکند و همچنین چون IEEE این پروتکل را به یکی از استاندارهای خودش تحت عنوان 802.1q در آورده و امروزه اغلب دستگاههای شبکهای این پروتکل را پشتیبانی میکنند میتوان گفت ISL دیگر استفاده نمیشود یا کمتر استفاده میشود.
هنگامی که یک بسته از یک دستگاه نهایی (End Device) به دست سوییچ میرسد اگر مقصد بسته به همان سوییچ متصل باشد آن را به مقصد میرساند. اما اگر مقصد بسته به سوییچ دیگری متصل باشد چطور تشخیص میدهد که این بسته به کدام VLAN مربوط است؟
پاسخ این سوال به نحوه ارتباط دو سوییچ بستگی دارد. ما میتوانیم به دو صورت سوییچها را به هم متصل کنیم:
- Port-Based VLAN یا Untagged: در این حالت به ازای هر VLAN یک کابل از سوییچ اول به سوییچ دوم متصل میشود به طوری که هر کدام از اینترفیسها در یک VLAN متفاوت قرار دارند. برای فهم عمیقتر به تصویر زیر توجه کنید.
در این حالت اگر مقصد بسته بر روی همین سوییچ باشد به دستش میرسد و اگر بر روی سوییچ دیگر باشد چون آن سوییچ یک اینترفیس در VLAN مورد نظر دارد نیز به راحتی بسته سوییچ دوم و پس از آن به مقصد میرسد. از این روش استفاده نمیشود مگر در موارد خاص.
یک مثال از کاربرد این روش که برای خودم پیش آمد این بود که در یک اتاق که 2 پریز شبکه وجود داشت، 4 دستگاه باید به شبکه متصل میشدند که 3تای آنها کامپیوتر بودند مربوط به یک شبکه و دیگری دستگاه کارتخوان بانکی بود مربوط به شبکهای دیگر. دستگاه کارتخوان را به یکی از پریزهای شبکه متصل کردم و یک سوییچ غیرقابل مدیریت (Unmanaged) را به پریز دیگر و 3 کامپیوتر را به این سوییچ وصل کردم. چرا که با توجه به امکانات سختافزاری امکان استفاده از روش دوم که جلوتر توضیح خواهم داد نبود.
- Tag-Based VLAN: در این حالت دو اینترفیس سوییچها در حالت Trunk قرار میگیرد و اگر قرار باشد بسته از یک سوییچ به سوییچ دیگر برود از طریق این اینترفیس انتقال مییابد و یک Tag به بسته در حال جابجایی اضافه میشود.
اینTag چهار بایتی اضافه شده به فریمهای Ethernet شامل چهار فیلد اطلاعاتی میباشد:
- Tag Protocol Identifier (TPID): این فیلد 2 بایتی است و مقدار این فیلد همیشه 0x8100 است و به این معنی است که این یک فریم 1q است.
- Priority (PRI): این فیلد 3 بیتی است و برای مقاصد QoS استفاده میشود.
- Canonical Format Indicator (CFI): در شبکههای Ethernet و Token Bus آدرس MAC از سمت چپ به راست از کمارزشترین جایگاه عددی به بیشترین ارسال میشود در حالی که در شبکههای Token Ring و Fiber Distributed Data Interface (FDDI) از سمت راست به چپ از با ارزشترین جایگاه عددی به کمترین ارسال میشود. این فیلد تک بیتی در صورتی که حالت اول اتفاق افتاده باشد مقدارش 0 و در صورتی که حالت دوم اتفاق افتاده باشد مقدار این فیلد 1 است.
- VLAN ID (VID): این فیلد دو بایتی مشخص میکند که این فریم به چه VLAN تعلق دارد. از آنجا که این فیلد 12 بیتی است ما 4096 تا VLAN میتوانیم داشته باشیم اما چون بعضی از VLANهای برای مقاصد خاص استفاده شدهاند نمیتوان آنها را دید یا تعریف کرد مانند 0 و 4095. از 1 تا 4094 قابل مشاهده است اما باز هم VLAN رزرو شده در این محدوده وجود دارد که در قسمت محدوده VLANها به آن میپردازم.
توجه!!!
ممکن است در بعضی مقالات فیلد دوم را بجای PRI با عنوان Priority Code Point (PCP) هم ببینید.
محدوده VLAN ID
|
VLAN ID |
کاربرد |
|
0 |
این VLAN برای مقاصد QoS رزرو شده و قابل مشاهده و ویرایش نیست. |
|
1 |
VLAN پیشفرض میباشد و همه اینترفیسها بصورت پیشفرض عضو این VLAN هستند. این VLAN با نام Native VLAN نیز شناخته میشود. |
|
2-1001 |
VLANهای قابل استفاده بصورت پیشفرض و قابل استفاده در VTP* v1, v2. |
|
1002-1005 |
رزرو شده برای شبکههای Token Ring و FDDI |
| 1006-4094 | VLNAهای Extended هستند که فقط برای شبکه Ethernet کاربرد دارند. بجز نام این VLAN دیگر تنظیمات آنها قابل تغییر نیست و با تنظیمات پیشفرض کار میکنند. این VLANها در VTP v3 قابلیت انتشار (Propagate) دارند و در VTP v1,v2 فقط بر روی همان سوییچ تعریف میشوند. |
|
4095 |
این VLAN هم برای استفادههای خاص رزرو شده و قابل مشاهده نیست. |
* نکته!!!
VTP یا VLAN Trunking Protocol یکی از پروتکلهای سیسکو است که برای انتشار VLANها استفاده میشود. مقالهای جهت آموزش VTP منتشر خواهد شد.
ایجاد VLAN در سوییچ سیسکو
تعریف VLAN در سوییچ سیسکو کار بسیار راحتی است و دستورات پیچیدهای ندارد:
Switch1> enable
Switch1# configure terminal
Switch1(config)# vlan vlan_id
Switch1(config-vlan)# name vlan_name
همانطور که قبلا گفته شد مقدار vlan_id میتواند یکی از مقادیر جدول فوق باشد. دستور name یک دستور غیر اجباری است که یک عنوان برای VLAN ایجاد شده در نظر میگیرد که معرف کاربرد آن میباشد برای مثال اگر VLAN ایجاد شده مربوط به شبکه دوربینهاست مقدار vlan_name را CCTV قرار میدهم و یا اگر VLAN مربوط به واحد فناوری اطلاعات است مقدار IT را به آن اختصاص میدهم.
نکته!!!
توصیه میکنم حتما یک نام برای VLAN خود در نظر بگیرید؛ با زیاد شدن تعداد VLANها شما یا نفرات بعد از شما با یک گزارش گیری ساده از نام VLANها میتوانید به راحتی متوجه شوید که هر VLAN برای چه منظوری ایجاد شده است.
اضافه کردن اینترفیس به VLAN
برای اینکه یک اینترفیس را در یک VLAN خاص قرار دهیم از دستورات زیر استفاده میکنیم:
Switch1> enable
Switch1# configure terminal
Switch1(config)# interface interface_type interface_number
Switch1(config-if)# switchport access vlan vlan_id
در خط سوم ما اینترفیس مورد نظر خود را به حالت انتخاب در میآوریم. مقدار interface_type نوع اینترفیس را مشخص میکند مثلا FastEthernet یا GigabitEthernet. و interface_number شماره اینترفیس را مشخص میکند مثلا 0/0. پس از انتخاب اینترفیس با دستور مشخص شده و مشخص کردن vlan_id اینترفیس را در VLAN مشخص شده قرار میدهیم. اگر VLAN ID وارد شده از قبل وجود نداشته باشد ساخته میشود.
مشاهده VLANهای ساخته شده
برای مشاهده VLANهای ساخته شده و اینترفیسهایی که در آنها قرار دارند از دستور زیر استفاده میکنیم:
Switch1> enable
Switch1# show vlan
خروجی دستور بالا مانند تصویر زیر است.
محل ذخیرهسازی VLAN
در صورتی که تنظیمات سوییچ را ذخیره نکرده باشید با خاموش شدن سوییچ همه تنظیمات آن از بین میرود اما VLANها باقی میمانند. دلیل آن این است که اطلاعات مربوط به VLANها در Running Config ذخیره نمیشود بلکه در فایلی بنام vlan.dat در حافظه Flash ذخیره میشود. اما اگر VTP در حالت Transparent باشد در Running Config ذخیره میشود. اگر میخواهید از VLANها نسخه پشتیبان بگیرید باید از این فایل رونوشت داشته باشید و اگر میخواهید همه VLANها را به یکباره پاک کنید باید این فایل را حذف کنید.
سوییچهایی که Stack شدهاند تمام Stack از یک فایل vlan.dat استفاده میکنند که بر روی سوییچ Active قرار دارد.
امیدوارم این مقاله برای شما سودمند واقع شده باشد. منتظر نظرات شما هستیم.





