مفاهیم Vlan
در این مبحث میخوایم راجع به مفاهیم Vlan و راه اندازی اون صحبت کنیم.
قبل از اینکه بریم detail تر در مورد اینموارد صحبت کنیم اگه کلی بخوام بگم که vlan چیه یعنی اینکه من میتونم یه سوئیچ فیزیکی رو به چندین سوئیچ مجازی تقسیم بکنم. یعنی سوئیچ های مختلف با Mac table های مختلف. به چه دردی میخوره؟ خب هزینه ها رو میاره پایین. مثلا برای دپارتمان های sales و management میتونم دوتا سوئیچ مجزا داشته باشم(یعنی برای هر دپارتمان یک سوئیچ) و بین این سوئیچهام ارتباطی وجود نداشته باشه.یعنی دوتا broadcast domain کاملا مجزا از هم. یا میتونم همینکارو با vlan انجام بدم مثل تصویر پایینی در شکل بالا. یه سوئیچ داشته باشم و اینو به دوتا vlan تقسیم کنم برای دپارتمانهای sales و management و باز این دوتا از همدیگه برادکست دامین هاش جدا میشه. پس دقت کنید تنها تکنولوژی که میتونه برادکست دامسن رو تو لایه 2 خوردش کنه تکنولوژی vlan هستش. یجورایی میشه گفت که vlan با سوئیچ فیزیکی فرقی نمیکنه. شما هرچی روکه فکر میکنید که آیا مثلا این سناریو در vlan شدنی هست یا نه اینکارو بکنید. بگید اصلا vlan هیچی. من یه سوالی دارم بین vlan1 و 2 و 3 . بگین 3 تا سوئیچ فیزیکی که ازهم کاملا جدان و ارتباطی باهم ندارن. اینطوری میتونید concept هارو ازهم جدا کنید و درکش رو برای خودتون راحت کنید. یه کار دیگه ای هم تو حالت vlan میشه انجام داد که توی سوئیچ های فیزیکی نمیشه انجام داد. تا اینجا قابلیتهایی که از vlan بهتون گفتم این بود که هزینه های شمارو میاره پایین. یعنی میشه همین سناریوی vlan رو با سوئیچ فیزیکی هم انجام داد.
ولی میتونم جلوتر در مورد سناریوهایی صحبت کنم که با سوئیچ فیزیکی قابل حل نیستن. پس اگه بخوام تعریف کلی ارائه کنم میگم vlan یک راه منطقی برای گروه بندی کلاینت ها و source هایی هستش که به پورتهای سوئیچ وصل میشن و در واقع قراره ما برادکست دامین های بزرگمون رو توی لایه 2 بشکونیم به برادکست دامین های کوچکتر(یعنی vlan های مختلف)
به این شکل بالا دقت کنید. فرض کنید من قسمت IT دارم ، QC دارم و Sale دارم و Management
الان این قسمتها از طریق روتر(یه ارتباط لایه 3 یی) باهم ارتباط دارن. چرا؟ چون احتمال زیاد بین این برادکست دامین های مختلف من میخوام با policy ارتباط برقرار کنم. یعنی چی؟ یعنی اگه من این روتر رو بردارم(چرا باید هزینه اضافی بکنم؟) یا بعبارتی دیگه روتر رو برمیدارم و بین همه اینا ارتباط برقرار میکنم و اینا لایه 2 یی همه همدیگرو میبینن ولی وقتی من اینارو به 4 تا برادکست دامین مختلف تقسیم میکنم و ارتباطشون رو از طریق یک روتر برقرار میکنم وقتی این ارتباط از لایه 3 رد میشه من میتونم فیچِرهای امنیتی مثل Access list داشته باشم. پس میتونم مدیریت شده بهش نگاه کنم. مثلا بگم QC میتونه قسمت sales رو ببینه ولی قسمت management رو نمیتونه ببینه و حتی میتونم بگم IT میتونه همه اینارو ببینه ولی با management میتونه فقط ارتباط http داشته باشه. همه چیز دست خودمونه. میتونم روش policy بزارم. پس الان من با سوئیچ های فیزیکی اینکارو انجام دادم.
میخوام یه سناریویی رو مطرح کنم که با سوئیچ فیزیکی نمیشه انجام داد.فرض کنید یه ساختمون 4 طبقه دارم و توی هر طبقه اینارو چیدم. IT , QC , sales , management . توی هر طبقه بصورت فیزیکی 20 نفر میتونن بشینن. یعنی فضایی که هر طبقه بمن میده 20 نفر هستش. فرض کنید قسمت management 5 نفر هستن ، قسمت sales 15 نفر هستن ، قسمت IT 19 نفر هستن و قسمت QC هم 15 نفر هستن. اتفاقی که میفته اینه که قراره 5 نفر به IT اضافه بشن. این 5 نفر تعداد نفرات IT رو میکنه 24 نفر. همین باعث میشه که توی طبقه IT اینا جا نشن. خب من فیزیکی میتونم اینارو ببرم تو طبقه QC یا sales یا management بنشونم ولی چطوری؟ مثلا وصلشون کنم به سوئیچ management ؟ خب اینجوری که اون policy هایی که میخوام دیگه اعمال نمیشه و اینا دارن میرن تحت policy های management میشینن. روهمین حساب vlan میتونه این سناریو رو برامون حلش کنه و دیدید که سوئیچ فیزیکی این قابلیت رو نداشت.
تو شکل بالا من تو vlan میتونم بیام بجای اینکه سناریوم رو اینطوری(طبق سناریوی قبل) تعریف کنم ، بیام بگم برای این 4 تا دپارتمان من 4 تا vlan مختلف تعریف میکنم و vlan هارو روی سوئیچ های مختلف پخش میکنم. یعنی مثلا این سوئیچ های قسمت بالای شکل vlan1 داره vlan2 داره. حالا دقیقا اتفاقی که میفته اینه که من فقط کافیه اون 5 نفرِ جدید IT رو ببرم توی طبقه management بنشونم ولی 5 تا پورت سوئیچ management رو میبرم توی vlan مربوط به IT قرار میدم و جلوتر تو قسمت Routing درباره Inter Vlan Routing و ارتباط بین vlanها صحبت خواهیم کرد. میتونم باز یک روتر رو تو نتورکم داشته باشم و ارتباط بین اینهارو از طریق روتر برقرار کنم. فکر میکنم تا اینجا مفاهیم vlan رو که چطوری میتونه یکسری اهداف رو برای من توی یک سازمان براورده کنه متوجه شدید.
اصولا vlan ها به دو دسته تقسیم میشن (normal vlan ، extended vlan)
از (1-1005) رو میگن normal vlan
توی normal vlan به vlan1 میگن Administrative vlan یا default vlan . vlan1 قابلیت delete شدن و rename شدن نداره. ازونطرف vlan های 1002 تا 1005 هم vlan های سیستمی هستن. یعنی اگه من بخوام vlan اضافه کنم یا حذف کنم از vlan شماره 2 تا 1001 برای من آزاد هستش. البته بعدا به این رِنج (1005 تا 4096) روهم اضافه کردن. حالا جلوتر میخوایم راجع به پروتکل vtp صحبت کنیم. یکی از تفاوتهای این دوتا اینه که مثلا vlan های Extended با vtp ورژن 2 Advertise نمیشن.
حالا با توجه به شکل بالا کاری که میخوایم تو کانفیگ vlan انجام بدیم اینه که با دستور vlan vlan-id بیایم vlan های مختلف رو توی سازمانمون بسازیم و میتونیم با دستور name name به این vlan ها اسم بدیم(البته optional هستش). اسم vlan اصلا اهمیتی نداره. من ممکنه توی یه سوئیچ vlan2 رو بهش اسم بدم vlan IT و توی یه سوئیچ دیگه vlan2 رو اسمش رو بزارم QC . این vlan id یا vlan number هستش که اهمیت داره نه vlan name . این فقط برای اینه که منه Administrator یه دیدی داشته باشم که الان دارم چه management یی رو توی سازمانم راه میندازم. در نهایت وقتی توی سوئیچ vlan های مختلف رو ساختیم حالا باید بریم اینترفیس های سوئیچ رو عضو vlan های مختلف کنیم. اول اینترفیس رو میبریم تو مد access با این دستور : switchport mode access چون اینترفیس access رو میتونم عضو یه vlan کنم و بعد با این دستور : switchport access vlan vlan-id اینرو عضو اون vlan میکنیم. مثلا میتونم بگم vlan2 رو name ِش رو IT بزارم بعد برم توی اینترفیس fa0/1 بزنم switchport mode access و بعد هم switchport access vlan 2 و این اینترفیس رو عضو vlan2 کنم.
با دستور show vlan brief میتونیم یکسری اطلاعات راجع به vlan رو ببینیم.
با دستور show mac-address-table vlan vlan-id میتونیم مک آدرسهای مربوط به اون رو vlan رو ببینیم.
دقت کنید که کانفیگهای مربوط به vlan یعنی این قسمت : (vlan vlan-id و name name) توی NVRAM ذخیره نمیشن. یعنی اگه شما show run بگیرید کانفیگهای مربوط به vlan id و vlan name رو نمیبینید. اینا کجا هستن؟ اینا میرن توی Flash توی فایلی به اسم vlan.dat میشینن.(Flash:vlan.dat)
پس دقت کنید که (show vlan brief) میتونه همه ازلاعات رو بهمون بده چون میره از توی Flash:vlan.dat میخونه ولی show run نمیتونه vlan id و vlan name رو به شما نشون بده. حالا این صحبتهایی که کردیم رو بریم بصورت عملی ببینیم.
توی این سناریو 4 تا کامپیوتر رو به یه سوئیچ وصل کردیم و در مجموع یک برادکست دامین هستش و برای همین طراحی ip مون طوریه که همه رو توی یک شبکه قرار دادیم و در نتیجه همه اینا باید بتونن همدیگرو ping کنن. مثلا از کامپیوتر(.10) میایم ping میکنیم (.11) و از (.12) میام ping میکنیم (.13) رو و میبینیم که ping برقراره.
حالا میریم داخل سوئیچ و جدول Mac table رو میبینیم :
تو این شکل نشون میده که از fa0/1 تا fa0/4 بصورت Dynamic هر کدوم مک آدرس خودش رو روی vlan1 لرن کرده.
حالا میخوام توی این سوئیچ دوتا vlan بسازم(مثلا vlan2 و vlan3) و کامپیوترهای (.10) و (.11) رو بزارم تو vlan2 و کامپیوترهای (.12) و (.13) رو بزارم توی vlan3 . نتیجه اینه که کامپیوترهای (.10) و (.11) میتونن همدیگرو ping کنن و کامپیوترهای (.12) و (.13) هم همدیگرو ping کنن.
قبل از هر کاری با دستور show vlan brief میخوایم وضعیت همین الانه دیوایسمون رو مانیتور کنیم.
خب این شکل بالا میگه که default vlan مون vlan1 هستش و تمامی اینترفیس های by default سوئیچ عضو vlan1 هستن.
حالا میریم تو سوئیچ و vlan2 و vlan3 رو میسازیم :
اومدیم vlan2 رو ساختیم و براش یه name در نظر گرفتیم ولی برای vlan3 اسمی درنظر نگرفتیم
حالا دوباره یه show vlan brief میگیریم :
تصویر بالا داره داره نشون میده که vlan2 و vlan3 ایجاد شده و vlan2 اسمش IT هستش و اسم vlan3 هم VLAN0003 هستش و برای vlan3 خودش یه نامی براش انتخاب کرده ولی الان هیچکدوم ازین vlan ها هیچ عضوی ندارن. الان میخوایم fa0/1 و fa0/2 رو عضو vlan2 کنیم :
حالا دوباره یه show vlan brief میگیریم و میبینیم که fa0/1 و fa0/2 عضو vlan2 شدن
حالا میریم fa0/3 و fa0/4 رو عضو vlan3 میکنیم و بعد دوباره show vlan brief میگیریم و میبینیم که fa0/3 و fa0/4 عضو vlan3 شدن
حالا یه show run میگیریم تا ببینیم که کدوم کانفیگها توی NVRAM ذخیره میشه و کدوم نمیشه
عضویت vlan ها توی NVRAM ذخیره میشه(مثلا switchport access vlan 2) ولی اصلا vlan2 یا vlan3 یا vlan name که IT گذاشته بودیم وجود نداره در دستور show run. اینجا vlan ها رو نمیتونید ببینید و همونطور که قبلا گفته بودم اگه بزنید dir Flash میبینید که یه فایلی هستش به اسم vlan.dat که اینجا قرار دارن.
حالا امکان داره خیلی وقتا بخواید یه سوئیچی رو همه کانفیگهاشو پاک کنید و خامش کنید و از اول صفر بیاد بالا . میتونید با این دستور اینکارو انجام بدید : erase startup-config و کانفیگهای startup رو پاک کنید و اینجوری NVRAM رو خالی کردید و بعد میتونید با این دستور فایل vlan.dat روهم پاک کنید : delete flash.vlan.dat و بعدش کافیه که سوئیچتون رو reload کنید و دستگاهتون بدون کانفیگ میاد بالا و اگه یه show vlan brief بگیرید میبینید که دیوایستون خام هستش. حالا اگه همه کارها رو انجام بدید ولی فایل vlan.dat رو پاک نکنید و در اینحالت show vlan brief بگیرید میبینید که vlan هاتون پاک نشدن
خب تا اینجا تونستیم کامپیوترهای (.10) و (.11) رو بزاریم توی vlan2 و (.12) و (.13) رو بزاریم توی vlan3 . نتیجه چی میتونه باشه؟
الان از (.10) باید بتونم (.11) رو ping کنم و بلعکس چون باهم توی یه vlan قرار دارن ولی از (.10) نباید بتونم (.12) و (.13) رو ping کنم ولی از (.12) باید بتونم (.13) رو ping کنم و بلعکس.
Ping از 10 به 11
ping از 12 به 13
ping از 10 به 12
حالا میام روی سوئیچ show mac-address-table میگیرم :
در اینجا میبینید که دوتا مک آدرس اینترفیسهای fa0/1 و fa0/2 رو روی vlan2 یاد گرفته و دوتا مک آدرس اینترفیسهای fa0/3 و fa0/4 رو روی vlan3 لرن کرده و Mac table هایی که برای vlan ها درنظر گرفته از همدیگه جدان.
حالا سوالم اینخ که آیا میتونم دوتا vlan رو روی یک سوئیچ رای کلاینهاش ip آدرس یکسان درنظر بگیرم؟ اگه یادتون باشه قبلا گفتم هرجا تو بحث مربوط به vlan براتون شبهه پیش میاد فراموش کنید vlan رو و دوتا سوئیچ جدا از هم درنظر بگیرید. الان سوال اینه که vlan2 و vlan3 میتونن رِنجِ ip یِ یکسان داشته باشن؟ مثلا اگه (.10) رو روی vlan2 دارم میتونم (.10) رو روی vlan3 هم داشته باشم؟
حالا میگم vlan2 رو فراموش کنید و دوتا سوئیچ مجزا درنظر بگیرید. حالا دوتا سوئیچ جدا و مستقل ازهم دارید و اینا میتونن آیا میتونن ip یِ یکسان داشته باشن؟ بله. پس هیچ مشکلی تو بحث vlan هم نیست ولی مشکلش توی ip های یکسان چیه؟ مشکلش اینه که اگه فردا روزی من بخوام با استفاده از روتر و بحثهای Routing بین اینا(vlan ها) ارتباط برقرار کنم ، اگه نتورکهای یکسان داشته باشم نمیتونم براحتی ارتباط لایه 3 یی رو برقرار کنم. آدرس ip هاتون باهمدیگه overlap میده. اگه نخواد بین vlan ها ارتباط لایه 3 یی برقرار شه مشکلی وجود نداره چون vlan ها از هم جدان و برادکست دامینها از هم مجزاست و مشکلی نیست ولی اگه بخواید بین vlan ها با استفاده از یه روتر ارتباط لایه 3 یی برقرار کنید اونوقت عملا به مشکل بر میخورید. پس بهتره که اینو از الان یاد بگیرید که وقتی vlan های مختلف رو ایجاد میکنیم چون طراحی برادکست دامینهامون از هم کاملا مجزاست سعی میکنیم که ip هامون روهم تا حد ممکن مستقل از هم درنظر بگیریم که بعدا تو بحثهای Routing برامون مشکلی بوجود نیاره
نویسنده
مهندس جواد هدایتی
دیدگاهتان را بنویسید
برای نوشتن دیدگاه باید وارد بشوید.