یکی از سوالهای رایجی که برای بسیاری از افراد تازهوارد به دنیای شبکه پیش میآید این است که چطور میتوان بین چند VLAN ارتباط امن و مدیریتشده ایجاد کرد؟
این پرسش کاملاً طبیعی است؛ زیرا زمانی که شبکه بزرگتر میشود و نیاز به تفکیک و کنترل ترافیک داریم، اهمیت VLAN و نحوهی ارتباط بین آنها بیشتر نمایان میشود.
پیش از اینکه وارد مرحلهی تنظیمات اصلی شویم، در این مقاله ابتدا خیلی کوتاه مفاهیم اولیهی VLAN را مرور میکنیم و سپس گامبهگام روش پیادهسازی Inter-VLAN Routing را توضیح میدهیم. هدف این است که دقیقاً بدانید این مکانیزم چگونه کار میکند و چطور میتوان آن را در یک سناریوی عملی پیادهسازی کرد.
VLAN چیست؟ (Virtual LAN)
وقتی چند دستگاه (Host) به یک سوئیچ متصل هستند، بهصورت پیشفرض همهی آنها میتوانند ترافیک یکدیگر را ببینند. اما در شبکههای بزرگتر برای مدیریت بهتر، نیاز به تفکیک منطقی گروهها داریم.
در اینجا VLAN وارد عمل میشود.
با ایجاد VLAN میتوانیم Hostها را اگر روی سوئیچهای متفاوت قرار داشته باشند بهصورت منطقی از هم جدا کنیم؛ بدون اینکه تغییری در کابلکشی فیزیکی شبکه ایجاد شود.
در نتیجه، هر VLAN مانند یک شبکهی مستقل عمل میکند و فقط ترافیک مخصوص به خودش را مشاهده میکند.
در شکل زیر نمونهای از جداسازی کاربران در دو VLAN مختلف نمایش داده شده است:
تصویر- 1 توپولوژی شبکه شامل دو VLAN (10 و 20) و اتصال آنها به روتر برای انجام Inter-VLAN Routing
چرا به Inter-VLAN Routing نیاز داریم؟
تا اینجا یاد گرفتیم که با VLAN میتوانیم کاربران را در گروههای جداگانه قرار دهیم. هر گروه در VLAN مخصوص خودش قرار دارد و ترافیک آنها با بقیهی شبکه مخلوط نمیشود.
اما یک سؤال مهم پیش میآید:
اگر یک دستگاه در VLAN 10 بخواهد با دستگاه دیگری در VLAN 20 ارتباط برقرار کند، چه اتفاقی میافتد؟
وقتی برای اولین بار چنین سناریویی را در Packet Tracer تست میکنید، احتمالاً متوجه میشوید که سوئیچ بهتنهایی قادر به برقراری ارتباط بین VLANها نیست.
در واقع، هر VLAN یک محدودهی جداگانه است و هیچ مسیر مستقیمی برای تبادل داده بین آنها وجود ندارد.
اینجاست که مکانیزم Inter-VLAN Routing وارد میشود؛ روشی که اجازه میدهد دو یا چند VLAN با وجود تفکیک منطقی، بتوانند با یکدیگر ارتباط برقرار کنند.
در تصویر مشاهده میکنید که دستگاهها در دو VLAN جدا قراردارند و تنها از طریق یک روتر میتوانند با یکدیگر ارتباط برقرار کنند. این همان ساختار پایهی Inter-VLAN Routing است.
Inter-VLAN Routing چیست ؟
وقتی در شبکه چند VLAN ایجاد میکنیم، هر VLAN مانند یک محیط کاملاً جدا از بقیه عمل میکند.
یعنی دستگاههای داخل یک VLAN تنها میتوانند با اعضای همان VLAN ارتباط داشته باشند و هیچ مسیر مستقیمی برای ارتباط با VLAN های دیگر وجود ندارد.
برای حل این محدودیت، از مفهومی به نام Inter-VLAN Routing استفاده میشود.
Inter-VLAN Routing روشی است که امکان ارتباط بین چند VLAN مستقل را فراهم میکند تا دستگاههای هر VLAN بتوانند مانند یک شبکهی واقعی با یکدیگر داده رد و بدل کنند.
این کار معمولاً با استفاده از یکی از این دو انجام میشود:
- روتر (Router)
- سوئیچ لایه ۳
روتر یا سوئیچ لایه ۳ بستههای داده را از یک VLAN دریافت و به VLAN دیگر هدایت میکند، بدون اینکه جداسازی منطقی شبکه از بین برود.
روتر در واقع نقش مسیردهندهی مرکزی بین VLANها را اجرا میکند و اجازه میدهد ترافیک از یک شبکه منطقی به شبکه منطقی دیگر منتقل شود.
مزایای Inter-VLAN Routing :
وقتی در شبکه از Inter-VLAN Routing استفاده میکنیم، چند قابلیت مهم و کاربردی به دست میآوریم:
- ارتباط بین VLANها :
در حالت عادی VLANها از هم جدا هستند، اما با Inter-VLAN Routing میتوانیم بین آنها ارتباط برقرار کنیم تا سیستمها بدون مشکل اطلاعات رد و بدل کنند. - حفظ جداسازی منطقی :
با وجود برقراری ارتباط، استقلال VLANها همچنان حفظ میشود. یعنی ترافیک هر VLAN همچنان جدا باقی میماند و فقط در صورت نیاز از طریق روتر بین VLANها حرکت میکند. - کنترل دقیق دسترسیها :
Inter-VLAN Routing این امکان را میدهد که با استفاده از ACL یا Policy مشخص کنیم کدام VLAN اجازه دارد با VLAN دیگر تبادل داده داشته باشد.
روشهای پیادهسازی Inter-VLAN Routing:
- Router-on-a-Stick :
در این روش از یک روتر و چند subinterface روی یک پورت فیزیکی استفاده میکنیم.هر subinterface نقش Gateway یک vlan را بر عهده دارند . - SVI (Switched Virtual Interface) :
در سوئیچهای لایه ۳ استفاده میشود.
در این روش عملیات Routing داخل خود سوئیچ انجام میشود و نیازی به روتر نیست.
نکته مهم : در این مقاله قصد داریم از روش Router-on-a-Stick استفاده بکنیم تا ببینیم چگونه میتوان با یک سوئیچ و یک روتر، ارتباط بین چند VLAN را برقرار کرد.
روش Router-on-a-Stick چیست و چطور کار میکند؟
Router-on-a-Stick یکی از سادهترین و کاربردیترین روشهای پیادهسازی Inter-VLAN Routing است . در این روش، پس از ایجاد vlan ها روی سوئیچ، روی روتر برای هر vlan یک subinterface ساخته می شود .
فرض کنید دو VLAN داریم:
- Vlan 2
- Vlan3
در این حالت، روی اینترفیس فیزیکی روتر مثلاً (Gig0/0) دو Subinterface ایجاد میکنیم.روی هر Subinterface هم IP مربوط به Gateway همان VLAN قرار میگیرد.
نتیجه این میشود که روتر بتواند ترافیک VLANها را از هم جدا کرده و بین آنها مسیریابی کند.
آموزش پیکربندی Router-on-a-Stick در شبکههای سیسکو :
خب ما توی این سناریو قصد داریم دو VLAN مجزا ایجاد کنیم و هر PC رو داخل یکی از این VLANها قرار بدیم و بعد با استفاده از روش Router-on-a-Stick، ارتباط بین این دو VLAN را برقرار کنیم
مرحله 1: ایجاد VLANها در سوئیچ :
در اولین گام باید VLANهای موردنیاز را روی سوئیچ تعریف کنیم.
برای این کار وارد محیط CLI سوئیچ میشویم و هر VLAN را همراه با نام آن ایجاد میکنیم.
Switch.tosinso>en
Switch.tosinso#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch.tosinso(config)#vlan 2
Switch.tosinso(config-vlan)#name VLAN2
Switch.tosinso(config-vlan)#exit
Switch.tosinso(config)#vlan 3
Switch.tosinso(config-vlan)#name VLAN3
Switch.tosinso(config-vlan)#exit
در این مرحله، دو VLAN با شمارههای 2 و 3 ایجاد شده و هرکدام یک نام مشخص دریافت میکنند. این کار نقش مهمی در تفکیک منطقی کاربران در شبکه دارد.
مرحله 2:تخصیص پورتهای سوئیچ به VLANها :
بعد از ایجاد VLANها، باید پورتهایی که میزبان (PC) ها به آنها متصل هستند را در VLAN صحیح قرار دهیم. به این کار Access Mode Configuration گفته میشود.
Switch.tosinso>en
Switch.tosinso#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch.tosinso(config)#interface fa2/1
Switch.tosinso(config-if)#switchport mode access
Switch.tosinso(config-if)#switchport access vlan 2
Switch.tosinso(config-if)#exit
Switch.tosinso(config)#interface fa3/1
Switch.tosinso(config-if)#switchport mode access
Switch.tosinso(config-if)#switchport access vlan 3
Switch.tosinso(config-if)#exit
در این سناریو، هر پورت نقش یک دسترسی اختصاصی به VLAN مخصوص خود را دارد.
مرحله ۳ –تنظیم پورت Trunk بین سوئیچ و روتر:
برای اینکه ترافیک چند VLAN بتواند از سوئیچ به روتر منتقل شود، باید پورتی که سوئیچ را به روتر متصل میکند در حالت Trunk قرار بگیرد.
پورت Trunk این امکان را میدهد که چندین VLAN از طریق یک لینک فیزیکی منتقل شوند. این دقیقاً همان چیزی است که در روش Router-on-a-Stick نیاز داریم.
در این سناریو، پورت Gig0/1 سوئیچ به روتر متصل است، پس آن را به حالت Trunk تنظیم میکنیم.
Switch.tosinso>en
Switch.tosinso#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Switch.tosinso(config)#interface gig0/1
Switch.tosinso(config-if)#switchport mode trunk
Switch.tosinso(config-if)#switchport trunk allowed vlan 2,3
Switch.tosinso(config-if)#exit
نکات مهم:
با switchport mode trunk پورت را در حالت Trunk قرار میدهیم.
با allowed vlan مشخص میکنیم که فقط VLANهای 2 و 3 اجازه عبور دارند.
این کار باعث میشود ترافیک مربوط به هر VLAN بدون اختلاط و با تگ مناسب به روتر برسد.
مرحله ۴ – ایجاد subinterface برای هر vlan روی روتر:
در روش Router-on-a-Stick، ما فقط از یک پورت فیزیکی روتر استفاده میکنیم.برای اینکه این پورت بتواند ترافیک چند VLAN را مدیریت کند، روی همان پورت چند Subinterface ایجاد میکنیم.هر Subinterface نقش Gateway یک VLAN را بر عهده دارد.در این سناریو، پورت Gig0/0 روتر به سوئیچ وصل شده است، بنابراین همه Subinterfaceها روی همین پورت ایجاد میشوند.
tosinso.router>en
tosinso.router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
tosinso.router(config)#interface gig0/0
tosinso.router(config-if)#no shutdown
tosinso.router(config-exit)#exit
tosinso.router(config)#interface gig0/0.2
tosinso.router(config-subif)#encapsulation dot1Q 2
tosinso.router(config-subif)#ip address 192.15.6.1 255.255.255.0
tosinso.router(config-subif)#exit
بعد از ساخت subinterface مربوط به vlan 2 حالا باید subinterface مخصوص vlan 3 را هم ایجاد کنیم . دقیقا همان مراحل قبلی را انجام میدهیم اما با شماره vlan متفاوت .
tosinso.router(config)#interface gig0/0.3
tosinso.router(config-subif)#encapsulation dot1Q 3
tosinso.router(config-subif)#ip address 192.15.10.1 255.255.255.0
tosinso.router(config-subif)#exit
نکته :IP هایی که روی Subinterfaceها قرار داده شدهاند یعنی:
192.15.6.1 → Gateway VLAN 2
192.15.10.1 → Gateway VLAN 3
این دو آدرس نقش مسیردهندهی اصلی بین دو VLAN را در روتر ایفا میکنند.
مرحله ۵ – تنظیم آدرس IP روی کلاینتها
| دستگاه | VLAN | IP Address | Subnetmask | Gateway |
| PC0 | Vlan_2 | 192.15.6.3 | 255.255.255.0 | 192.15.6.1 |
| PC1 | Vlan_3 | 192.15.10.3 | 255.255.255.0 | 192.15.10.1 |
نکات مهم :
IP هر کلاینت باید در همان رنج آدرس VLAN مربوطه باشد.
Gateway هر کلاینت باید همان IP باشد که روی Subinterface روتر تنظیم کردیم.
اگر Gateway اشتباه تنظیم شود، ارتباط بین VLANها برقرار نخواهد شد.
مرحله ۶ – تست ارتباط
در پایان، از PC0 به PC1 دستور Ping بزن:
اگر همهی مراحل بهدرستی انجام شده باشند، پاسخ Ping دریافت میشود.این یعنی Inter-VLAN Routing به روش Router-on-a-Stick با موفقیت راهاندازی شده است.
جمعبندی و نکات نهایی
ما توی این اموزش با مفهوم Inter-VLAN Routing و نحوهی پیادهسازی اون به روش Router-on-a-Stick در شبکههای سیسکو آشنا شدیم.
در این روش، برای هر VLAN یک Subinterface داخل روتر میسازیم و همون میشه Gateway اون .VLAN روتر هم مثل یک مسیردهنده مرکزی بین VLANها عمل میکنه و ترافیک رو بینشون رد و بدل میکنه.
مزیت بزرگ Router-on-a-Stick اینه که هم کمهزینه است، هم پیادهسازیش راحتتره، و برای محیطهای آموزشی و سناریوهای کوچیک واقعاً گزینه خوبی محسوب میشه.
البته اگر شبکهمون بزرگتر باشه یا ترافیک زیادی داشته باشیم، معمولاً میریم سراغ سوئیچهای لایه ۳ و روش SVI، چون مسیریابی داخل خود سوئیچ خیلی سریعتر انجام میشه.
اگر این مراحل رو توی Packet Tracer مرحلهبهمرحله تمرین کنید، خیلی راحت متوجه میشید که VLANها چطور از هم جدا میشن و چطور میتونیم بینشون ارتباط برقرار کنیم.
در نهایت، تسلط بر Inter-VLAN Routing یکی از مهارتهای پایهای برای هر متخصص شبکه است که در مسیر یادگیری CCNA بسیار کاربرد دارد.
بسیار مفید بود