مسیریابی در میکروتیک چیست؟ آموزش Routing و تنظیم Route در RouterOS

هر زمان که یک بسته اطلاعاتی بخواهد از یک شبکه به شبکه دیگری منتقل شود، روتر باید مسیری مناسب برای رسیدن آن به مقصد انتخاب کند. این فرایند مسیریابی یا Routing نام دارد و یکی از اصلی‌ترین وظایف روترهای MikroTik محسوب می‌شود.

برای مثال، اگر کاربران شبکه داخلی بخواهند به اینترنت متصل شوند یا دو شعبه شرکت با رنج‌های IP متفاوت با یکدیگر ارتباط داشته باشند، روتر باید بداند هر بسته را به کدام Gateway یا روتر بعدی ارسال کند. این اطلاعات در جدول مسیریابی یا Routing Table ذخیره می‌شوند.

RouterOS علاوه بر مسیرهای ساده Connected و Static، از قابلیت‌هایی مانند Default Route، چند جدول مسیریابی، Policy Routing، Failover، Recursive Routing، ECMP، OSPF، RIP، BGP و VRF نیز پشتیبانی می‌کند. به همین دلیل می‌توان از تجهیزات میکروتیک در شبکه‌های کوچک، سازمانی، چندشعبه‌ای و زیرساخت‌های ارائه‌دهندگان اینترنت استفاده کرد.

نکته مهم: این آموزش براساس ساختار RouterOS v7 نوشته شده است. برخی منوها و دستورات در RouterOS v6 متفاوت هستند و نباید تنظیمات نسخه‌های مختلف بدون بررسی با یکدیگر ترکیب شوند.

مسیریابی یا Routing چیست؟

مسیریابی فرایندی است که طی آن روتر، مسیر مناسب برای انتقال بسته از مبدأ به مقصد را انتخاب می‌کند. روتر آدرس IP مقصد را بررسی کرده و آن را با مسیرهای موجود در جدول مسیریابی مقایسه می‌کند.

نتیجه این بررسی می‌تواند یکی از موارد زیر باشد:

  • تحویل بسته به خود روتر
  • ارسال بسته از یک Interface مشخص
  • ارسال بسته به یک Next Hop یا Gateway
  • استفاده از یک جدول مسیریابی اختصاصی
  • حذف بسته به دلیل نبود مسیر
  • ارسال پیام Unreachable به مبدأ

مسیریابی در لایه سوم مدل OSI انجام می‌شود و معمولاً براساس آدرس‌های IPv4 یا IPv6 تصمیم‌گیری می‌کند.

روتر چگونه مسیر بسته را انتخاب می‌کند؟

هنگامی که یک بسته وارد روتر می‌شود، RouterOS آدرس مقصد آن را با Routeهای موجود مقایسه می‌کند. اگر چند مسیر با مقصد بسته مطابقت داشته باشند، مسیر اختصاصی‌تر انتخاب می‌شود.

برای نمونه، جدول Route زیر را در نظر بگیرید:

0.0.0.0/0 via 192.0.2.1
192.168.0.0/16 via 10.10.10.1
192.168.20.0/24 via 10.10.10.2
192.168.20.10/32 via 10.10.10.3

اگر مقصد بسته 192.168.20.10 باشد، هر چهار Route ممکن است با مقصد مطابقت داشته باشند، اما مسیر /32 از همه اختصاصی‌تر است و انتخاب می‌شود.

برای مقصد دیگری مانند 192.168.20.50 مسیر 192.168.20.0/24 انتخاب خواهد شد. اگر مقصد با هیچ شبکه اختصاصی مطابقت نداشته باشد، Default Route یا مسیر 0.0.0.0/0 استفاده می‌شود.

تفاوت RIB و FIB در RouterOS

اطلاعات مسیریابی در RouterOS را می‌توان به دو بخش اصلی تقسیم کرد:

RIB چیست؟

RIB مخفف Routing Information Base است. این پایگاه تمام مسیرهای شناخته‌شده روتر را نگهداری می‌کند؛ از جمله:

  • مسیرهای Connected
  • مسیرهای Static
  • مسیرهای دریافت‌شده از DHCP
  • مسیرهای مربوط به VPN
  • مسیرهای OSPF
  • مسیرهای RIP
  • مسیرهای BGP
  • مسیرهای غیرفعال یا فیلترشده

ممکن است برای یک مقصد چند Route در RIB وجود داشته باشد، اما همه آن‌ها برای ارسال بسته استفاده نمی‌شوند.

FIB چیست؟

FIB مخفف Forwarding Information Base است. این بخش شامل Routeهای فعال و اطلاعاتی است که روتر برای Forward کردن واقعی بسته‌ها استفاده می‌کند.

RouterOS ابتدا بهترین مسیر را در RIB انتخاب کرده و سپس مسیر فعال را در FIB قرار می‌دهد. بنابراین وجود یک Route در تنظیمات به‌تنهایی به معنای استفاده‌شدن آن نیست؛ Route باید فعال و Gateway آن قابل دسترسی باشد.

انواع Route در میکروتیک

نوع Routeنحوه ایجادکاربرد
Connected Routeخودکار پس از اختصاص IP به Interfaceدسترسی به شبکه‌های مستقیماً متصل
Static Routeتعریف دستی مدیر شبکهدسترسی به شبکه‌های راه دور
Default Routeدستی یا دریافت از DHCP، PPP و VPNارسال مقصدهای ناشناخته به Gateway عمومی
Dynamic Routeدریافت از پروتکل‌های مسیریابیشبکه‌های دارای چند روتر و توپولوژی متغیر
Policy RouteRouting Rule یا Firewall Mangleانتخاب مسیر براساس مبدأ یا سیاست شبکه
Blackhole Routeتعریف دستی یا توسط پروتکل‌هاحذف کنترل‌شده ترافیک یک Prefix

Connected Route چیست؟

هنگامی که یک آدرس IP همراه با Subnet Mask روی Interface فعال روتر تنظیم می‌شود، RouterOS به‌صورت خودکار یک Connected Route برای آن شبکه ایجاد می‌کند.

برای مثال، دستور زیر را در نظر بگیرید:

/ip address
add address=192.168.10.1/24 interface=bridge-LAN

پس از اجرای آن، RouterOS مسیر زیر را به‌صورت خودکار در جدول Route ایجاد می‌کند:

192.168.10.0/24 reachable through bridge-LAN

Connected Route به روتر اعلام می‌کند که تجهیزات دارای آدرس‌های شبکه 192.168.10.0/24 مستقیماً از طریق Interface مربوط قابل دسترسی هستند.

این Route را نباید به‌صورت دستی ایجاد کرد. اگر Interface غیرفعال شود یا IP آن حذف شود، Connected Route نیز غیرفعال یا حذف خواهد شد.

Static Route چیست؟

Static Route مسیری است که مدیر شبکه به‌صورت دستی در جدول مسیریابی تعریف می‌کند. این نوع مسیر برای شبکه‌های کوچک یا مسیرهایی که تغییرات کمی دارند، ساده و قابل پیش‌بینی است.

هر Static Route معمولاً حداقل دو بخش اصلی دارد:

  • Dst. Address: شبکه یا آدرس مقصد
  • Gateway: آدرس روتر بعدی برای رسیدن به مقصد

نمونه کلی:

/ip route
add dst-address=192.168.20.0/24 gateway=10.10.10.2

این دستور به روتر اعلام می‌کند برای دسترسی به شبکه 192.168.20.0/24 بسته‌ها را به Gateway دارای آدرس 10.10.10.2 ارسال کند.

آموزش ایجاد Static Route میان دو روتر میکروتیک

فرض کنید دو شبکه زیر داریم:

  • شبکه اول پشت Router1: رنج 192.168.10.0/24
  • شبکه دوم پشت Router2: رنج 192.168.20.0/24
  • لینک میان دو روتر: رنج 10.10.10.0/30

تنظیم آدرس‌های Router1

/ip address
add address=192.168.10.1/24 interface=bridge-LAN
add address=10.10.10.1/30 interface=ether2

تنظیم آدرس‌های Router2

/ip address
add address=192.168.20.1/24 interface=bridge-LAN
add address=10.10.10.2/30 interface=ether1

در این مرحله هر روتر فقط شبکه‌های مستقیماً متصل به خود را می‌شناسد. Router1 از وجود شبکه 192.168.20.0/24 و Router2 از وجود شبکه 192.168.10.0/24 اطلاعی ندارد.

ایجاد Route روی Router1

/ip route
add dst-address=192.168.20.0/24 \
 gateway=10.10.10.2 \
 comment="Route to Router2 LAN"

ایجاد مسیر برگشت روی Router2

/ip route
add dst-address=192.168.10.0/24 \
 gateway=10.10.10.1 \
 comment="Route to Router1 LAN"

پس از تعریف Route در هر دو سمت، کاربران دو شبکه می‌توانند با یکدیگر ارتباط برقرار کنند؛ البته به شرط آنکه Firewall روترها اجازه عبور ترافیک را بدهد.

نکته مهم: مسیر برگشت یا Return Route ضروری است. وجود Route فقط روی Router1 کافی نیست؛ Router2 نیز باید بداند پاسخ بسته را از چه مسیری به شبکه مبدأ برگرداند.

آیا برای ارتباط دو شبکه داخلی به NAT نیاز داریم؟

خیر. برای ارتباط عادی میان دو شبکه داخلی Route شده، معمولاً نیازی به NAT نیست. استفاده غیرضروری از NAT باعث پنهان‌شدن آدرس واقعی مبدأ و پیچیده‌ترشدن عیب‌یابی، ثبت Log و اعمال سیاست‌های امنیتی می‌شود.

در یک طراحی صحیح، دو شبکه خصوصی با Routeهای رفت و برگشت با یکدیگر ارتباط برقرار می‌کنند و Firewall دسترسی‌های مجاز را کنترل می‌کند.

NAT بیشتر برای سناریوهایی مانند دسترسی شبکه‌های Private به اینترنت یا رفع موقت تداخل آدرس‌ها استفاده می‌شود.

Default Route چیست؟

Default Route مسیری است که برای مقصدهایی استفاده می‌شود که Route اختصاصی‌تری برای آن‌ها وجود ندارد. در IPv4 این مسیر به شکل زیر نمایش داده می‌شود:

0.0.0.0/0

برای تعریف مسیر پیش‌فرض اینترنت:

/ip route
add dst-address=0.0.0.0/0 \
 gateway=192.0.2.1 \
 distance=1 \
 comment="Default route to ISP"

می‌توان بخش dst-address را نیز حذف کرد؛ زیرا RouterOS در Static Route خالی، مقصد پیش‌فرض را در نظر می‌گیرد:

/ip route
add gateway=192.0.2.1

Default Route معمولاً Gateway روتر بالادستی، مودم، ONT یا تجهیزات سرویس‌دهنده اینترنت را مشخص می‌کند.

تفاوت Default Route و Default Gateway

Default Gateway در عمل همان Next Hop مربوط به Default Route است. در RouterOS برای تعریف Gateway پیش‌فرض، یک Route با مقصد 0.0.0.0/0 ساخته می‌شود.

اگر اینترنت از طریق DHCP Client یا PPPoE دریافت شود، ممکن است Default Route به‌صورت Dynamic ایجاد شود. در این حالت گزینه‌هایی مانند add-default-route و Distance اتصال، رفتار مسیر را تعیین می‌کنند.

پارامترهای مهم Static Route در میکروتیک

پارامترتوضیح
dst-addressPrefix یا شبکه مقصد
gatewayآدرس Next Hop برای رسیدن به مقصد
distanceاولویت Route نسبت به مسیرهای هم‌مقصد
routing-tableجدولی که Route داخل آن قرار می‌گیرد
check-gatewayبررسی دسترس‌پذیری Gateway
scopeمحدوده استفاده Route برای Resolve کردن Next Hopها
target-scopeحداکثر Scope قابل قبول برای یافتن Gateway
pref-srcآدرس مبدأ ترجیحی در بعضی سناریوها
typeنوع Route مانند Unicast، Blackhole یا Unreachable
commentتوضیح مدیریتی برای مستندسازی Route

Gateway یا Next Hop چیست؟

Gateway آدرس روتر بعدی در مسیر رسیدن به مقصد است. Gateway باید از دید روتر قابل Resolve و در نهایت از طریق یک Interface قابل دسترسی باشد.

در بیشتر شبکه‌های Ethernet بهتر است Gateway به‌صورت IP روتر مقابل تعریف شود:

gateway=10.10.10.2

تعریف صرف نام Interface به‌عنوان Gateway فقط در لینک‌های Point-to-Point یا زمانی که مقصد مستقیماً روی همان Interface قرار دارد، مناسب است.

اگر در یک شبکه Broadcast مانند Ethernet، Interface را برای یک مقصد چند Hop دور به‌عنوان Gateway قرار دهید، روتر تلاش می‌کند آدرس مقصد نهایی را روی همان Interface با ARP پیدا کند و Route به‌درستی کار نخواهد کرد.

Distance در Route میکروتیک چیست؟

Distance برای تعیین اولویت میان Routeهایی استفاده می‌شود که مقصد یکسانی دارند. هرچه مقدار Distance کمتر باشد، اولویت Route بیشتر خواهد بود.

برای نمونه:

/ip route
add dst-address=0.0.0.0/0 gateway=192.0.2.1 distance=1
add dst-address=0.0.0.0/0 gateway=198.51.100.1 distance=2

در این تنظیم، مسیر دارای Distance برابر با ۱ مسیر اصلی است و مسیر دوم با Distance برابر با ۲ نقش Backup را دارد.

Connected Routeها معمولاً Distance صفر دارند. مقدار پیش‌فرض یا عملی Distance در پروتکل‌های Dynamic نیز با یکدیگر متفاوت است.

Longest Prefix Match چیست؟

Longest Prefix Match به این معنا است که RouterOS ابتدا اختصاصی‌ترین Route منطبق با آدرس مقصد را انتخاب می‌کند.

برای مثال:

10.0.0.0/8
10.10.0.0/16
10.10.20.0/24
10.10.20.15/32

برای مقصد 10.10.20.15 مسیر /32 انتخاب می‌شود، حتی اگر Distance مسیرهای عمومی‌تر کمتر باشد. Distance زمانی مقایسه می‌شود که Routeها دارای مقصد یا Prefix یکسان باشند.

ترتیب کلی انتخاب Route در میکروتیک

  1. پیداکردن Routeهایی که با آدرس مقصد مطابقت دارند.
  2. انتخاب اختصاصی‌ترین Prefix یا بزرگ‌ترین Subnet Mask.
  3. حذف مسیرهای Disabled، Inactive یا دارای Gateway غیرقابل دسترسی.
  4. مقایسه Distance میان Routeهای دارای مقصد یکسان.
  5. انتخاب Route دارای Distance کمتر.
  6. ترکیب مسیرهای هم‌ارزش در قالب ECMP در شرایط سازگار.

Route Flags در میکروتیک چه معنایی دارند؟

هنگام اجرای دستور /ip route print در ابتدای هر Route حروفی نمایش داده می‌شوند که وضعیت و منبع مسیر را مشخص می‌کنند.

Flagمعنی
ARoute فعال است.
IRoute غیرفعال یا غیرقابل استفاده است.
XRoute توسط مدیر Disable شده است.
DRoute به‌صورت Dynamic ایجاد شده است.
C یا cConnected Route
S یا sStatic Route
oRoute دریافت‌شده از OSPF
bRoute دریافت‌شده از BGP
rRoute دریافت‌شده از RIP
dRoute ایجادشده توسط DHCP
vRoute مربوط به VPN
+Route عضو ECMP است.
HRoute کاندید استفاده از L3 Hardware Offloading است.

ترکیب Flagها نیز ممکن است نمایش داده شود. برای مثال، DAC می‌تواند یک Connected Route پویا و فعال و AS یک Static Route فعال را نشان دهد.

مشاهده جدول مسیریابی در WinBox و ترمینال

در WinBox از مسیر زیر وارد جدول Route شوید:

IP > Routes

برای مشاهده Routeهای IPv4 در ترمینال:

/ip route print

برای نمایش جزئیات بیشتر:

/ip route print detail

برای مشاهده Routeهای IPv4 و IPv6 همراه با اطلاعات پیشرفته:

/routing route print
/routing route print detail

منوی /routing route برای بررسی و عیب‌یابی Routeها استفاده می‌شود و Routeهای Static باید از بخش /ip route یا /ipv6 route اضافه و حذف شوند.

Check Gateway در میکروتیک چیست؟

قابلیت Check Gateway وضعیت دسترس‌پذیری Next Hop را بررسی می‌کند. RouterOS می‌تواند Gateway را با روش‌هایی مانند Ping، ARP یا BFD بررسی کند.

نمونه بررسی Gateway با Ping:

/ip route
add dst-address=0.0.0.0/0 \
 gateway=192.0.2.1 \
 distance=1 \
 check-gateway=ping

در تنظیمات پیش‌فرض RouterOS، بررسی Ping در بازه‌های مشخص انجام می‌شود. مقادیر فعلی را می‌توان از دستور زیر مشاهده کرد:

/routing settings print

پارامترهای مرتبط عبارت‌اند از:

  • check-gateway-ping-interval
  • check-gateway-ping-timeout
  • check-gateway-ping-count

این مقادیر قابل تنظیم هستند و نباید زمان بررسی Gateway را یک عدد ثابت در تمام نسخه‌ها در نظر گرفت.

راه‌اندازی Failover ساده با دو اینترنت

در سناریوی زیر، ISP1 مسیر اصلی و ISP2 مسیر پشتیبان است:

/ip route
add dst-address=0.0.0.0/0 \
 gateway=192.0.2.1 \
 distance=1 \
 check-gateway=ping \
 comment="Primary ISP"

add dst-address=0.0.0.0/0 \
 gateway=198.51.100.1 \
 distance=2 \
 check-gateway=ping \
 comment="Backup ISP"

تا زمانی که Gateway اول قابل دسترسی باشد، Route دارای Distance برابر با ۱ فعال خواهد بود. در صورت از دسترس خارج‌شدن Gateway اصلی، مسیر دوم وارد مدار می‌شود.

برای NAT هر دو اینترنت می‌توان Interfaceهای WAN را عضو یک Interface List کرد:

/interface list
add name=WAN

/interface list member
add list=WAN interface=ether1
add list=WAN interface=ether2

/ip firewall nat
add chain=srcnat \
 out-interface-list=WAN \
 action=masquerade \
 comment="NAT for all WAN interfaces"

محدودیت Failover با Check Gateway ساده

Check Gateway ساده معمولاً فقط ارتباط روتر با Gateway مستقیم ISP را بررسی می‌کند. ممکن است مودم یا Gateway همچنان پاسخ Ping بدهد، اما ارتباط اینترنت بعد از آن قطع شده باشد.

در این حالت Route اصلی فعال باقی می‌ماند، زیرا روتر فقط Next Hop محلی را بررسی می‌کند. برای تشخیص دقیق‌تر قطعی اینترنت می‌توان از Recursive Routing استفاده کرد.

Recursive Routing چیست؟

در Recursive Routing، Gateway مسیر پیش‌فرض یک آدرس دورتر در اینترنت است و RouterOS برای دسترسی به آن آدرس، Route دیگری را از طریق Gateway واقعی ISP Resolve می‌کند.

نمونه Failover دو اینترنت با Recursive Route:

/ip route
add dst-address=1.1.1.1/32 \
 gateway=192.0.2.1 \
 scope=10 \
 comment="ISP1 probe target"

add dst-address=8.8.8.8/32 \
 gateway=198.51.100.1 \
 scope=10 \
 comment="ISP2 probe target"

add dst-address=0.0.0.0/0 \
 gateway=1.1.1.1 \
 distance=1 \
 check-gateway=ping \
 target-scope=11 \
 comment="Recursive default via ISP1"

add dst-address=0.0.0.0/0 \
 gateway=8.8.8.8 \
 distance=2 \
 check-gateway=ping \
 target-scope=11 \
 comment="Recursive default via ISP2"

در این ساختار، Route اصلی فقط زمانی فعال می‌ماند که آدرس Probe از طریق ISP مربوط قابل دسترسی باشد.

نکته: برای شبکه‌های حساس، اتکا به یک آدرس Probe کافی نیست. بهتر است چند مقصد قابل اعتماد یا روش‌های مانیتورینگ پیشرفته‌تر برای جلوگیری از جابه‌جایی اشتباه مسیرها استفاده شوند.

Scope و Target Scope چه کاربردی دارند؟

Scope و Target Scope تعیین می‌کنند RouterOS از کدام Routeها برای Resolve کردن Next Hop یک Route دیگر استفاده کند.

  • Scope: سطح دسترس‌پذیری و کاربرد Route در فرایند Nexthop Lookup را مشخص می‌کند.
  • Target Scope: حداکثر Scope مجاز برای Routeای که Gateway را Resolve می‌کند، تعیین می‌کند.

این پارامترها بیشتر در Recursive Routing، BGP Multihop و طراحی‌های پیشرفته کاربرد دارند. تغییر نادرست آن‌ها می‌تواند Route را Inactive یا باعث Resolve شدن Gateway از مسیر اشتباه کند.

ECMP در میکروتیک چیست؟

ECMP مخفف Equal-Cost Multi-Path است. اگر چند مسیر هم‌ارزش برای یک مقصد وجود داشته باشند، RouterOS می‌تواند آن‌ها را در قالب یک Route چندمسیره در FIB قرار دهد.

نمونه دو Default Route هم‌ارزش:

/ip route
add dst-address=0.0.0.0/0 \
 gateway=192.0.2.1 \
 distance=1

add dst-address=0.0.0.0/0 \
 gateway=198.51.100.1 \
 distance=1

اگر هر دو Gateway قابل دسترسی باشند، Routeها با علامت + به‌عنوان ECMP نمایش داده می‌شوند.

توزیع ترافیک ECMP براساس Hash انجام می‌شود و نباید آن را با ارسال نوبتی هر Packet از اینترنت‌های مختلف یکسان دانست. در تنظیمات پیش‌فرض IPv4، آدرس مبدأ و مقصد در انتخاب مسیر نقش دارند.

ECMP چه تفاوتی با PCC دارد؟

ECMP در سطح جدول مسیریابی و براساس Next Hopهای هم‌ارزش عمل می‌کند. PCC یا Per Connection Classifier با استفاده از Firewall Mangle ارتباط‌ها را دسته‌بندی کرده و برای هر گروه Routing Mark ایجاد می‌کند.

ویژگیECMPPCC
محل تصمیم‌گیریRouting Table و FIBFirewall Mangle و Policy Routing
پیچیدگیکمتربیشتر
کنترل روی تقسیم اتصال‌هامحدودتربیشتر
مدیریت برگشت ارتباطنیازمند طراحی صحیحقابل کنترل با Connection Mark
کاربردمسیرهای هم‌هزینهLoad Balancing چند اینترنت

Policy Routing در میکروتیک چیست؟

در Routing معمولی، تصمیم اصلی براساس آدرس مقصد گرفته می‌شود. در Policy Routing می‌توان مسیر را براساس اطلاعات دیگری مانند آدرس مبدأ، Interface ورودی یا Routing Mark انتخاب کرد.

کاربردهای Policy Routing عبارت‌اند از:

  • ارسال واحد مالی از اینترنت اول
  • ارسال شبکه مهمان از اینترنت دوم
  • تفکیک ترافیک کاربران و سرورها
  • انتخاب Gateway براساس نوع اتصال
  • پیاده‌سازی Load Balancing با PCC
  • جداسازی مسیرهای داخلی و بین‌المللی

ایجاد Routing Table اختصاصی در RouterOS v7

ابتدا جدول جدید را ایجاد کنید:

/routing table
add name=to_ISP2 fib

سپس Default Route مربوط به ISP2 را در جدول جدید قرار دهید:

/ip route
add dst-address=0.0.0.0/0 \
 gateway=198.51.100.1@main \
 routing-table=to_ISP2 \
 comment="Default route in ISP2 table"

در پایان یک Routing Rule برای شبکه موردنظر تعریف کنید:

/routing rule
add src-address=192.168.20.0/24 \
 action=lookup \
 table=to_ISP2 \
 comment="Send subnet through ISP2"

با این تنظیم، ترافیک مبدأ شبکه 192.168.20.0/24 ابتدا در جدول to_ISP2 جست‌وجو می‌شود.

تفاوت Lookup و Lookup Only in Table

  • lookup: اگر مسیر مناسبی در جدول اختصاصی پیدا نشود، فرایند Routing می‌تواند به Ruleهای بعدی و جدول Main ادامه پیدا کند.
  • lookup-only-in-table: فقط جدول مشخص‌شده بررسی می‌شود و در صورت نبود Route، ترافیک به جدول Main منتقل نخواهد شد.

برای جلوگیری کامل از خروج ترافیک از مسیر دیگر، می‌توان از گزینه زیر استفاده کرد:

/routing rule
add src-address=192.168.20.0/24 \
 action=lookup-only-in-table \
 table=to_ISP2

Routing Rule بهتر است یا Mangle؟

Routing Rule برای سیاست‌های ساده مبتنی بر Source Address، Destination Address یا Interface مناسب است. Mangle انعطاف بیشتری دارد و می‌تواند براساس Connection، پورت، پروتکل و شرایط پیچیده‌تر Mark ایجاد کند.

در صورت استفاده هم‌زمان از Mangle و Routing Rule باید ترتیب تصمیم‌گیری را دقیقاً بدانید. در حالت معمول، Routing Mark ایجادشده توسط Mangle اولویت بیشتری دارد و ممکن است Routing Rule دیگر ترافیک را مشاهده نکند.

همچنین FastTrack فقط با جدول Main سازگاری کامل دارد. در سناریوهای Policy Routing باید Ruleهای FastTrack بررسی یا برای ترافیک Mark شده محدود شوند.

Dynamic Routing چیست؟

در شبکه‌هایی که تعداد روترها زیاد است یا توپولوژی مرتب تغییر می‌کند، نگهداری Static Routeها دشوار می‌شود. پروتکل‌های Dynamic Routing اطلاعات مسیر را میان روترها مبادله می‌کنند و جدول Route را براساس وضعیت شبکه به‌روزرسانی می‌کنند.

RouterOS از پروتکل‌های اصلی زیر پشتیبانی می‌کند:

  • OSPF
  • RIP
  • BGP

اصلاح مهم: پروتکل اختصاصی Cisco EIGRP در RouterOS پشتیبانی نمی‌شود. برای مسیریابی داخلی پویا میان میکروتیک و تجهیزات سایر سازندگان معمولاً OSPF انتخاب مناسب‌تری است.

مقایسه پروتکل‌های Dynamic Routing در میکروتیک

پروتکلنوعکاربرد پیشنهادیویژگی اصلی
RIPDistance Vectorشبکه‌های کوچک و قدیمیپیکربندی ساده و محدودیت ۱۵ Hop
OSPFLink State و IGPمسیریابی داخلی شرکت و ISPهمگرایی مناسب و طراحی Area-Based
BGPPath Vector و EGPارتباط میان Autonomous Systemهااعمال سیاست‌های پیچیده و مقیاس اینترنت

OSPF در میکروتیک چیست؟

OSPF یک پروتکل Link-State برای تبادل اطلاعات مسیریابی میان روترهای یک Autonomous System است. هر روتر اطلاعات Linkها را دریافت کرده و با الگوریتم SPF بهترین مسیر را براساس Cost محاسبه می‌کند.

OSPF برای موارد زیر مناسب است:

  • شبکه دارای چند روتر داخلی
  • اتصال شعب شرکت
  • شبکه‌های Campus
  • زیرساخت داخلی ارائه‌دهنده اینترنت
  • جایگزینی تعداد زیادی Static Route
  • پیاده‌سازی مسیرهای افزونه

نمونه ساده راه‌اندازی OSPF در RouterOS v7

در همان سناریوی دو روتر، می‌توان به‌جای Static Route از OSPF استفاده کرد.

تنظیم OSPF روی Router1

/routing ospf instance
add name=ospf-v2 version=2 router-id=1.1.1.1

/routing ospf area
add name=backbone \
 area-id=0.0.0.0 \
 instance=ospf-v2

/routing ospf interface-template
add networks=10.10.10.0/30 area=backbone
add networks=192.168.10.0/24 area=backbone

تنظیم OSPF روی Router2

/routing ospf instance
add name=ospf-v2 version=2 router-id=2.2.2.2

/routing ospf area
add name=backbone \
 area-id=0.0.0.0 \
 instance=ospf-v2

/routing ospf interface-template
add networks=10.10.10.0/30 area=backbone
add networks=192.168.20.0/24 area=backbone

پس از تشکیل Neighbor، هر روتر شبکه LAN سمت مقابل را به‌صورت Dynamic یاد می‌گیرد.

برای مشاهده Neighborها:

/routing ospf neighbor print

برای مشاهده Routeهای OSPF:

/ip route print where ospf

در شبکه عملیاتی باید Authentication، نوع Network، Cost، Interface Template، Route Filtering و جلوگیری از تشکیل Neighbor روی Interfaceهای غیرمجاز نیز بررسی شوند.

BGP در میکروتیک چه کاربردی دارد؟

BGP برای تبادل Prefix میان Autonomous Systemهای مستقل طراحی شده است و پروتکل اصلی مسیریابی اینترنت محسوب می‌شود.

کاربردهای رایج BGP در میکروتیک عبارت‌اند از:

  • اتصال ISP به بالادست
  • استفاده از چند سرویس‌دهنده اینترنت
  • اعلام Public Prefix
  • اعمال سیاست روی مسیرهای ورودی و خروجی
  • راه‌اندازی Route Reflector
  • پیاده‌سازی MPLS VPN و VRF
  • دریافت Full Route یا Default Route از Provider

BGP برای یک شبکه کوچک داخلی که فقط به تبادل چند Subnet نیاز دارد، معمولاً انتخاب مناسبی نیست. در چنین شرایطی Static Route یا OSPF ساده‌تر خواهد بود.

RIP در میکروتیک چه کاربردی دارد؟

RIP یک پروتکل Distance Vector است که Metric آن براساس تعداد Hop محاسبه می‌شود. مسیر دارای بیش از ۱۵ Hop در RIP غیرقابل دسترسی در نظر گرفته می‌شود.

این پروتکل پیکربندی ساده‌ای دارد، اما به دلیل محدودیت مقیاس، همگرایی کندتر و امکانات کمتر، در شبکه‌های جدید معمولاً OSPF جایگزین مناسب‌تری است.

RIP بیشتر در شبکه‌های قدیمی، آزمایشگاه‌های آموزشی یا تجهیزات Legacy دیده می‌شود.

مسیریابی IPv6 در MikroTik

RouterOS برای IPv6 جدول مسیریابی جداگانه دارد. Routeهای IPv6 از مسیر زیر مشاهده می‌شوند:

/ipv6 route print

Default Route در IPv6 با Prefix زیر نمایش داده می‌شود:

::/0

نمونه ایجاد Default Route:

/ipv6 route
add dst-address=::/0 \
 gateway=2001:db8:100::1

اگر Gateway از نوع Link-Local باشد، باید Interface مربوط نیز مشخص شود:

/ipv6 route
add dst-address=::/0 \
 gateway=fe80::1%ether1

تنظیم Firewall و Routing مربوط به IPv4 به‌صورت خودکار IPv6 را پوشش نمی‌دهد و هر دو باید جداگانه طراحی شوند.

Blackhole Route چیست؟

Blackhole Route بسته‌های منطبق را بدون ارسال پاسخ حذف می‌کند. این Route در Summarization، جلوگیری از Loop و بعضی طراحی‌های BGP کاربرد دارد.

نمونه:

/ip route
add dst-address=192.168.0.0/16 \
 type=blackhole \
 distance=254 \
 comment="Summary protection route"

اگر Route اختصاصی‌تری برای یکی از Subnetهای داخل این محدوده وجود داشته باشد، به دلیل Longest Prefix Match همان Route اختصاصی انتخاب می‌شود. سایر مقصدهای داخل Summary توسط Blackhole حذف خواهند شد.

تفاوت Blackhole، Unreachable و Prohibit

  • Blackhole: بسته را بدون پاسخ حذف می‌کند.
  • Unreachable: بسته را حذف و پیام ICMP Unreachable ارسال می‌کند.
  • Prohibit: بسته را حذف و پیام ICMP Administratively Prohibited ایجاد می‌کند.

تأثیر Firewall بر Routing

وجود Route به معنای مجازبودن ترافیک نیست. Routing فقط مسیر ارسال بسته را تعیین می‌کند؛ Firewall تصمیم می‌گیرد بسته اجازه عبور داشته باشد یا خیر.

برای ارتباط میان شبکه‌ها باید زنجیره Forward بررسی شود:

/ip firewall filter print where chain=forward

نمونه اجازه ارتباط یک‌طرفه از شبکه اول به شبکه دوم:

/ip firewall filter
add chain=forward \
 src-address=192.168.10.0/24 \
 dst-address=192.168.20.0/24 \
 action=accept \
 comment="Allow LAN1 to LAN2"

Rule باید پیش از قوانین Drop عمومی قرار گیرد. ترتیب Firewall در RouterOS اهمیت دارد.

ابزارهای عیب‌یابی Routing در میکروتیک

بررسی جدول Route

/ip route print detail

بررسی Next Hop واقعی

/routing route print detail
/routing nexthop print

تست Ping

/ping 192.168.20.1

تست از یک آدرس مبدأ مشخص

/ping 192.168.20.1 src-address=192.168.10.1

تست یک Routing Table خاص

/ping 8.8.8.8 routing-table=to_ISP2

مشاهده مسیر عبور بسته

/tool traceroute 192.168.20.10

بررسی Connection Tracking

/ip firewall connection print

مشاهده بسته‌ها با Torch

/tool torch interface=ether2

ضبط ترافیک

/tool sniffer quick interface=ether2

چرا Static Route غیرفعال یا Inactive می‌شود؟

دلایل رایج عبارت‌اند از:

  • Gateway در هیچ Connected Network قابل دسترسی نیست.
  • Interface مربوط به Gateway غیرفعال است.
  • آدرس IP یا Subnet Mask لینک اشتباه است.
  • Scope و Target Scope به‌درستی تنظیم نشده‌اند.
  • Routing Table اختصاصی نمی‌تواند Gateway را Resolve کند.
  • Check Gateway مقصد را Down تشخیص داده است.
  • Route دارای تنظیمات ناقص یا ناسازگار است.

چرا Ping روتر مقابل برقرار است اما شبکه پشت آن باز نمی‌شود؟

این مشکل معمولاً نشان می‌دهد لینک مستقیم دو روتر سالم است، اما Route مربوط به شبکه دور یا مسیر برگشت وجود ندارد.

موارد زیر را بررسی کنید:

  • Static Route رفت روی روتر اول
  • Return Route روی روتر دوم
  • Default Gateway کلاینت‌ها
  • Firewall Forward هر دو روتر
  • Firewall سیستم مقصد
  • عدم وجود NAT نامناسب
  • عدم تداخل IP Addressها

چرا Route وجود دارد اما ترافیک از Gateway دیگری خارج می‌شود؟

دلایل احتمالی عبارت‌اند از:

  • وجود Route اختصاصی‌تر با Prefix طولانی‌تر
  • وجود Routing Rule
  • وجود Routing Mark در Mangle
  • فعال‌بودن PCC یا Load Balancing
  • وجود Route Dynamic با اولویت بیشتر
  • قرارداشتن Route در جدول غیر از Main
  • FastTrack شدن Connection

برای بررسی Routing Markها:

/ip firewall mangle print
/ip firewall connection print detail

چرا اینترنت دوم در Failover فعال نمی‌شود؟

موارد زیر را بررسی کنید:

  • Distance اینترنت دوم باید بیشتر از مسیر اصلی باشد.
  • Gateway مسیر دوم باید قابل دسترسی باشد.
  • برای ISP دوم NAT مناسب وجود داشته باشد.
  • Interface دوم عضو لیست WAN باشد.
  • DNS فقط به مسیر قطع‌شده وابسته نباشد.
  • Routeهای Recursive به‌درستی Resolve شوند.
  • Connectionهای قبلی ممکن است پس از تغییر مسیر نیاز به ایجاد مجدد داشته باشند.

اشتباهات رایج در مسیریابی میکروتیک

تعریف Route فقط در یک سمت

بدون Return Route، درخواست به مقصد می‌رسد اما پاسخ مسیر برگشت مناسبی ندارد.

استفاده از Interface به‌عنوان Gateway روی Ethernet

برای مقصدهای چند Hop دور، بهتر است IP روتر بعدی به‌عنوان Gateway تعیین شود.

استفاده از NAT به‌جای Route

NAT جایگزین Routing نیست. ابتدا مسیر رفت و برگشت باید صحیح باشد.

تنظیم Distance بدون توجه به Prefix

Route اختصاصی‌تر حتی با Distance بیشتر می‌تواند نسبت به Default Route انتخاب شود.

بازکردن دسترسی با Route بدون بررسی Firewall

Route فقط مسیر را ایجاد می‌کند و قوانین Firewall همچنان می‌توانند ترافیک را مسدود کنند.

ترکیب Routing Rule و Mangle بدون طراحی

Routing Markهای Mangle می‌توانند نسبت به Ruleها اولویت داشته باشند و نتیجه غیرمنتظره ایجاد کنند.

استفاده از Check Gateway فقط برای مودم

پاسخ‌دادن مودم به Ping لزوماً به معنای سالم‌بودن اینترنت بعد از مودم نیست.

استفاده از BGP برای شبکه داخلی ساده

برای تبادل چند شبکه داخلی، OSPF یا Static Route معمولاً ساده‌تر و مناسب‌تر است.

معرفی EIGRP به‌عنوان پروتکل قابل استفاده در RouterOS

RouterOS از EIGRP پشتیبانی نمی‌کند. برای Dynamic Routing داخلی می‌توان از OSPF یا در شبکه‌های قدیمی از RIP استفاده کرد.

چک‌لیست تنظیم Static Route

  1. رنج IP شبکه مبدأ و مقصد را مشخص کنید.
  2. آدرس لینک بین روترها را بررسی کنید.
  3. Gateway باید از روتر فعلی قابل Ping باشد.
  4. Route رفت را روی روتر مبدأ تعریف کنید.
  5. Route برگشت را روی روتر مقصد تعریف کنید.
  6. Default Gateway کلاینت‌ها را بررسی کنید.
  7. قوانین Firewall Forward را کنترل کنید.
  8. NAT غیرضروری میان شبکه‌های داخلی را حذف کنید.
  9. Route فعال و دارای Flag مناسب باشد.
  10. با Ping دارای Source Address و Traceroute مسیر را آزمایش کنید.
  11. پس از اطمینان از صحت تنظیمات، Backup و Export تهیه کنید.

سؤالات متداول درباره Routing در میکروتیک

مسیریابی در میکروتیک چیست؟

مسیریابی فرایند انتخاب مسیر مناسب برای انتقال بسته‌های IP میان شبکه‌های مختلف است. RouterOS این تصمیم را با استفاده از جدول Route انجام می‌دهد.

جدول Route میکروتیک کجاست؟

در WinBox از مسیر IP > Routes و در ترمینال با دستور /ip route print قابل مشاهده است.

Static Route چیست؟

Static Route مسیری است که مدیر شبکه به‌صورت دستی با مشخص‌کردن مقصد و Gateway ایجاد می‌کند.

Connected Route چیست؟

Connected Route به‌صورت خودکار برای شبکه IP متصل به یک Interface فعال ایجاد می‌شود.

Default Route در میکروتیک چیست؟

Route با مقصد 0.0.0.0/0 است که برای مقصدهای فاقد مسیر اختصاصی استفاده می‌شود.

Distance چه کاربردی دارد؟

Distance اولویت میان Routeهای دارای مقصد یکسان را تعیین می‌کند. مقدار کمتر دارای اولویت بیشتر است.

چرا Route من Inactive است؟

معمولاً Gateway قابل دسترسی نیست، Interface خاموش است، Route در جدول اشتباه قرار دارد یا Scope و Target Scope به‌درستی تنظیم نشده‌اند.

آیا برای ارتباط دو شبکه داخلی NAT لازم است؟

خیر. در حالت استاندارد، Route رفت و برگشت و Firewall مناسب کافی است.

تفاوت Static Route و Dynamic Route چیست؟

Static Route به‌صورت دستی تعریف می‌شود، اما Dynamic Route توسط پروتکل‌هایی مانند OSPF، RIP یا BGP دریافت می‌شود.

آیا میکروتیک از EIGRP پشتیبانی می‌کند؟

خیر. EIGRP در RouterOS پشتیبانی نمی‌شود. برای مسیریابی داخلی معمولاً OSPF استفاده می‌شود.

Policy Routing چه کاربردی دارد؟

Policy Routing اجازه می‌دهد مسیر ترافیک علاوه بر مقصد، براساس مبدأ، Interface ورودی یا Routing Mark انتخاب شود.

ECMP چیست؟

ECMP امکان استفاده از چند Next Hop هم‌ارزش برای یک مقصد را فراهم می‌کند.

Recursive Routing چه کاربردی دارد؟

Recursive Routing برای Resolve کردن Gateway از طریق Route دیگر استفاده می‌شود و در Failover پیشرفته چند اینترنت کاربرد دارد.

OSPF بهتر است یا Static Route؟

برای شبکه کوچک و ثابت، Static Route ساده‌تر است. در شبکه دارای چند روتر و مسیرهای متغیر، OSPF مدیریت و همگرایی بهتری ارائه می‌دهد.

برای تست یک Routing Table خاص چه دستوری استفاده کنیم؟

می‌توان از دستور Ping همراه با پارامتر Routing Table استفاده کرد:

/ping 8.8.8.8 routing-table=to_ISP2

جمع‌بندی

مسیریابی در میکروتیک فرایند انتخاب بهترین مسیر برای انتقال بسته‌ها میان شبکه‌های مختلف است. RouterOS اطلاعات مسیر را در RIB نگهداری کرده و بهترین Routeهای فعال را برای Forward کردن بسته‌ها در FIB قرار می‌دهد.

Connected Routeها به‌صورت خودکار ایجاد می‌شوند، در حالی که Static Routeها توسط مدیر شبکه تعریف می‌شوند. در شبکه‌های بزرگ‌تر نیز می‌توان از پروتکل‌های Dynamic Routing مانند OSPF، RIP و BGP استفاده کرد.

در انتخاب Route، ابتدا اختصاصی‌ترین Prefix و سپس وضعیت Gateway و Distance مسیرهای هم‌مقصد بررسی می‌شود. Routeهای هم‌ارزش نیز می‌توانند در قالب ECMP استفاده شوند.

RouterOS امکانات پیشرفته‌ای مانند Policy Routing، چند Routing Table، Recursive Routing، Failover و VRF را نیز ارائه می‌دهد. این قابلیت‌ها امکان مدیریت چند اینترنت، تفکیک مسیر کاربران و طراحی شبکه‌های پیچیده را فراهم می‌کنند.

برای پیاده‌سازی صحیح، تنها ایجاد Route کافی نیست. مسیر برگشت، Firewall، NAT، Gateway کلاینت‌ها، Scope، Routing Table و رفتار Connection Tracking نیز باید بررسی شوند. مستندسازی Routeها و استفاده از ابزارهایی مانند Ping، Traceroute، Torch و Routing Route Detail می‌تواند عیب‌یابی شبکه را سریع‌تر و دقیق‌تر کند.