آموزش مرحله به مرحله راهاندازی لود بالانسینگ در روتر میکروتیک

آیا اینترنت شما از یک خط ADSL/ADSL2+/VDSL/FTTx یا چند لینک اینترنتی میآید و میخواهید از همه لینکها بهصورت هوشمند استفاده کنید تا سرعت کلی اینترنت افزایش یابد؛ در اینصورت حتی با قطع یکی از لینکها، باز هم به اینترنت دسترسی داشته باشید و بار بین لینکها متوازن شود و هزینهها بهتر مدیریت شود؟ لود بالانسینگ (Load Balancing) دقیقا همین کارها را انجام میدهد: تقسیم درست جریان ترافیک اینترنت بین چند لینک تا از منابع موجود بیشترین بهره برده شود و سرویس پایدارتر و سریعتری داشته باشید. ما در این مقاله شما را با لود بالانسینگ و اهمیت آن در شبکه آشنا میکنیم و بعد به سراغ آموزش بهترین و سادهترین روشهای راهاندازی لود بالانسینگ در روتر میکروتیک میرویم تا بتوانید پس از خرید روتر میکروتیک، بدون دردسر این تکنیک را در روتر خودتان پیادهسازی کنید.
فهرست محتوا
لود بالانسینگ چیست و چرا در شبکهها نیاز است؟
پیش از اینکه به سراغ تنظیمات Load Balancing در میکروتیک برویم، بهتر است ابتدا با مفهوم لود بالانسینگ آشنا شوید. لود بالانسینگ به زبان ساده به معنی تقسیم بار یا تقسیم جریانهای خروجی/ورودی شبکه بین چند مسیر/لینک است؛ بهطوری که هیچ لینکی بیش از حد مشغول نباشد و همینطور در صورت خرابی یکی لینکها، ترافیک به لینکهای دیگر منتقل شود.
برای درک بهتر این موضوع، تصور کنید سه لوله آب وجود دارد و شما میخواهید آب مورد نیاز یک ساختمان را از هر سه لوله بگیرید به طوری که به هیچ لولهای بیش از حد فشار وارد نشود؛ در اینصورت اگر یک لوله قطع شود، سایر لولهها جوابگوی نیاز ساختمان هستند. همین ایده، دقیقا سازوکار لود بالانسینگ را برای لینکهای اینترنتی بیان میکند؛ اما شاید بپرسید که چرا به راهاندازی لود بالانسینگ در روتر میکروتیک نیاز داریم؟ دلایل این نیاز عبارتند از:
- افزایش پهنای باند مؤثر: ترکیب چند لینک اینترنتی (مثلا ۲ لینک ۵۰ مگ) میتواند تجربه کلی را بهبود دهد (حتی اگر یک اتصال واحد به یک سرور خارجی محدود باشد، در مجموع ظرفیت خروجی افزایش مییابد).
- تکرارپذیری و پایداری (Redundancy): اگر یک ISP قطع شود، لینکهای دیگر سرویس را حفظ میکنند.
- بهینهسازی هزینهها: با استفاده هوشمند از لینکها میتوانید هزینههای ترافیک را مدیریت کنید.
- توزیع بار کاربردمحور: برای مثال ترافیک وبسایتها روی یک لینک و دانلودهای سنگین روی لینک دیگر هدایت شود.
- مدیریت تأخیر/پینگ: میتوانید جریانهای حساس به تأخیر (VoIP، بازی) را روی لینک با پینگ کمتر قرار دهید.
- نیازهای سازمانی (Policy-based Routing): بعضی سرویسها باید از مسیر مشخصی خارج شوند (برای رعایت SLA یا قوانین شرکت).

روشهای لود بالانسینگ در روتر میکروتیک
حال که با لود بالانسینگ آشنا شدید، نوبت به یادگیری نحوه راهاندازی لود بالانسینگ در روتر میکروتیک میرسد. دقت داشته باشید که در این بخش روشهای لود بالانسینگ در این روتر، در دو حالت مختلف شامل استفاده از نرمافزار Winbox و ترمینال روتر (CLI) آموزش داده میشوند که به دلخواه و به تناسب آشنایی خود با مفاهیم شبکه، میتوانید از هر روش استفاده کنید.
پیشفرض ما برای استفاده از روش های لود بالانسینگ در روتر میکروتیک، داشتن شرایط زیر است:
یک شبکه ساده با یک LAN به اسم LAN با رنج 192.168.88.0/24 و دو لینک اینترنتی با اینترفیسها و IPهای نمونه:
WAN1: interface ether1-WAN1, gateway ISP1 203.0.113.1, local IP 203.0.113.10
WAN2: interface ether2-WAN2, gateway ISP2 198.51.100.1, local IP 198.51.100.10
نکته بسیار مهم: پیش از شروع اعمال تغییرات پیکربندی، با اجرای دستور زیر در ترمینال روتر، یک بکاپ از تنظیمات فعلی بگیرید:
/system backup save name=before-lb
روش ECMP (مخفف Equal Cost Multi-Path)
اگر میخواهید به سادگی چند خط اینترنت را تجمیع کنید، اما علاقهای به درگیر شدن با پیچیدگیهای مِنگل (mangle) و مارکگذاری ندارید، این روش مناسب شماست. از این روش میتوانید برای افزایش پهنای باند کلی و تحمل خطا از آن استفاده کنید. دقت داشته باشید که در صورت اجرای این روش برای sessionهای حساس امکان برگشتن بستهها روی مسیر متفاوت از سرور و شکستن سشن وجود دارد. از این رو باید Session persistence مدیریت شود. برای اجرای این روش، مطابق مراحل زیر پیش بروید:
روش ECMP در نرمافزار Winbox
ابتدا نرمافزار را از این لینک دانلود و نصب کنید. سپس وارد نرمافزار شوید و در قسمت Connect To، آی پی روتر خود را وارد کنید. (این آی پی به صورت پیشفرض برابر با 192.168.88.1 است.) سپس نام کاربری روتر (بهطور پیشفرض admin است.) را در قسمت Login وارد کنید. در نهایت در صورت داشتن Password (برای بار اول این بخش را خالی بگذارید.) آن را نیز وارد و روی Connect کلیک کنید.
پس از این مرحله، مطابق زیر پیش بروید:
- وارد IP > Routes شوید.
- روی دکمه “+” کلیک کند تا مسیر جدیدی اضافه شود.
- در قسمت Gateway، IP گیتوی اینترنت اول را وارد کنید. فرض کنیم IP گیتوی اول 203.0.113.1 است.
- در قسمت Distance، عدد 1 را وارد کنید (این عدد اولویت این مسیر را مشخص میکنه. عدد کمتر اولویت بیشتری دارد).
- مسیر دوم را نیز به همین روش و با IP گیتوی دوم، (مثلا198.51.100.1) وارد کنید.
- دوباره Distance را روی 1 بگذارید.
- حالا ترافیک بین دو مسیر تقسیم میشود و از هر دو اینترنت استفاده خواهد شد.

روش ECMP در ترمینال روتر (CLI)
ابتدا دستور زیر را برای اضافه کردن دو route با distance برابر و check-gateway برای تشخیص قطع شدن ISP در ترمینال روتر اجرا کنید:
/ip route
add dst-address=0.0.0.0/0 gateway=203.0.113.1 distance=1 check-gateway=ping comment=”ISP1 ECMP”
add dst-address=0.0.0.0/0 gateway=198.51.100.1 distance=1 check-gateway=ping comment=”ISP2 ECMP”
پس از آن، کد زیر را NAT (masquerade) را برای هر WAN (مطابق بهترین عمل) در ترمینال وارد و اجرا کنید:
/ip firewall nat
add chain=srcnat out-interface=ether1-WAN1 action=masquerade
add chain=srcnat out-interface=ether2-WAN2 action=masquerade
در نهایت، برای تست عملکرد صحیح این روش، دستورات زیر را به ترتیب در ترمینال روتر اجرا کنید:
- ip route print برای اطمینان از وجود دو مسیر در روتر
- ping 8.8.8.8 برای تست کردن LAN بستهها
- دستورات interface monitor-traffic ether1-WAN1 و interface monitor-traffic ether2-WAN2 برای برای دیدن ترافیک روی هر WAN
روش PCC (مخفف Per Connection Classifier)
در این روش راهاندازی لود بالانسینگ در روتر میکروتیک، هر اتصال (مثل هر بار لود کردن صفحه وب یا دانلود فایل) بهصورت جداگانه به یکی از مسیرها اختصاص داده میشود تا ترافیک بین دو مسیر بهطور منظمتر تقسیمبندی شود.
روش PCC در نرمافزار Winbox
ابتدا وارد IP > Firewall > Mangle شوید و سپس روی دکمه “+” کلیک کنید تا یک مسیر جدید بسازید. پس از آن، تنظیمات را به شکل زیر انجام دهید:
- Chain: گزینه prerouting را انتخاب کنید.
- Src. Address: اگر میخواهید فقط برای یک شبکه خاص اعمال شود، IP آن شبکه را وارد کنید.
- Action: گزینهی mark-connection را انتخاب کنید تا هر اتصال علامت گذاری شود.
- Per-Connection Classifier: اینجا مقدار both-addresses:2/0 را وارد کنید تا روتر ترافیک را به دو بخش تقسیم کند.
حالا با طی کردن مسیر IP > Routes برای هر کدام از اینترنتهایی که دارید، یک Route جدید بسازید تا هر ترافیک با علامتگذاریهای خاص به اینترنت خاص برود.

روش PCC در ترمینال روتر (CLI)
برای اینکه دستگاههای داخل LAN بتوانند از هر دو اینترنت استفاده کنند، باید از NAT استفاده کنیم تا IPهای داخلی به آدرسهای خارجی تبدیل شوند. برای این کار کد زیر را در ترمینال روتر بزنید:
/ip firewall nat
add chain=srcnat out-interface=ether1-WAN1 action=masquerade
add chain=srcnat out-interface=ether2-WAN2 action=masquerade
پس از آن، دستورات زیر را برای تست و بررسی صحت عملکرد این روش در ترمینال وارد کنید:
- ip route print برای بررسی این که دو مسیر به جدول مسیریابی اضافه شدهاند.
- ping 8.8.8.8 از داخل LAN برای تست ارتباط با اینترنت از هر دو لینک.
در مرحله بعد، دستورات زیر را دوباره در ترمینال بزنید:
/ip firewall mangle
# 1) علامتگذاری کانکشنها با PCC
add chain=prerouting in-interface=bridge-LAN per-connection-classifier=both-addresses:2/0 action=mark-connection new-connection-mark=ISP1_conn passthrough=yes comment=”PCC to ISP1″
add chain=prerouting in-interface=bridge-LAN per-connection-classifier=both-addresses:2/1 action=mark-connection new-connection-mark=ISP2_conn passthrough=yes comment=”PCC to ISP2″
# 2) علامتگذاری بستهها بر اساس کانکشنهای مارکشده
add chain=prerouting connection-mark=ISP1_conn action=mark-routing new-routing-mark=to_ISP1 passthrough=yes comment=”route mark ISP1″
add chain=prerouting connection-mark=ISP2_conn action=mark-routing new-routing-mark=to_ISP2 passthrough=yes comment=”route mark ISP2″
و در نهایت برای ایجاد مسیرهای جدید برای هر ISP، دستورات زیر را وارد کنید:
/ip route
add dst-address=0.0.0.0/0 gateway=203.0.113.1 routing-mark=to_ISP1 check-gateway=ping
add dst-address=0.0.0.0/0 gateway=198.51.100.1 routing-mark=to_ISP2 check-gateway=ping
در نهایت، دستورات زیر را برای تست عملکرد صحیح این روش در ترمینال اجرا کنید:
- ip firewall connection print where connection-mark=ISP1_conn برای تست connection mark
- /tool torch interface=ether1-WAN1 برای تست جریانهای ورودی برای هر اینترفیس
- تست failover: اگر یکی از ISPها قطع شد، کانکشنهای جدید به ISP دیگر میروند. کانکشنهای قدیمی ممکن است قطع شوند (به همین خاطر برای سرویسهای حساس، باید قوانین استاتیک یا Policy خاص داشته باشید).
مطالب مرتبط: آموزش پیکربندی اولیه روتر میکروتیک
روش NTH
در این روش راهاندازی لود بالانسینگ در روتر میکروتیک میخواهیم به روتر بگوییم که هر Nامین بسته را به یک اینترنت خاص هدایت کند. برای مثال میخواهیم هر دومین بسته از اینترنت اول و هر سومین بسته از اینترنت دوم بگذرد.
روش NTH در نرمافزار Winbox
ابتدا وارد IP > Firewall > Mangle شوید و روی دکمه “+” کلیک کنید تا یک مسیر جدید ساخته شود. پس از آن، تنظیمات را به شکل زیر وارد کنید:
- Chain: این بخش را روی prerouting تنظیم کنید.
- Action: این بخش را روی mark-connection بگذارید.
- Nth: اینجا مقدار 2,0 را وارد کنید. این به این معنی است که روتر باید هر دومین بسته را از مسیر دوم عبور دهد.
در نهایت، تنظیمات فعلی را برای اینترنتهای مختلف انجام دهید و اطمینان پیدا کنید که ترافیک به درستی تقسیمبندی شود.
روش NTH در ترمینال روتر (CLI)
دستورات زیر را در ترمینال روتر وارد کنید:
/ip firewall mangle
# هر دومین کانکشن را انتخاب کن و مارک کن
add chain=prerouting in-interface=bridge-LAN connection-state=new nth=2,0 action=mark-connection new-connection-mark=ISP2_conn passthrough=yes comment=”NTH mark every 2nd conn to ISP2″
# بقیه کانکشنها را به ISP1 بفرست
add chain=prerouting in-interface=bridge-LAN connection-state=new connection-mark=!ISP2_conn action=mark-connection new-connection-mark=ISP1_conn passthrough=yes comment=”Remaining to ISP1″
# مارک روتینگ مثل PCC
add chain=prerouting connection-mark=ISP1_conn action=mark-routing new-routing-mark=to_ISP1 passthrough=yes
add chain=prerouting connection-mark=ISP2_conn action=mark-routing new-routing-mark=to_ISP2 passthrough=yes

روش Load Balancing بر اساس مسیرهای دستی (Policy Routing)
در این روش راهاندازی لود بالانسینگ در روتر میکروتیک میتوانید مشخص کنید که ترافیکهای خاصی از یک اینترنت خاص عبور کنند. به طور مثال ترافیک VoIP را از یک اینترنت و ترافیک دانلود را از اینترنت دیگر هدایت کنید.
روش Load Balancing بر اساس مسیرهای دستی در نرمافزار Winbox
در ابتدا وارد IP > Firewall > Address List شوید. پس از آن یک لیست جدید از آیپیهایی بسازید که میخواهید قوانین خاص برای آن ها تعریف کنید. به طور مثال میخواهید ترافیک VoIP از اینترنت خاصی بگذرد، پس از آن باید آیپیهای مربوط به سرورهای VoIP را وارد کنید. سپس وارد IP > Firewall > Mangle شوید و یک قاعده جدید بسازید و تنظیمات آن را به شکل زیر وارد کنید:
- Chain: برای این بخش prerouting را انتخاب کنید.
- Src. Address List: آیپیهای لیست VoIP را انتخاب کنید.
- Action: این بخش را mark-routing بگذارید.
- پس از آن، با طی کردن IP > Routes برای این مارکها مسیر خاصی را اضافه کنید تا ترافیک VoIP از اینترنت مشخصی عبور کند.

روش Load Balancing بر اساس مسیرهای دستی در ترمینال روتر (CLI)
دستورات زیر را برای ساخت یک address-list برای سرویسها یا IPهای خاص در ترمینال روتر اجرا کنید:
/ip firewall address-list
add list=VoIP_IPs address=192.168.88.50 comment=”IP of VoIP PBX”
add list=Servers address=192.168.88.60 comment=”Web Server”
سپس برای مارک کردن روتینگ بر اساس src-address یا address-list دستورات زیر را اجرا کنید:
/ip firewall mangle
# VoIP IPs را مارک روتینگ کن به ISP1
add chain=prerouting src-address-list=VoIP_IPs action=mark-routing new-routing-mark=to_ISP1 passthrough=yes comment=”VoIP -> ISP1″
# Servers را به ISP2
add chain=prerouting src-address-list=Servers action=mark-routing new-routing-mark=to_ISP2 passthrough=yes comment=”Servers -> ISP2″
در نهایت، با اجرای دستور زیر، routeهایی را که از routing-markها اضافه کنید:
/ip route
add dst-address=0.0.0.0/0 gateway=203.0.113.1 routing-mark=to_ISP1
add dst-address=0.0.0.0/0 gateway=198.51.100.1 routing-mark=to_ISP2
سوالات متداول کاربران درباره روشهای لود بالانسینگ در روتر میکروتیک
چه تفاوتی بین ECMP و PCC وجود دارد؟
روش ECMP ساده است، اما PCC بر اساس اتصال (connection) تصمیم میگیرد و بهخاطر علامتگذاری connection، رفتار sessionمحور و پایدارتری دارد.
کدام روش لود بالانسینگ میکروتیک برای کاربران خانگی مناسبتر است؟
اگر صرفا میخواهید از دو لینک برای افزایش ظرفیت استفاده کنید و حساسیت session کم است، ECMP مناسب شماست؛ اما اگر وبسایت، یا سرویسهایی دارید که باید session ثابت بماند، PCC یا Policy Routing بهتر هستند.
اگر پس از راهاندازی، یک ISP قطع شد چه اتفاقی میافتد؟
بستگی به روش و تنظیمات health-check دارد. برای مثال، در ECMP بدون check-gateway ممکن است بستهها ارسال شوند ولی قطع شود.
آیا لود بالانسینگ باعث افزایش سرعت دانلود یک فایل واحد میشود؟
اغلب خیر؛ زیرا یک TCP session معمولا از یک مسیر خارج میشود، اما اگر برنامه یا دانلود از چند اتصال (multi-threaded) استفاده کند یا چند دستگاه همزمان دانلود کنند، مجموع پهنای باند افزایش مییابد.
آنچه درباره لود بالانسینگ میکروتیک گفتیم
لود بالانسینگ میکروتیک ابزار قدرتمندی برای افزایش پهنای باند مؤثر، بهبود پایداری و کنترل ترافیک در این روتر است. از بین روش های راهاندازی لود بالانسینگ در روتر میکروتیک شما می توانید برای موارد ساده از ECMP که سریع و آسان است، استفاده کنید. اگر به دنبال کنترل دقیقتر و حفظ sessionها هستید، روش PCC بهترین گزینه برای شما است. در بین سایر روشهای لود بالانسینگ نیز، روش NTH برای سناریوهای سبک و روش Policy Routing برای نیازهای سازمانی و سیاستمحور مناسب هستند.
در نهایت، شما با استفاده راهاندازی لود بالانسینگ در روتر میکروتیک و استفاده از ابزارهای مانیتورینگ، اجرای NAT صحیح و تستهای health-check میتوانید سیستمی پایدار و کارامد بسازید. اگر برای راه اندازی لود بالانسینگ مشکل دارید میتوانید با شماره 0218363 تماس بگیرید یا روی لینک زیر بزنید و سفارشتان را ثبت کنید تا کارشناسان ما فرآیند راهاندازی را برای شما انجام دهند.




