Iran Router — Packages Guide
MikroTik Documentation

RouterOS Packages

RouterOS separates features into packages with the .npk extension. Most core functionality is delivered through the main routeros package, while optional features such as containers, Dude, GPS, IoT, ZeroTier, User Manager, wireless drivers, and storage tools are provided as separate packages.

Summary

Core package model Packages are provided only by MikroTik. Third parties are not allowed to create RouterOS packages.

Extra packages can be downloaded from the MikroTik download page, and since RouterOS v7.18 they can also be added directly from the router.

Minimum requirement

System required At bare minimum, RouterOS needs the system package to run.

For most devices and normal operation, MikroTik recommends using the routeros bundle package.

Wireless note

Hardware-specific Wireless devices need different packages depending on the radio generation and platform.

Starting from v7.13, basic home-router operation needs the routeros package plus either a modern WiFi driver package or the classic wireless package.

Minimum requirements

Base package

The system package is the minimum required component for RouterOS to operate.

For real-world use, install the full routeros bundle package instead of running only the bare minimum.

Wireless devices

  • Starting with RouterOS 7.13, simple home-router setups need routeros and one wireless driver package.
  • 802.11ax WiFi APs require wifi-qcom. Before 7.13 this package was called wifiwave2.
  • Previous-generation WiFi APs require the wireless package.

Important note

Other packages are optional. They are not required for a normal home router and should only be installed when their purpose is clearly understood.

Installing packages

Manual download

  1. Open the MikroTik download page.
  2. Select the RouterOS section for your device architecture.
  3. Find your architecture in System → Resources.
  4. Extract the downloaded archive.
  5. Upload the needed package to the router.
  6. Reboot the router to install it.

Download directly from the router

Available since RouterOS 7.18 in the System → Packages section.
  1. Run Check For Updates.
  2. Available packages will appear in the package list as disabled/available.
  3. Select the needed package and click Enable.
  4. Click Apply Changes.
  5. Confirm the reboot so the router downloads and installs it.

Verification of install

  1. After reboot, open the RouterOS log.
  2. Check for a success message confirming the package was installed.
  3. If there is a conflict or missing requirement, RouterOS will explain it in the log.
  4. Fix the dependency issue, then retry the installation.
The log is the authoritative place to confirm success or diagnose package-install problems.

System packages

Package Architecture Description
routeros-armarmSystem package for ARM devices.
routeros-armarm64System package for ARM64 devices.
routeros-mipsbemipsbeSystem package for MIPSBE devices.
routeros-mmipsmmipsSystem package for MMIPS devices.
routeros-smipssmipsSystem package for SMIPS devices.
routeros-tiletileSystem package for TILE devices.
routeros-ppcppcSystem package for PPC devices.
routerosx86, CHRSystem package for x86 installations and the CHR environment.

Extra packages

Package Supported architecture Description
caleaarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRData gathering tool for specific use cases related to the Communications Assistance for Law Enforcement Act in the USA.
containerarm, arm64, x86, CHRLinux container implementation for running containerized environments inside RouterOS.
dudearm, arm64, mmips, tile, x86, CHRNetwork monitoring tool.
extra-nicarm64Additional NIC support for ARM64, recommended for UEFI installs on non-MikroTik boards.
gpsarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRGlobal Positioning System device support.
iotarm, arm64, mipsbe, mmips, tile, ppc, x86, CHREnables MQTT, LoRa (with LR8/LR9/LR2 miniPCIe cards), Bluetooth (with supported chips), GPIO, and Modbus.
iot-bt-extraarm, arm64Enables supported USB Bluetooth adapters for ARM/ARM64 devices. LE 4.0+ support required and compatibility is not guaranteed for every adapter.
loraarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRCompatibility package. LoRa functionality has moved into the iot package and this package remains mainly for legacy compatibility.
ltemipsbeRequired only for the SXT LTE (RBSXTLTE3-7) because it includes drivers for the built-in LTE interface.
rose-storagearm, arm64, tile, x86, CHREnterprise data-center storage features including disk monitoring, improved formatting, RAID, rsync, iSCSI, NVMe over TCP, NFS, and improved SMB.
switch-marvellarm64Mandatory driver package for CRS8xx series switches.
tr069-clientarm, arm64, mipsbe, mmips, smips, tile, ppc, x86, CHRTR-069 client package.
upsarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRAPC UPS management interface.
user-managerarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRMikroTik User Manager server for controlling Hotspot and other service users.
wifi-qcomarm, arm64Mandatory driver package for 802.11ax interfaces. Introduced in 7.13. Wifi CAPsMAN support comes with the system package.
wifi-qcom-acarmOptional WiFi driver package for compatible 802.11ac interfaces. Introduced in 7.13.
wirelessarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRUtilities and drivers for WiFi up to 802.11ac and 60GHz wireless interfaces. Bundled up to 7.12 and separate since 7.13.
zerotierarm, arm64Enables ZeroTier functionality.
The wireless package conflicts with wifi-qcom and wifi-qcom-ac. They cannot be active at the same time.

Working with packages

Menu Command / function Description
/system packagedisableSchedules the package to be disabled after the next reboot. Features from that package become unavailable.
/system packagedowngradePrompts for reboot and tries to downgrade RouterOS to the oldest version possible based on packages uploaded to the router.
/system packageenableSchedules the package to be enabled after the next reboot.
/system packageuninstallSchedules the package to be removed from the router during reboot.
/system packageunscheduleRemoves a scheduled task for the package.
/system packageprintShows package information such as version, state, and planned changes.
/system packageupdateManages the check-for-updates channel and performs RouterOS upgrades.
/system packageapply-changesApplies scheduled changes and reboots the device.
/system/check-installationcheck installationVerifies file readability and placement to confirm NAND/Flash storage health and integrity.
/system/package/updateinstall ignore-missingUpgrades only the main RouterOS package while omitting packages that are missing or not uploaded during manual upgrade.
Changes inside /system package only take effect after reboot. Until then, they can be scheduled or reverted.

Auto install

You can automatically install packages after uploading them through FTP or SFTP.

  1. Rename the package file so it ends with .auto.npk.
  2. Upload it to the router.
  3. The router will automatically reboot to install the package.
The .auto.npk extension is mandatory. Without it, auto-install will not trigger.

Local update

Purpose

Instead of connecting directly to MikroTik servers, one RouterOS device can host package files and act as a local package server for other routers.

/system package local-update commands

  • download-all — Downloads all compatible packages from the local server and stores them in the root directory.
  • download — Downloads specific compatible packages from the local server and stores them in the root directory.
  • refresh — Refreshes the list of compatible packages available on the local package server.

Package source properties

  • address — IP address of the local package server.
  • user — Username used to access the local package server.
  • password — Password used to access the local package server.
Mirror property Description
primary-serverAddress of the primary local package server.
secondary-serverAddress of the secondary local package server.
userUsername for accessing the local package server.
passwordPassword for accessing the local package server.
check-intervalHow often the device checks the package server for new packages and downloads only those not already present.
enabledControls whether periodic checking and downloading from the local package server is enabled.
force-checkImmediately checks for new packages and downloads any not already present on the device.
Mirrored packages are saved into the packs folder in the root directory.

Examples

Listing packages

Example state: zerotier is disabled but installed, iot is available but not downloaded, and dude is scheduled for uninstall.
/system package print
Flags: X - DISABLED
Columns: NAME, VERSION, SCHEDULED
#    NAME      VERSION  SCHEDULED
0    dude      7.9      scheduled for uninstall
1 X  zerotier  7.9
2    routeros  7.9
3 XA iot       7.9

Uninstall package

/system package uninstall dude; /system reboot;
Reboot, yes? [y/N]:

Disable package

/system package disable zerotier; /system reboot;
Reboot, yes? [y/N]:

Downgrade

/system package downgrade; /system reboot;
Reboot, yes? [y/N]:

Cancel uninstall or disable action

/system package unschedule zerotier;
/system package unschedule dude;
مستندات میکروتیک

پکیج‌های RouterOS

در RouterOS قابلیت‌ها به صورت پکیج‌های .npk ارائه می‌شوند. بیشتر امکانات اصلی داخل پکیج routeros قرار دارند و امکانات اختیاری مثل Container، Dude، GPS، IoT، ZeroTier، User Manager، درایورهای وایرلس و ابزارهای ذخیره‌سازی به صورت پکیج جدا عرضه می‌شوند.

خلاصه

مدل پکیج پکیج‌های RouterOS فقط توسط MikroTik ارائه می‌شوند و ساخت پکیج توسط شخص ثالث مجاز نیست.

پکیج‌های اضافه را می‌توان از صفحه دانلود MikroTik گرفت و از نسخه 7.18 به بعد مستقیماً از خود روتر هم دریافت و نصب کرد.

حداقل نیازمندی

پکیج سیستمی برای بالا آمدن RouterOS حداقل به پکیج سیستمی نیاز است.

برای استفاده عادی، پکیج باندل routeros پیشنهاد می‌شود.

نکته وایرلس

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

از نسخه 7.13 به بعد، برای یک روتر خانگی ساده باید پکیج routeros به‌همراه یک پکیج درایور وایرلس مناسب نصب باشد.

حداقل نیازمندی‌ها

پکیج پایه

حداقل مؤلفه لازم برای کار RouterOS همان پکیج سیستمی است.

برای استفاده واقعی بهتر است به جای حداقل حالت، پکیج کامل routeros نصب شود.

دستگاه‌های وایرلس

  • از RouterOS 7.13 به بعد، برای روتر خانگی ساده به routeros و یک پکیج درایور وایرلس نیاز است.
  • اکسس‌پوینت‌های 802.11ax به پکیج wifi-qcom نیاز دارند. قبل از 7.13 نام آن wifiwave2 بود.
  • نسل‌های قبلی WiFi به پکیج wireless نیاز دارند.

نکته مهم

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

نصب پکیج‌ها

دانلود دستی

  1. وارد صفحه دانلود MikroTik شوید.
  2. بخش RouterOS را بر اساس معماری دستگاه انتخاب کنید.
  3. معماری را از مسیر System → Resources بررسی کنید.
  4. آرشیو دانلودشده را Extract کنید.
  5. پکیج موردنیاز را روی روتر Upload کنید.
  6. روتر را Reboot کنید تا نصب انجام شود.

دانلود مستقیم از خود روتر

از RouterOS 7.18 به بعد در بخش System → Packages در دسترس است.
  1. دستور Check For Updates را اجرا کنید.
  2. پکیج‌های قابل دریافت در لیست Packages به صورت available/disabled نمایش داده می‌شوند.
  3. پکیج موردنظر را انتخاب و Enable کنید.
  4. Apply Changes را بزنید.
  5. ریبوت را تأیید کنید تا دانلود و نصب انجام شود.

بررسی نصب

  1. بعد از ریبوت، بخش Log را باز کنید.
  2. پیام موفقیت نصب پکیج را بررسی کنید.
  3. اگر conflict یا dependency مشکل داشته باشد، در Log توضیح داده می‌شود.
  4. مشکل را برطرف کرده و دوباره نصب را انجام دهید.
برای تأیید نهایی نصب یا فهمیدن علت خطا، Log مرجع اصلی است.

پکیج‌های سیستمی

پکیج معماری توضیح
routeros-armarmپکیج سیستمی برای دستگاه‌های ARM.
routeros-armarm64پکیج سیستمی برای دستگاه‌های ARM64.
routeros-mipsbemipsbeپکیج سیستمی برای دستگاه‌های MIPSBE.
routeros-mmipsmmipsپکیج سیستمی برای دستگاه‌های MMIPS.
routeros-smipssmipsپکیج سیستمی برای دستگاه‌های SMIPS.
routeros-tiletileپکیج سیستمی برای دستگاه‌های TILE.
routeros-ppcppcپکیج سیستمی برای دستگاه‌های PPC.
routerosx86, CHRپکیج سیستمی برای نصب x86 و محیط CHR.

پکیج‌های اضافه

پکیج معماری‌های پشتیبانی‌شده توضیح
caleaarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRابزار جمع‌آوری داده برای استفاده‌های خاص مرتبط با قانون CALEA در آمریکا.
containerarm, arm64, x86, CHRپیاده‌سازی Linux Container در RouterOS.
dudearm, arm64, mmips, tile, x86, CHRابزار مانیتورینگ شبکه.
extra-nicarm64پشتیبانی اضافه برای کارت شبکه در ARM64 و مناسب نصب UEFI روی بردهای غیر MikroTik.
gpsarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRپشتیبانی از دستگاه‌های GPS.
iotarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRفعال‌سازی MQTT، LoRa، Bluetooth، GPIO و Modbus.
iot-bt-extraarm, arm64برای استفاده از دانگل‌های USB Bluetooth پشتیبانی‌شده روی ARM/ARM64. نیازمند LE 4.0+ و بدون تضمین سازگاری کامل برای همه آداپتورها.
loraarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRپکیج سازگاری. قابلیت LoRa به پکیج iot منتقل شده و این مورد بیشتر برای سازگاری با نسخه‌های قبلی باقی مانده است.
ltemipsbeفقط برای SXT LTE مدل RBSXTLTE3-7 لازم است.
rose-storagearm, arm64, tile, x86, CHRقابلیت‌های ذخیره‌سازی سازمانی شامل disk monitoring، RAID، rsync، iSCSI، NVMe over TCP، NFS و SMB بهبود‌یافته.
switch-marvellarm64درایور اجباری برای سوئیچ‌های سری CRS8xx.
tr069-clientarm, arm64, mipsbe, mmips, smips, tile, ppc, x86, CHRپکیج TR-069 Client.
upsarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRرابط مدیریت APC UPS.
user-managerarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRسرور MikroTik User Manager برای کنترل کاربران Hotspot و سرویس‌های مشابه.
wifi-qcomarm, arm64درایور اجباری برای اینترفیس‌های 802.11ax. از نسخه 7.13 معرفی شد.
wifi-qcom-acarmدرایور اختیاری برای اینترفیس‌های 802.11ac سازگار. از نسخه 7.13 معرفی شد.
wirelessarm, arm64, mipsbe, mmips, tile, ppc, x86, CHRابزار و درایورهای WiFi تا 802.11ac و 60GHz. تا نسخه 7.12 داخل RouterOS بود و از 7.13 جدا شد.
zerotierarm, arm64فعال‌سازی ZeroTier.
پکیج wireless با wifi-qcom و wifi-qcom-ac تداخل دارد و هم‌زمان قابل فعال بودن نیستند.

کار با پکیج‌ها

منو دستور / قابلیت توضیح
/system packagedisableپکیج را برای غیرفعال شدن بعد از ریبوت زمان‌بندی می‌کند.
/system packagedowngradeبعد از ریبوت تلاش می‌کند RouterOS را به قدیمی‌ترین نسخه ممکن بر اساس پکیج‌های موجود روی روتر برگرداند.
/system packageenableپکیج را برای فعال شدن بعد از ریبوت زمان‌بندی می‌کند.
/system packageuninstallپکیج را برای حذف شدن در زمان ریبوت زمان‌بندی می‌کند.
/system packageunscheduleبرنامه‌ریزی انجام‌شده برای پکیج را لغو می‌کند.
/system packageprintاطلاعاتی مثل نسخه، وضعیت پکیج و تغییرات زمان‌بندی‌شده را نشان می‌دهد.
/system packageupdateکانال check-for-updates را مدیریت کرده و ارتقای RouterOS را انجام می‌دهد.
/system packageapply-changesتغییرات زمان‌بندی‌شده را اعمال کرده و دستگاه را ریبوت می‌کند.
/system/check-installationcheck installationسلامت و یکپارچگی فایل‌ها و وضعیت NAND/Flash را بررسی می‌کند.
/system/package/updateinstall ignore-missingفقط پکیج اصلی RouterOS را ارتقا می‌دهد و پکیج‌های مفقود یا آپلودنشده را نادیده می‌گیرد.
تغییرات داخل /system package فقط بعد از ریبوت اعمال می‌شوند و تا قبل از آن قابل زمان‌بندی یا لغو هستند.

نصب خودکار

می‌توان پکیج‌ها را بعد از Upload از طریق FTP یا SFTP به شکل خودکار نصب کرد.

  1. نام فایل پکیج را طوری تغییر دهید که به .auto.npk ختم شود.
  2. فایل را روی روتر آپلود کنید.
  3. روتر به‌صورت خودکار برای نصب آن ریبوت می‌شود.
وجود پسوند .auto.npk الزامی است.

Local Update

کاربرد

به‌جای اتصال مستقیم به سرورهای MikroTik، می‌توان یک دستگاه RouterOS را به عنوان Local Package Server استفاده کرد.

دستورات /system package local-update

  • download-all — همه پکیج‌های سازگار را از سرور محلی دانلود می‌کند.
  • download — پکیج‌های سازگار مشخص‌شده را از سرور محلی دانلود می‌کند.
  • refresh — لیست پکیج‌های سازگار روی سرور محلی را تازه‌سازی می‌کند.

مشخصات منبع پکیج

  • address — آدرس IP سرور محلی پکیج.
  • user — نام کاربری دسترسی.
  • password — رمز عبور دسترسی.
Mirror property توضیح
primary-serverآدرس سرور اصلی پکیج محلی.
secondary-serverآدرس سرور ثانویه پکیج محلی.
userنام کاربری برای دسترسی به سرور محلی.
passwordرمز عبور برای دسترسی به سرور محلی.
check-intervalبازه زمانی بررسی سرور برای پکیج‌های جدید و دانلود مواردی که روی دستگاه وجود ندارند.
enabledفعال یا غیرفعال بودن بررسی و دانلود دوره‌ای از سرور محلی.
force-checkهمین حالا سرور را بررسی می‌کند و پکیج‌های جدید را دانلود می‌کند.
پکیج‌های mirrored داخل پوشه packs در مسیر root ذخیره می‌شوند.

مثال‌ها

نمایش لیست پکیج‌ها

در این مثال، zerotier نصب شده ولی غیرفعال است، iot فقط روی سرور موجود است و دانلود نشده، و dude برای حذف زمان‌بندی شده است.
/system package print
Flags: X - DISABLED
Columns: NAME, VERSION, SCHEDULED
#    NAME      VERSION  SCHEDULED
0    dude      7.9      scheduled for uninstall
1 X  zerotier  7.9
2    routeros  7.9
3 XA iot       7.9

حذف پکیج

/system package uninstall dude; /system reboot;
Reboot, yes? [y/N]:

غیرفعال کردن پکیج

/system package disable zerotier; /system reboot;
Reboot, yes? [y/N]:

Downgrade

/system package downgrade; /system reboot;
Reboot, yes? [y/N]:

لغو برنامه حذف یا غیرفعال‌سازی

/system package unschedule zerotier;
/system package unschedule dude;