مقدمه :
برای اینکه بتونیم کاربرد و ماهیت Vlan رو درک کنیم اول باید به طور دقیق بدونیم LAN چیه و چه ویژگی هایی داره ، پس یه گریز میزنیم به Network plus تا ببینیم چی به چیه .
Local Area Network یا به اختصار (LAN) شبکه ای که در حد چند ساختمانه ، بستر ارتباطی متعلق به خودمونه ، هزینه ای بابت استفاده از اون پرداخت نمیکنیم (استیجاری نیست) ، در این شبکه پهنای باند بالایی داریم و Broadcast مجازه .
در شبکه های LAN تمامی Client ها در یک Broadcast Domain قرار میگیرن و اگر یک سیستم اقدام به ارسال اطلاعات کنه ، اون اطلاعات به دست تمامی اعضا شبکه میرسه .
خب ارسال اطلاعات همگانی یه قابلیته اما توی هر شبکه ای ! به عنوان مثال توی یک شرکت اطلاعات واحد مالی نباید برای همه قابل دسترس باشه یا مثلا واحد حراست نیازی به اطلاعات حسابداری نداره .
خب ما باید چیکار کنیم ؟!
میتونیم بیایم برای هر واحد یک Switch مجزا بزاریم مثلا تمام سیستم های واحد حراست به یک Switch ، سیستم های واحد مالی به Switch دیگه و همین کار رو برای تمامی واحد ها انجام بدیم . که به صورت فیزیکی ارتباطی با هم نداشته باشن ، اما این کار هزینه بالایی برای ما داره و تا زمانی که یک قابلیت تحت عنوان Virtual LAN وجود داره ، اصلا منطقی نیست .
VLAN :
Virtual Local Area Network یک متود لایه دویی هست که به ما امکان جداسازی مجازی چندین LAN ، روی یک رابط حقیقی (ٍEthernet ,Wireless , etc ) میده .
Vlan یک قابلیت کنترلی هست که در manage Switch ها وجود داره و به صورت مجازی (Virtual) این اجازه رو به ما میده که بتونیم به پورت ها برچسب بزنیم. مثلا بگیم پورت های (۴/۳/۲/۱) با هم در یک Broadcast Domain تحت عنوان (Vlan10) و پورت های (۱۲/۸/۷/۵) در یک گروه مجزا تحت عنوان (Vlan20) باشن . با این کار به سیستم دستور میدیم ، پورت هایی که دارای لیبل یکسان هستن رو داخل یک VLAN قرار بده و از ارتباط این گروه با بقیه اعضا شبکه جلوگیری کن .
نکته : Name در Vlan ارزشی نداره و صرفا برای علامت گذاری و مشخص کردن کاربرد اون Vlan استفاده میشه
اینجا اگر اطلاعاتی ارسال بشه فقط اعضای همون VLAN میتونن دریافت کنن و بسته ها دیگه به دست همه نمیرسه .
Vlan ویژگی تحت عنوان (Location Independency) هم داره که به ما میگه من فارغ از مکان کاری میکنم که تمامی اعضا یک Vlan با هم ارتباط داشته باشن . یعنی اگر ما سه تا Switch داشته باشیم و بین این ها توسط (Trunk Port) ارتباط برقرار باشه ، هرکدوم از پورت های عضو VLAN در سوییچ ۱ اقدام به ارسال اطلاعات کنن ، توسط تمام اعضا VLAN در سوییچ های ۲ و ۳ هم قابل دریافت هست .
نکته : پورتی که به Client در شبکه متصل میشه بهش میگیم (Access) و پورتی که Vlan های ما رو انتقال میده میشه (Trunk) ا
TRUNK PORT :
پورت ترانک یا انشعاب اصلی از طریق دو پروتوکل ISL و ۸۰۲٫۱Q بسته ها رو
Encapsulate (کپسوله سازی) و De-capsulate (بازگشایی کپسول) میکنه.
چند مورد مهم رو باید یادآوری کنم :
۱ – توی Router ها به ازای هر پورت یک Broadcast Domain مجزا وجود داره و برای اجرای Vlan باید برای پورت های مورد نظر یک Bridge بسازیم و اونها رو توش اد کنیم .
۲ – در Switch تمامی پورت ها عضو یک Broadcast Domain هستن و با ساخت Vlan پورت هایی که برچسب Vlan ID رو دارن ، ارتباط مستقیم با بقیه اعضا برقرار نمیکنن .
۳ – از اونجایی که Vlan لایه دویی کار میکنه ، دقیقا مثل یک Interface میشه ازش استفاده کرد . Vlan دقیقا مثل Interface ها دارای Name,ID,MTU و… هست و توسط Arp قابل شناسایی هست .
IEEE802.1Q رایج ترین و پر استفاده ترین پروتوکل encapsulation (کپسوله سازی) استاندارد هست که درج یک شناسه (Identifi) چهار بایتی رو توی هدر Ethernet تعریف میکنه .
۴ – هر Vlan به عنوان یک زیر شبکه جدا درنظر گرفته میشه ، یعنی به صورت پیش فرض یک Host در Vlan10 نمیتونه با Host دیگه ای که توی Vlan20 قرار داره ارتباط بگیره حتی اگه هر دو درون یک Switch ایجاد شده باشن .
۵ – وقتی که یک Vlan بیشتر از یک Switch گسترش پیدا کنه ، ارتباط بین Switch و Router باید به یک Trunk تبدیل بشه و از این طریق بسته ها برچسب گذاری میشن تا نشون داده بشه که کدوم بسته متعلق یه کدوم Vlanهست .
۶ – یک Trunk توانایی حمل چندین Vlan رو داره .
۷ – استاندارد IEEE 802.1Q شناسه های VLAN رو با موارد استفاده خاص رزرو کرده و شناسه های VLAN نباید توی تنظیمات VLAN عمومی (Public) استفاده بشن .
Q-in-Q :
استاندارد ۸۰۲٫۱Q فقط توانایی انتقال یک Vlan Header رو داره ، از طرفی Q-in-Q انتقال چندین Vlan header رو برای ما مجاز میکنه
interface vlan/
add name=vlan1 vlan-id=11 interface=ether1
add name=vlan2 vlan-id=12 interface=vlan1
کد : اگر بسته ای از طریق Vlan2 ارسال بشه ۲ تگ Vlan به سربرگ Ethernet (12و۱۱) اضافه میشه .
کانفیگ Vlan برای روتر های R2,R4 :
_ توی این مرحله به Vlan های خودمون IP میدیم :
_ اگر مراحل بالا رو به درستی انجام داده باشید ، توی این مرحله میتونید از دو روتر ، روتر مقابل رو پینگ کنید .
– برای اطمینان از اینکه تنظیمات VLAN به درستی کار می کنه، سعی کنید R1 رو از R2 پینگ کنید. اگر زمان پینگ ها به پایان برسه، VLAN ها با موفقیت ایزوله شدن .
مسیریابی InterVLAN :
اگر Vlan های جدا روی یک Switch پیاده بشن ، در این صورت یک Router برای ارتباط بین Vlan ها نیاز هست . Switch به دلیل اینکه توی لایه ۲ کار میکنه ، فقط از Ethernet Header برای ارسال استفاده میکنه و هدر IP رو برسی نمیکنه . بنابر این باید از Router به عنوان دروازه ای برای هر Vlan استفاده کنیم . بدون روتر میزبان قادر به برقرار ارتباط خارج از Vlan نیست .
مسیریابی که در بین Vlan های بالا استفاده شد inter-VLAN communication نامیده میشن .
پیکربندی در اکثر سوییچ ها به شدت ساده هست اما باید براش تعریف کنیم که کدوم پورت ها عضو Vlan اهستن و یک پورت Trunk ، تعریف کنیم که بتونه فریم های برچسب گذاری شده رو بین Switch و روتر حمل کنه .
ساخت Vlan Interface :
آدرس های IP رو به Vlan ها اضافه میکنیم .
RouterOS /32 و آدرس های IP بدون شماره
در RouterOS برای ایجاد یک Tunnel نقطه به نقطه با آدرس ها ، باید از آدرسی با Mask /32 استفاده کنیم .
اینجا ما دو روتر B,A رو داریم که هرکدوم به ترتیب از شبکه های ۱۰٫۲۲٫۰٫۰/۲۴ و۱۰٫۲۳٫۰٫۰٫۲۴ هستن و برای اتصال این روتر ها با استفاده از Vlan به عنوان یه حمل کننده ،مراحل زیر رو انجام میدیم :