سلام یکی از موارد استفاده از میکروتیک در شبکه ایجاد توازن میان لینک های مختلف wan می باشد که این کار را بر اساس معیار های مختلفی مثل یک کلاینت مشخص و یک رنج IP یا نوع ترافیک و… این توازن را برقرار کرد.
در این مقاله میخواهیم توازن بین دو لینک wan را بر اساس نوع ترافیک ها ایجاد کنیم.
قبل از شروع به اعمال تنظیمات در روتر باید دیدگاه خود را به عنوان مدیر شبکه در رابطه با انواع ترافیکی که در شبکه مورد استفاده قرار می گیرد را مشخص کنیم.
با بررسی هایی که در شبکه خود انجام می دهیم بطور مثال موارد زیر را مشخص کرده ایم:
- ترافیک HTTP پورت 80
- ترافیک HTTPS پورت 443
- ترافیک SMTP پورت 25
- ترافیک POP3 پورت 110
- سایر ترافیک ها …
حال باید لیستی از کلاینت ها و لینک های wan خود داتشه باشیم. در این سناریو لینک Wan – 01 ما آدرس 192.168.1.1 سرویس اینترنتی است که پورت 25 روی آن بسته است (بنا به موارد امنیتی برای جلوگیری از ارسال spam توسط کاربران و بلاک شدن IP داینامیک)
لینک Wan – 02 ما آدرس 192.168.2.1 سرویس اینترنتی با IP static می باشد که پورت 25 باز است.
همچنین برای یکی از کلاینت ها تصمیم داریم هیچ محدودیتی اعمال نکنیم و همه ترافیک آن از طریق لینک 192.168.2.1 خارج شود.
حال ما می خواهیم ترافیک مربوط به پروتکل SMTP و POP3 را به لینک Wan – 02 و ترافیک HTTP و HTTPS و … را به لینک Wan – 01 تقسیم کنیم.
ابتدا لیست آدرس تمام کلاینت های مجاز به استفاده از اینترنت را با عنوان Allow Internet ایجاد و کلاینت های مذکور را در آن قرار می دهیم (ممکن است بعد ها کلاینت دیگری به لیست اضافه و یا کم کنیم):
/ ip firewall address-list
add list=”Allowed-Internet” address=172.18.1.0/24 comment=”” disabled=no
حال یکی از کلاینت ها را برای bypass در لیست دیگری قرار می دهیم:
/ ip firewall address-list
add list=”bypass-LB” address=172.18.1.24/32 comment=”” disabled=no
قانون Masquerading را برای هر دو لینک اعمال می کنیم:
/ ip firewall nat
add chain=srcnat action=masquerade out-interface=”WAN – 01″ src-address-list=”Allowed-Internet” comment=”Gateway 192.168.1.1/16″ disabled=no
add chain=srcnat action=masquerade out-interface=”WAN – 02″ src-address-list=”Allowed-Internet” comment=”Gateway 192.168.2.1/16″ disabled=no
تا این لحظه کلاینت ها از یکی از لینک های Wan بر اساس Routing Table برای استفاده از اینترنت ارسال و دریافت دارند.
حال عملیات Load Balancing را بر حسب نوع ترافیک اعمال می کنیم:
/ ip firewall mangle
add chain=prerouting action=mark-routing new-routing-mark=”bypass-LB” src-address-list=”bypass-LB” passthrough=no comment=”” disabled=no
add chain=prerouting action=mark-routing new-routing-mark=”HTTP traffic” passthrough=no dst-port=80 protocol=tcp comment=”” disabled=no
add chain=prerouting action=mark-routing new-routing-mark=”SSL traffic” passthrough=no dst-port=443 protocol=tcp comment=”” disabled=no
add chain=prerouting action=mark-routing new-routing-mark=”POP3 traffic” passthrough=no dst-port=110 protocol=tcp comment=”” disabled=no
add chain=prerouting action=mark-routing new-routing-mark=”SMTP traffic” passthrough=no dst-port=25 protocol=tcp comment=”” disabled=no
در دستورات بالا خط اول ترافیک کلاینتی که می خواهیم bypass کنیم و همچنین سایر ترافیک ها بر اساس پروتکل و پورت برای روتینگ علامت گذاری می کنیم.
/ ip route
add dst-address=0.0.0.0/0 gateway=192.168.2.1 scope=255 target-scope=10 routing-mark=”bypass-LB” comment=”” disabled=no
add dst-address=0.0.0.0/0 gateway=192.168.1.1 scope=255 target-scope=10 routing-mark=”HTTP traffic” comment=”” disabled=no
add dst-address=0.0.0.0/0 gateway=192.168.1.1 scope=255 target-scope=10 routing-mark=”SSL traffic” comment=”” disabled=no
add dst-address=0.0.0.0/0 gateway=192.168.2.1 scope=255 target-scope=10 routing-mark=”POP3 traffic” comment=”” disabled=no
add dst-address=0.0.0.0/0 gateway=192.168.2.1 scope=255 target-scope=10 routing-mark=”SMTP traffic” comment=”” disabled=no
در اینجا عملیات Load Balancing بر اساس نوع ترافیک انجام شد حال می توانید ترافیک های دیگر یا کلاینت های دیگر هم بر همین اساس بین لینک های Wan خود تقسیم کنید.