شبکه / میکروتیک

RouterOS 7 در برابر RouterOS 6: تغییرها و آپدیت میکروتیک

RouterOS 7 در برابر 6؛ تغییر OSPF، BGP و routing filter، WireGuard و container، لایسنس و مسیر آپدیت میکروتیک از v6 به v7 با نسخه‌ی میانی 7.12.1.

نوشته‌ی تیم پیکوگاید ۱۰ دقیقه مطالعه
در این صفحه
  1. مقایسه‌ی کلی
  2. مسیریابی: بیشترین تغییر
  3. جدول‌ها و policy routing
  4. OSPF
  5. BGP
  6. routing filter
  7. قابلیت‌های تازه‌ی v7
  8. لایسنس
  9. آپدیت میکروتیک از v6 به v7
  10. پیش از ارتقا
  11. مراحل
  12. بعد از ارتقا
  13. چه چیزهایی منتقل نمی‌شود یا توجه می‌خواهد
  14. کدام را انتخاب کنیم

RouterOS 7 روی kernel جدید لینوکس ساخته شده و بیشترین تغییرش در مسیریابی است: OSPF و BGP منو و ساختار تازه دارند، routing filterها به زبان شبیه اسکریپت نوشته می‌شوند و جدول مسیریابی جدید باید اول ساخته شود. WireGuard، container، REST API، NAT برای IPv6 و VXLAN فقط در v7 هستند. طبق جدول سازگاری MikroTik، فایروال، صف‌ها، bridge و switching و PPP بدون مرحله‌ی اضافه ارتقا پیدا می‌کنند و در بیشتر دستگاه‌ها کانفیگ هنگام ارتقا خودکار تبدیل می‌شود. لایسنس عوض نمی‌شود. برای آپدیت میکروتیک از v6، اول به آخرین نسخه‌ی v6 بروید، backup و export بگیرید و از کانال upgrade نسخه‌ی میانی 7.12.1 را نصب کنید؛ بعد از آن نسخه‌های جدید v7 در کانال‌های stable و long-term دیده می‌شوند.

مقایسه‌ی کلی

موضوع RouterOS 6 RouterOS 7
OSPF منوهای جدا برای OSPFv2 و OSPFv3 یک منوی /routing ospf برای هر دو؛ بدون instance و area پیش فرض؛ interface-template
priority پیش فرض OSPF 1 128
BGP منوهای instance، peer و network template، connection و session؛ شبکه‌ها از address list
routing filter پارامترهای جدا (prefix=، action=) قانون شبیه اسکریپت: if (...) { accept }
جدول مسیریابی جدید لازم نبود جدا ساخته شود باید با /routing table add ... fib ساخته شود
routing rule /ip route rule /routing rule
WireGuard، container، REST API، NAT برای IPv6، VXLAN ندارد دارد
بی‌سیم پکیج wireless wireless (از 7.13 پکیج جدا) و منوی جدید wifi برای Wi-Fi 5 wave2 و جدیدتر
CLI مسیر با فاصله (/ip address print) همان کار می‌کند، به علاوه‌ی مسیر با / (/ip/address/print)
لایسنس سطح‌های 0 تا 6 و سطح‌های جدای CHR همان

مسیریابی: بیشترین تغییر

جدول‌ها و policy routing

در v6 کافی بود در mangle یک routing-mark بزنید و route با همان routing-mark بسازید. در v7 جدول باید پیش از هر ارجاعی ساخته شود و برای این که routeهایش وارد FIB شوند، fib لازم است:

/routing table add name=to-isp2 fib
/ip route add dst-address=0.0.0.0/0 gateway=198.51.100.1 routing-table=to-isp2
/ip firewall mangle add chain=prerouting in-interface=bridge-lan dst-address-type=!local action=mark-routing new-routing-mark=to-isp2

dst-address-type=!local را فراموش نکنید. طبق مستندات، قانون mangle در v7 پیش از lookup جدول local اجرا می‌شود و اگر ترافیک به سمت خود روتر هم mark شود، IPهای روتر از LAN در دسترس نیستند. همین تغییر روی load balancing با PCC و failover اثر دارد. منوی /routing route همه‌ی routeها را با جزئیات نشان می‌دهد و /ip route برای افزودن route استاتیک می‌ماند.

OSPF

v7 هیچ instance و area پیش فرضی ندارد و OSPF روی interfaceهایی فعال می‌شود که با یک template جور شوند:

/routing ospf instance add name=default-v2 version=2 router-id=10.255.0.1
/routing ospf area add name=backbone area-id=0.0.0.0 instance=default-v2
/routing ospf interface-template add area=backbone networks=10.0.12.0/30
/routing ospf interface-template add area=backbone interfaces=bridge-lan passive

منوهای interface و neighbor فقط برای نمایش وضعیت‌اند. کنترل redistribute با پارامتر redistribute روی instance و فیلتر خروجی (out-filter-chain) انجام می‌شود. یک نکته‌ی عملی: priority پیش فرض برای انتخاب DR در v7 برابر 128 است و در v6 برابر 1 بود. اگر در شبکه‌ی قدیمی با priority دستی DR را تعیین کرده بودید، بعد از ارتقا نتیجه‌ی انتخاب ممکن است عوض شود. توضیح DR و area در OSPF از صفر آمده است.

BGP

منوهای instance و peer حذف شده‌اند. تنظیمات پروتکل در template و مشخصات اتصال در connection است و session وضعیت همسایه‌ها را نشان می‌دهد. local.role (مثلاً ebgp یا ibgp) اجباری است و AS طرف مقابل اختیاری. منوی network هم نیست:

/ip firewall address-list add list=bgp-networks address=203.0.113.0/24
/ip route add dst-address=203.0.113.0/24 blackhole
/routing bgp connection add name=isp1 as=64500 remote.address=198.51.100.1 remote.as=64501 local.role=ebgp connect=yes listen=yes output.network=bgp-networks

طبق مستندات، شبکه فقط وقتی اعلام می‌شود که route متناظرش در جدول مسیریابی باشد و این همگام سازی در v7 خاموش شدنی نیست. برای عیب یابی از /routing bgp session print و /routing stats استفاده کنید.

routing filter

قانون‌ها حالا شرط و عمل دارند. معادل v7 یک قانون v6:

# v6
/routing filter add chain=ospf_in prefix=172.16.0.0/16 prefix-length=24 protocol=static action=accept
# v7
/routing filter rule add chain=ospf_in rule="if (dst in 172.16.0.0/16 && dst-len==24 && protocol static) { accept }"

prefix listهای v6 منسوخ شده‌اند و همه‌ی فیلترها باید با routing filter نوشته شوند. هنگام ارتقا، گزینه‌ای که v7 پشتیبانی نمی‌کند به یک قانون خالی تبدیل می‌شود؛ پس بعد از ارتقا همه‌ی chainها را خط به خط بررسی کنید.

قابلیت‌های تازه‌ی v7

  • WireGuard: VPN سبک با کلید عمومی؛ پورت پیش فرض 13231. برای تونل بین دو روتر یا دسترسی مدیرها کانفیگی کوتاه‌تر از IPsec دارد.
  • container: اجرای image از Docker Hub و مخزن‌های مشابه روی معماری arm، arm64 و x86. پکیج container جداست و فعال کردنش به دسترسی فیزیکی نیاز دارد (/system/device-mode/update container=yes و بعد فشار دادن دکمه یا قطع برق). مستندات MikroTik صریحاً می‌گوید هر container سطح حمله‌ی روتر را بالا می‌برد و برای استخراج image دیسک خارجی سریع توصیه می‌کند.
  • device-mode: از 7.17، دستگاه‌ها با یکی از حالت‌های home، basic، advanced یا rose عرضه می‌شوند و برخی قابلیت‌ها (مثل container) در همه‌ی حالت‌ها خاموش‌اند. device-mode فهرستی به نام allowed-versions دارد و نصب نسخه‌ی پایین‌تر از آن را اجازه نمی‌دهد؛ این روی برگشت به v6 هم اثر دارد.
  • Wi-Fi: منوی wifi (پیش از 7.13 با نام wifiwave2) با درایورهای wifi-qcom-ac برای Wi-Fi 5 و wifi-qcom برای Wi-Fi 6 و جدیدتر. در برخی APهای Wi-Fi 5 با پردازنده‌ی ARM می‌توانید پکیج wireless را حذف و wifi-qcom-ac را نصب کنید؛ این درایور RAM بیشتری مصرف می‌کند و بعد از آن، اینترفیس‌ها در منوی /interface/wifi پیکربندی می‌شوند.
  • موارد دیگر: REST API، صدور گواهی Let's Encrypt، صف‌های CAKE و FQ_Codel، VRRP با همگام سازی connection tracking، L2TPv3، OpenVPN روی UDP و hardware offload برای VLAN filtering روی switch chip RTL8367 (مثل RB4011) و MT7621 (مثل hEX).

bridge و switching طبق جدول سازگاری MikroTik بدون مرحله‌ی اضافه ارتقا پیدا می‌کنند؛ پیکربندی VLAN روی bridge در v7 را در VLAN روی bridge میکروتیک ببینید. طبق مستندات، kernel جدید route cache ندارد و برخی کارها ممکن است CPU و RAM بیشتری مصرف کنند؛ روی روترهای کوچک و پرترافیک، بعد از ارتقا مصرف منابع را بسنجید.

لایسنس

سطح لایسنس روی روترهای MikroTik با ارتقا تغییر نمی‌کند و طبق صفحه‌ی لایسنس، همه‌ی لایسنس‌ها ارتقای نرم افزار را بدون محدودیت دارند. دو استثنا: لایسنس demo روی x86 از 7.8 اجازه‌ی ارتقای نسخه نمی‌دهد، و CHR سطح‌های لایسنس جداگانه‌ی خودش را دارد. در دستگاه‌های wifi-qcom، حالت AP و PtMP به سطح لایسنس وابسته نیست. جزئیات سطح‌ها در راهنمای جامع میکروتیک آمده است.

آپدیت میکروتیک از v6 به v7

پیش از ارتقا

  1. RAM و فضای خالی: با /system resource print مقدار total-memory و free-hdd-space را ببینید. MikroTik اجرای v7 روی سخت افزار با کمتر از 64 MB RAM را توصیه نمی‌کند.
  2. آخرین v6: مستندات می‌گوید اول به آخرین نسخه‌ی stable یا long-term شاخه‌ی v6 بروید.
  3. backup و export: هر دو را بگیرید و از روتر خارج کنید. backup برای برگشت روی همان دستگاه و همان نسخه است و export برای خواندن و مقایسه‌ی کانفیگ (فرق backup و export). بعد از ارتقا، export در v7 رمزها و کلیدها را به طور پیش فرض نشان نمی‌دهد و برای آن‌ها show-sensitive لازم است.
/system backup save name=before-v7 password=<strong-password>
/export file=before-v7
  1. دسترسی خارج از شبکه: برای روتر دوردست، دسترسی کنسول یا یک نفر در محل داشته باشید. مسیر ارتقا چند ریبوت دارد و طبق جدول سازگاری MikroTik، BGP، OSPF، MPLS و routing filterها بعد از ارتقا بررسی لازم دارند.
  2. آزمایش: اگر BGP، routing filter یا MPLS دارید، export را روی یک CHR با همان نسخه‌ی v6 وارد کنید و CHR را به v7 ارتقا دهید. تبدیل کانفیگ هنگام ارتقا انجام می‌شود، پس نتیجه‌ی آن را پیش از روتر اصلی می‌بینید.

مراحل

# روی v6: رفتن به آخرین long-term
/system package update set channel=long-term
/system package update check-for-updates
/system package update install
# بعد از ریبوت: نسخه‌ی میانی v7
/system package update set channel=upgrade
/system package update check-for-updates
/system package update install

از v6، کانال upgrade فقط نسخه‌ی 7.12.1 را نشان می‌دهد. بعد از ریبوت روی 7.12.1، کانال را stable یا long-term کنید و دوباره check-for-updates و install را بزنید تا به 7.24.4 یا 7.23.7 برسید. check-for-updates پکیج‌های اضافه‌ی نصب شده را هم در نظر می‌گیرد. در ارتقای دستی (آپلود فایل .npk) از 7.13 به بعد روی دستگاه بی‌سیم، علاوه بر پکیج routeros، پکیج درایور بی‌سیم را هم آپلود کنید. از 7.23 دریافت به روزرسانی از HTTPS است و خود روتر باید به TCP پورت 443 سرورهای MikroTik دسترسی داشته باشد.

بعد از رسیدن به نسخه‌ی نهایی، RouterBOOT را هم ارتقا دهید:

/system routerboard upgrade
/system reboot

بعد از ارتقا

/log print
/routing ospf neighbor print
/routing bgp session print
/routing filter rule print
/interface print

همسایه‌های OSPF باید به وضعیت Full برسند (بین دو DROther وضعیت 2-Way عادی است) و sessionهای BGP باید established باشند.

چه چیزهایی منتقل نمی‌شود یا توجه می‌خواهد

  • PIM-SM: کانفیگ آن حفظ نمی‌شود و باید در /routing/pimsm از نو ساخته شود؛ پکیج multicast دیگر لازم نیست.
  • User Manager: نسخه‌ی v7 از نو نوشته شده و رابط وب مدیریتی ندارد. مهاجرت مستقیم ممکن نیست و پایگاه داده‌ی قدیمی را با /user-manager/database/migrate-legacy-db منتقل می‌کنید؛ مستندات شروع از صفر را هم گزینه‌ی خوبی می‌داند. اگر هات اسپات شما به User Manager وصل است، این مرحله را جدا برنامه ریزی کنید.
  • routing filterهای پشتیبانی نشده: به قانون خالی تبدیل می‌شوند.
  • MPLS: مستندات ارتقای آن را با احتیاط و فقط بعد از backup توصیه می‌کند.
  • پکیج‌های LCD و KVM: در v7 حذف شده‌اند.
  • تبدیل فقط یک بار انجام می‌شود: اگر به v6 برگردید، کانفیگ را تغییر دهید و دوباره به v7 بروید، کانفیگ مسیریابی همان نسخه‌ای است که پیش از برگشت در v7 بود. برای تبدیل دوباره، backup نسخه‌ی v6 را با force-v6-to-v7-configuration-upgrade=yes بارگذاری کنید.

کدام را انتخاب کنیم

وضعیت پیشنهاد
روتر با کمتر از 64 MB RAM روی آخرین v6 long-term بماند؛ patchهای امنیتی را نصب کنید و برنامه‌ی جایگزینی سخت افزار داشته باشید
روتر دفتر کوچک با فایروال، NAT، DHCP و VLAN ارتقا به v7 long-term؛ تغییر کانفیگ کمی لازم است
شبکه با OSPF، BGP یا policy routing ارتقا بعد از تست روی CHR و بازنویسی filterها، در پنجره‌ی نگهداری
نیاز به WireGuard یا container فقط v7
دستگاه تازه یا سرویس جدید v7؛ برای روتر عملیاتی کانال long-term و برای قابلیت‌های تازه stable

اگر تازه با میکروتیک شروع می‌کنید، مستقیم روی v7 کار کنید و کانفیگ اولیه‌ی روتر میکروتیک را که برای RouterOS 7 نوشته شده دنبال کنید.

منابع

  1. MikroTik Documentation — Upgrading to v7 help.mikrotik.com
  2. MikroTik Documentation — Moving from ROSv6 to v7 with examples help.mikrotik.com
  3. MikroTik Documentation — Upgrading and installation help.mikrotik.com
  4. MikroTik Documentation — Packages help.mikrotik.com
  5. MikroTik Documentation — routing ospf help.mikrotik.com
  6. MikroTik Documentation — Container help.mikrotik.com
  7. MikroTik Documentation — Device-mode help.mikrotik.com
  8. MikroTik Documentation — WiFi help.mikrotik.com
  9. MikroTik Documentation — RouterOS license keys help.mikrotik.com
  10. MikroTik Documentation — Backup help.mikrotik.com
  11. MikroTik Documentation — Configuration Management help.mikrotik.com
  12. RouterOS 7.24.4 changelog download.mikrotik.com
  13. RouterOS 7.23.7 changelog download.mikrotik.com
  14. RouterOS 6.49.22 changelog download.mikrotik.com