vxlan

آشنایی با مفهوم VXLAN

با توجه به محدودیت های VLAN که در شبکه های بزرگ و پرترافیک که ۱۲ بیت شناسه VLAN برای آدرس دهی کافی نیست به معرفی تکنولوژی Virtual Extensible LAN ) VXLAN) می پردازیم و مزایای آن را مطرح می کنیم . VXLAN در واقع یک نوع Encapsulation ترافیک لایه 2 ای در لایه 3 و بر روی بستر IP بوده و اساس کار آن ارسال مالتیکست می­باشد. همانطور که از نام آن پیداست قرار است که همان کارایی VLAN را داشته باشد اما با قدرت انعطاف بیشتر و محدودیت های کمتر .

در مقایسه با VLAN تکنولوژی VXLAN مزایای زیر را خواهد داشت:

  • قابلیت انتقال و جابجایی VLAN بر روی سگمنت مشترک و در نتیجه جابجایی شبکه های لایه 2ای مشتریان از یک شبکه به شبکه دیگر

  • گستردگی آدرس دهی بسیار بیشتر از VLAN زیرا VLAN از یک آدرس 12 بیتی استفاده میکند که امکان تولید 4096 سگمنت برای ما فراهم می کند در حالی که VXLAN از یک آدرس 24 بیتی استفاده کرده و امکان آدرس دهی 16 میلیون سگمنت را برای ما فراهم می­کند.

  • کارایی و بازدهی بیشتر نسبت به VLAN داشته زیرا در مدل VLAN ما درگیر پروتکل STP بوده و بسیاری از مسیرهای ما به خاطر وجودLOOP بلاک شده و تقریباً نیمی از ظرفیت شبکه ما استفاده نمی­گردد و این درحالیست که با معماری VXVLAN ارسال ترافیک لایه 2 ای ما بر روی بستر IP بوده و به دلیل قابلیت های Load Balancing بر رویIP و استفاده همزمان از تمامی لینک ها، کارایی شبکه بسیار بیشتر می ­باشد.

آموزش راه اندازی VXLAN در سودار

فرض کنید در شکل زیر قصد داریم بین دو روتر soodar1 , soodar3 تونل vxlan بزنیم و user1 , user2 بتوانند از طریق این تونل با یکدیگر ارتباط داشته باشند :

Vxlan6

ایجاد اینترفیس nve

ایندکس اینترفیس های vxlan می تواند از ۰ تا ۱۰۲۳ باشد . در واقع در هر روتر حداکثر می توان ۱۰۲۴ اینترفیس vxlan داشت . با دستور زیر ابتدا یک اینترفیس vxlan ایجاد کنید :

soodar1(config)# interface nve 10

تعیین مبدا تونل

در این بخش آدرس IP مبدا تونل که همان ip اینترفیس روتر است که قرار است مبدا تونل باشد(ge0 در soodar1) :

soodar1(config-if)# source-ip 200.1.2.1

تعیین مقصد تونل

در این بخش آدرس IP مقصد تونل که همان ip اینترفیس روتر است که قرار است به آن تونل بزنیم (ge0 در soodar3) :

soodar1(config-if)# ingress-replication 200.2.3.3

مشخص کردن شماره vni

شماره vni به عنوان شناسه تونل vxlan استفاده می شود و با این شناسه در هر شبکه می توان ۱۶ میلیون segment مختلف ایجاد کرد . شماره vni از ۱ تا ۱۶۷۷۷۲۱۴ می تواند مقدار دهی شود .

soodar1(config-if)# member vni 30

اضافه کردن اینترفیس vxlan به bridge

در نهایت باید یک bridge بین اینترفیس تونل vxlan و اینترفیسی که قرار است از تونل استفاده کند برقرار کرد (ge1 در soodar1) :

soodar1(config)# interface ge1
soodar1(config-if)# bridge-group 200
soodar1(config-if)# no shutdown
soodar1(config)# interface nve10
soodar1(config-if)# bridge-group 200
soodar1(config-if)# do show bridge 200
 |------------------------------------------------|
 | Domain | Interface | Split-Horizon Group | BVI |
 |--------+-----------+---------------------+-----|
 | 200    | ge1       | 0                   | -   |
 |--------+-----------+---------------------+-----|
 |        | nve10     | 0                   | -   |
 |--------+-----------+---------------------+-----|
 

تنظیمات مربوط به vxlan در soodar1 به پایان رسید . به همین شکل تنظیمات را در روتر soodar3 نیز انجام می دهیم .

soodar3(config)# interface nve 10
soodar3(config-if)# source-ip 200.1.2.1
soodar3(config-if)# ingress-replication 200.2.3.3
soodar3(config-if)# member vni 30
--------
soodar3(config)# interface ge1
soodar3(config-if)# bridge-group 200
soodar3(config-if)# no shutdown
soodar3(config)# interface nve10
soodar3(config-if)# bridge-group 200

حال ارتباط بین user1 , user2 به صورت لایه ۲ توسط تونل vxlan برقرار می باشد.

تنظیم vrf در vxlan

اگر می خواهید برای برقراری تونل vxlan و رسیدن به مقصد تونل از vrf خاصی استفاده کنید به شکل زیر باید در تمظیمات vrf مربوطه مقدار vni را تنظیم کنید تا تونل vxlan برای lookup کردن آدرس مقصد تونل از این vrf استفاده کند :

soodar(config)# vrf green
soodar(config-vrf)# vni 30
soodar(config-vrf)# 

این تنظیم مشخص می کند که vxlan با vni شماره 30 باید از vrf green برای برقراری تونل استفاده کند .

فعال کردن log های vxlan

با دستور زیر می توانید Log های مربوط به vxlan را فعال کنید:

soodar1# debug vxlan event