موضوع : VLAN Virtual Local Area Networks
در نظر بگیرید که شما در شرکتی کار می کنید که سه واحد فروش ،انبار ،حسابداری دارید.اگر تمامی
این سه واحد را داخل یک lanقرار دهیم می بینید که تمامی آنها پیغامهای Broadcastهمدیگر رو دریافت
می کنند و این کار یک سربار اضافی بر روی منابع سیستم می باشد.یک راه حل بسیار آسان برای رفع
این مشکل این هست که ما lanهای مجازی تعریف کنیم.یعنی در اینجا ما سه lan مجازی درست
میکنیم و واحد های فروش و انبار و حسابداری را در هر کدام از آنها قرار میدهیم.به این ترتیب broadcast
بخش فروش به بخش انبار و حسابداری نمی رسد و بلعکس.Vlanبندی فقط برای کاهش broadcast
domain نیست بلکه برای امنیت و در برخی موارد کاهش هزینه ها هم کاربرد دارد.
خب با سناریوی زیر شروع می کنیم:
میخوایم vlanهای 10 و20 و 30 رو بسازیم:
به صورت پیش فرض ما 5 vlan داریم:
Vlan1که به صورت پیش فرض تعریف می شود و تمام اینترفیسها سویچ در آن قرار دارد.
و چهار vlanدیگر که به صورت زیر تعریف شده اند.
1002 fddi-default active
1003 token-ring-default active
1004 fddinet-default active
1005 trnet-default active
خب برای ساخت vlanبه مد configure terminalمیریم و به صورت زیر عمل میکنیم:
Switch(config)#vlan 10
Switch(config-vlan)#name accounting
Switch(config)#vlan 20
Switch(config-vlan)#name anbar
Switch(config)#vlan 30
Switch(config-vlan)#name sale
خب حالا با دستور show vlan brief می تونیم vlanهایی رو که ساختیم ببینیم:
1 default active Fa0/1, Fa0/2, Fa0/3, Fa0/4
Fa0/5, Fa0/6, Fa0/7, Fa0/8
Fa0/9, Fa0/10, Fa0/11, Fa0/12
Fa0/13, Fa0/14, Fa0/15, Fa0/16
Fa0/17, Fa0/18, Fa0/19, Fa0/20
Fa0/21, Fa0/22, Fa0/23, Fa0/24
Gig1/1, Gig1/2
10 accounting active
20 anbar active
30 sale active
1002 fddi-default active
1003 token-ring-default active
1004 fddinet-default active
1005 trnet-default active
میبینید که ما 3 vlanساختیم با نامهای accounting،anbar،sale.
نام گذاریها فقط برای فهم بیشتر هست و در عمل ما با شماره vlanها کار داریم.
حالا نوبت به این میرسه که ما بگیم کدوم اینترفیس روتر مربوت به کدامvlanهستش.
قبلا هم گفتیم که تمام اینترفیسها به صورت پیش فرض داخل vlan1هستند .و هر اینترفیس میتونه داخل یک
vlan باشه .
Switch(config)#int fa 0/1
Switch(config-if)#switchport access vlan 10
خب ما اینترفیس 0/1رو به vlan10نسبت دادیم.و به همین صورت برای بقیه اینترفیسها ادامه میدیم.
Switch(config-if)#int fa 0/2
Switch(config-if)#switchport access vlan 20
Switch(config-if)#int fa 0/3
Switch(config-if)#switchport access vlan 30
حالا دستور show vlan briefرو اجرا می کنیم:
Switch#show vlan brief
VLAN Name Status Ports
—- ——————————– ——— ——————————-
1 default active Fa0/4, Fa0/5, Fa0/6, Fa0/7
Fa0/8, Fa0/9, Fa0/10, Fa0/11
Fa0/12, Fa0/13, Fa0/14, Fa0/15
Fa0/16, Fa0/17, Fa0/18, Fa0/19
Fa0/20, Fa0/21, Fa0/22, Fa0/23
Fa0/24, Gig1/1, Gig1/2
10 accounting active Fa0/1
20 anbar active Fa0/2
30 sale active Fa0/3
1002 fddi-default active
1003 token-ring-default active
1004 fddinet-default active
1005 trnet-default active
Inter-VLAN Routing
خب ما اینجا سه شبکه مستقل از هم داریم .
حلا اگر بخواهیم بین اینها روتینگ داشته باشیم باید چکار کنیم.یا به عبارتی دیگر برای تبادل ترافیک
بین اینها با ید چه کرد.
برای این کار باید از Trunkاستفاده کنیم.می توانیم ترانک را با استفاده از 2 پروتکل پیاده سازی
نماییم:
1-Inter-Switch Link (ISL)
2-802.1q (Dot1q)
ISL اختصاصی ccna/">سیسکو و don1qهم استاندارد IEEE میباشد.
در دوره CCNA شما نیاز دازید که با نحوه عملکرد هردو و چگونگی پیکر بندی هر کدام آشنا بشوید.
هدر ISLبه صورت زیر است:
Islتمام فریم را encapsulate میکند در داخل 26 بایت هدر و 4 بایت Freme Check Sequence
هدر 802.1q:
802.1qتمام بسته را encapsulate نمی کند و یک فیلد 4 بایتی به فریم اصلی اضافه می کند.
این 32 بیت هم به 4 بخش تبدیل می شود:
the first 16 bits being the TPID, the next 3 being the PCP, followed by the CFI and lastly the VID.
The Tag Protocol Identifier (TPID) is a 16-bit field. It is set to a value of 0×8100 in order to identify the frame as an IEEE 802.1Q-tagged frame.
The Priority Code Point (PCP) is a 3 bit field that refers to the IEEE 802.1p priority. The field indicates the frame priority level which can be used for the prioritization of traffic. The field can represent 8 values (0 through 7).
The Canonical Format Indicator (CFI) is a 1 bit value; on or off that determines rather or not the MAC address is is in noncanonical format.
The Canonical Format Indicator (CFI) is a 1 bit value; on or off that determines rather or not the MAC address is is in noncanonical format.
The VLAN Identifier (VID) is a 12-bit field. It uniquely identifies the VLAN to which the frame belongs. The field can have a value between 0 and 4095.
خب برای روتینگ بین این vlanها ما به یک روتر نیاز داریم .بین روتر و سویچ یک ترانک ایجاد میکنیم
برای انتقال ترافیک vlanها به روتر و انجام یک سری تنظیمات دیگر در روتر.
خب به سناریوی بالا یک روتر اضافه می کنیم.
خب تمامی مراحل بالا روکه برای ایجاد vlanبود + قرار دادن پورتها در هرکدام از vlanها رو انجام میدیم.
در سویچ اینترفیسی که به روتر وصل هست رو به عنوان ترانک قرار می دیم به صورت زیر:
Switch(config)#int fa 0/4
Switch(config-if)#switchport mode trunk
حالا میریم برای تنظیمات روتر .
در روتر اینترفیسی که به سویچ خورده را با دستور no shutdownروشن می کنیم.
سپس برای هرکدام از vlanها یک هینترفیس مجازی میسازیم و مشخص میکنیم که encapsulateچه
باشد “dot1q یا ISL” و مربوط به کدام vlan است و سپس در رنج همان vlanبه sub interface آی
پی میدیم.
Router(config)#int fa 0/0
Router(config-if)#no shutdown
Router(config-if)#exit
Router(config)#int fa 0/0.10
Router(config-subif)#
%LINK-5-CHANGED: Interface FastEthernet0/0.10, changed state to up
%LINEPROTO-5-UPDOWN: Line protocol on Interface FastEthernet0/0.10, changed state to up
Router(config-subif)#encapsulation dot1Q ?
<1-1005> IEEE 802.1Q VLAN ID
Router(config-subif)#encapsulation dot1Q 10
Router(config-subif)#ip add
Router(config-subif)#ip address 192.168.1.1 255.255.255.0
برای بقیه vlanها هم همینکار رو تکرار می کنیم اما با sub interfaceمتفاوت .مثلا برای Vlan 20از
Fa 0/0.20و برای vlan 30از fa 0/0.30استفاده می کنیم.
کار تموم شد حالا از هر کدام ازpc ها به دیگری پینگ بزنیم ارتباط برقرار هستش.