RouterOS Package Installation
RouterOS Package Installation
Section titled âRouterOS Package InstallationâRouterOS Version: 7.x+ Difficulty: Beginner Estimated Time: 10 minutes
TL;DR (Quick Start)
Section titled âTL;DR (Quick Start)âFor the impatient: hereâs the 30-second version.
# Check your architecture/system resource print
# Download package (replace version/arch)/tool fetch url="https://download.mikrotik.com/routeros/7.17/zerotier-7.17-arm.npk"
# Reboot to install/system rebootOverview
Section titled âOverviewâRouterOS uses a modular package system where additional features like ZeroTier, Container support, or User Manager are delivered as optional NPK (Network Package) files. These packages must be downloaded, uploaded to the router, and activated through a reboot.
This guide covers the package installation workflow for both manual and automated scenarios.
Understanding the Package System
Section titled âUnderstanding the Package SystemâPackage Types
Section titled âPackage TypesâRouterOS packages are architecture-specific NPK files:
routeros-{arch}-{version}.npk # Base system (always installed)zerotier-{arch}-{version}.npk # ZeroTier VPN supportcontainer-{arch}-{version}.npk # Docker container supportuser-manager-{arch}-{version}.npk # Hotspot user managementups-{arch}-{version}.npk # UPS monitoringArchitectures: arm, arm64, tile, mipsbe, smips, ppc, x86, mmips
Installation Workflow
Section titled âInstallation WorkflowâPrerequisites
Section titled âPrerequisitesâ- RouterOS 7.x running on your device
- Internet connectivity (for direct download) or file access (for manual upload)
- Packages must match both the RouterOS version AND architecture exactly
Configuration Steps
Section titled âConfiguration StepsâStep 1: Check Router Architecture
Section titled âStep 1: Check Router ArchitectureâDetermine your routerâs architecture to download the correct package:
/system resource printLook for the architecture-name field. Common values:
arm- Most modern MikroTik devices (hAP, cAP, etc.)arm64- CCR2000 seriestile- CCR1000 seriesx86- CHR (Cloud Hosted Router)
Step 2: Check Current RouterOS Version
Section titled âStep 2: Check Current RouterOS VersionâThe package version must exactly match your RouterOS version:
/system package printNote the version number (e.g., 7.17).
Step 3: Download Package to Router
Section titled âStep 3: Download Package to RouterâUse /tool fetch to download directly from MikroTikâs servers:
/tool fetch url="https://download.mikrotik.com/routeros/7.17/zerotier-7.17-arm.npk"Replace the URL with the appropriate package, version, and architecture.
Step 4: Verify Download
Section titled âStep 4: Verify DownloadâConfirm the package file is present:
/file print where name~"npk"You should see your downloaded NPK file listed.
Step 5: Reboot to Install
Section titled âStep 5: Reboot to InstallâPackages are installed automatically during boot when NPK files are present:
/system rebootConfirm with y when prompted.
Step 6: Verify Installation
Section titled âStep 6: Verify InstallationâAfter the router comes back online, verify the package is installed:
/system package printThe new package should appear in the list with status âinstalledâ.
Verification
Section titled âVerificationâCheck Package Status
Section titled âCheck Package Statusâ/system package printExpected Output:
Flags: X - disabled # NAME VERSION BUILD-TIME SCHEDULED 0 routeros 7.17 2025-01-06 09:30:00 1 zerotier 7.17 2025-01-06 09:30:00Check Architecture
Section titled âCheck Architectureâ/system resource printExpected Output:
uptime: 5m30s...architecture-name: x86board-name: CHR...Automation Notes
Section titled âAutomation NotesâFor Automated Validation
Section titled âFor Automated ValidationâWhen validating documentation that requires package installation:
-
Upload the package using the
upload_packageMCP tool:upload_package(router_name="staging-router-01",package_url="https://download.mikrotik.com/routeros/7.17/zerotier-7.17-x86.npk") -
Reboot the router using the
reboot_routerMCP tool:reboot_router(router_name="staging-router-01") -
Wait for router to come back using the
wait_for_routerMCP tool:wait_for_router(router_name="staging-router-01", timeout=120) -
Run validation normally after router is back online.
Package Installation via Scripting
Section titled âPackage Installation via ScriptingâFor automated deployments, create a script:
:local pkgUrl "https://download.mikrotik.com/routeros/7.17/zerotier-7.17-arm.npk":local pkgFile "zerotier-7.17-arm.npk"
# Download package/tool fetch url=$pkgUrl dst-path=$pkgFile
# Schedule reboot (gives time for download to complete):delay 5s/system rebootTroubleshooting
Section titled âTroubleshootingâProblem: Package Not Installing After Reboot
Section titled âProblem: Package Not Installing After RebootâSymptoms: NPK file present but package not in list after reboot
Causes and Solutions:
-
Version mismatch:
/file print where name~"npk"/system package printCompare versions - they must match exactly.
-
Architecture mismatch:
/system resource printVerify architecture matches the downloaded package.
-
Corrupted download:
- Delete the file and re-download
- Verify file size matches expected size
Problem: Package Download Fails
Section titled âProblem: Package Download FailsâSymptoms: /tool fetch returns error
Causes and Solutions:
-
DNS resolution failure:
/ip dns print/ping download.mikrotik.com count=3 -
Firewall blocking outbound:
/ip firewall filter print where chain=output -
HTTPS certificate issues:
/tool fetch url="http://download.mikrotik.com/..." mode=httpTry HTTP instead of HTTPS.
Problem: Router Wonât Boot After Package Install
Section titled âProblem: Router Wonât Boot After Package InstallâSymptoms: Router stuck in boot loop or unresponsive
Solution:
- Use Netinstall to reinstall RouterOS
- Or boot to backup RouterOS (hold reset button during power-on)
Common Packages Reference
Section titled âCommon Packages Referenceâ| Package | Purpose | Size |
|---|---|---|
| zerotier | ZeroTier VPN client | ~2MB |
| container | Docker container support | ~3MB |
| user-manager | HotSpot user management | ~1MB |
| ups | UPS monitoring | ~500KB |
| gps | GPS device support | ~500KB |
| calea | Lawful intercept (US) | ~500KB |
Cleanup
Section titled âCleanupâAfter successful installation, remove the NPK file to save storage:
/file remove [find name~"npk"]Related Topics
Section titled âRelated TopicsâPackages That Require Installation
Section titled âPackages That Require Installationâ- ZeroTier - ZeroTier VPN package
- Container/Docker - Docker container support
System Management
Section titled âSystem Managementâ- System Backup - backup before package changes
- Reset Configuration - recovery if package causes issues
- RouterBOARD - hardware-specific package considerations
Related Procedures
Section titled âRelated Proceduresâ- License - CHR license requirements for some packages
- Files - manage package files on router
- Resources - check available storage for packages