Lab 01-03 · Packages, release channels and upgrades¶
MTCNA
Module 1 · Introduction. Official course slides 50–65: RouterOS releases, upgrading, CPU architectures, package management (LAB, slides 58–59), downgrading (LAB, slides 60–61), RouterBOOT. The branding package (slides 62–63) is lab 01-04.
Your phone nags you: "A new software update is available". Some friends install it the same day; others wait a week "until they fix the bugs". Some even join the beta to get features early, and accept that the camera app crashes now and then.
A router has the same choice, with one difference: if a router update goes wrong, a whole school loses the Internet. Today you learn how RouterOS is put together, how to see exactly what your router runs, and how to pick a "safe" update channel.
What you will learn
- Find the version, architecture and license of a RouterOS device
- Explain what a package is and how packages switch features on and off
- Choose between the long-term, stable and testing release channels
- Update, downgrade and add an extra package (on the real hAP, in class)
- Why an update file for an hAP ax² cannot be installed on an hAP ac² (the architecture trap)
- Leave a note that every administrator sees when they log in
RouterOS is built from packages¶
Think of your phone again. The operating system is one big piece, plus apps. Some apps come preinstalled and you can switch them off; others you download.
A package is a file (extension
.npk) that adds a group of features to RouterOS.
In RouterOS 7 almost everything (routing, firewall, DHCP, PPP, IPv6...) lives in one main package, called routeros. A few big features come as extra packages:
| Extra package | What it adds |
|---|---|
wifi-qcom |
WiFi for newer hardware such as the hAP ax² |
wireless |
WiFi for older hardware such as the hAP ac² (the "classic" driver used in the course PDF) |
container |
runs Linux containers on the router |
user-manager |
a user database (RADIUS) for hotspots |
iot, gps, ups... |
support for specific hardware |
Disable a package and its menus and interfaces disappear after a reboot. That is the course's package LAB: disable WiFi, reboot, see that the WiFi interfaces are gone.
RouterOS 6 vs 7
The course slides list packages like dhcp, ppp, routing, security, system (slide 55). That is how RouterOS 6 was split. In RouterOS 7 those are all inside the single routeros package, so you cannot disable DHCP alone any more.
Architecture: the trap that bricks upgrades¶
Every package is compiled for one CPU architecture: the "language" the router's processor speaks. A file for one architecture is gibberish to another, like an Android app on an iPhone.
| Device | Architecture |
|---|---|
| hAP ax² | arm64 |
| hAP ac² | arm |
| CHR (this lab) | x86_64 |
The course lists MikroTik's architectures: ARM64, ARM, MIPSBE, SMIPS, MMIPS, TILE, PPC and x86. Always check yours in System → Resources before downloading anything.
Release channels¶
A release channel is the "speed lane" of updates your router follows.
| Channel | What you get | Who uses it |
|---|---|---|
| long-term | only bug fixes, no new features | production routers: schools, shops, ISPs |
| stable | the same fixes plus new features | most home users, the factory setting |
| testing | the next version, treat it as a beta | people who want to try features early |
| development | work in progress | MikroTik's own testers |
The rule of thumb: the more people depend on a router, the slower its lane.
The scenario¶
Just one router: r1, a CHR (Cloud Hosted Router: RouterOS as a virtual machine). The virtual lab has no Internet on purpose, so the "Check for updates" step will fail here; downloading, upgrading and downgrading are done on the real hAP in class (instructions below and in final/r1-hap-packages.rsc).
flowchart LR
YOU["<b>Your PC</b><br>ssh"] -- "management port<br>(ether1, lab plumbing)" --> R1["<b>r1</b><br>CHR · x86_64<br>RouterOS 7.23.8"]
R1 -. "check for updates<br>(no Internet in the lab)" .-> MT["upgrade.mikrotik.com"]
| Node | Role | Address |
|---|---|---|
r1 |
your router (CHR) | only the lab's management port |
Start the lab¶
Download the lab files and unzip them: 01-03-packages-and-upgrades.zip. Open a terminal inside the 01-03-packages-and-upgrades folder.
Step 1 · Find out what your router is¶
Why: before any update you must know the version, the architecture and the license.
In WinBox: System → Resources and System → License. On r1:
Expected (the important lines):
version: 7.23.8 (long-term)
factory-software: 7.1
architecture-name: x86_64
board-name: CHR QEMU Standard PC (i440FX + PIIX, 1996)
level: free
factory-software is the version the device shipped with. On many newer devices you cannot downgrade below it. level: free is the free CHR license: everything works, but each interface is limited to 1 Mbit/s (course slide 97). Real routers (RouterBOARDs) ship with their license already included.
Check yourself
Write down your router's architecture. Could you install a package called routeros-7.23.8-arm64.npk on it? Why?
Done when: you know the version, architecture and license level.
Step 2 · List the packages¶
Why: this is the list of "apps" installed on your router.
In WinBox: System → Packages. On r1:
Expected:
Columns: NAME, VERSION, BUILD-TIME, SIZE
# NAME VERSION BUILD-TIME SIZE
0 routeros 7.23.8 2026-10-08 09:46:16 19.8MiB
On the CHR there is only the main package. On your hAP ax² in class you will also see wifi-qcom.
Never disable routeros
/system package disable routeros is accepted and only marks the package "scheduled for disable". After the next reboot the router would have no operating system to speak of. If you ever do it by mistake, undo it before rebooting: /system package unschedule routeros. The check script makes sure nothing is scheduled.
Check yourself
Look at the Flags: line of /system package print detail. What do the flags X and A mean?
Done when: you have seen the package list.
Step 3 · Look at the update settings and try to check for updates¶
Why: System → Packages → Check For Updates is the easiest way to upgrade (course slide 51). It contacts MikroTik's servers, compares versions and offers Download & Install.
In WinBox: System → Packages → Check For Updates. On r1:
Expected, in this offline lab:
The router cannot even turn upgrade.mikrotik.com into an address: there is no DNS server and no Internet. In class, with the hAP connected to the class AP (lab 01-02), the same command shows latest-version and, if it is newer, the button Download & Install (/system package update install).
Check yourself
The installed version says long-term, but the channel says stable. If you pressed Download & Install in class, which lane would your router move to?
Done when: you have read the error and understood why it happens here.
Step 4 · Move the router to the long-term channel¶
Why: a school router should get fixes, not surprises.
In WinBox: System → Packages → Check For Updates, Channel long-term. On r1:
Expected: channel: long-term. The setting is part of the configuration: you will see it in /export as /system package update set channel=long-term.
Done when: the channel is long-term.
Step 5 · Leave a note for the next administrator¶
Why: when several people manage a router, a short note at login saves a lot of questions (course slide 34, CLI tips).
In WinBox: System → Note. On r1, write what you found in step 1 (use your architecture and version):
/system note set note="r1: architecture x86_64, RouterOS 7.23.8, channel long-term" show-at-cli-login=yes
Log out (/quit) and back in with ssh admin@clab-mtcna-01-03-r1: the note appears above the prompt.
Check yourself
Give one example of something useful to write in a router's note at work.
Done when: the note appears when you log in.
In class, on the real hAP¶
These steps need the real router (and, for downloads, Internet through the class AP). The exact commands are in final/r1-hap-packages.rsc.
- Interfaces: note that
wifi1andwifi2exist. - System → Packages, select
wifi-qcom, Disable. Then System → Reboot. - Interfaces again: the WiFi interfaces are gone.
- Enable the package again, reboot, and check they are back.
- Look at the System menu in WinBox.
- At mikrotik.com/download download Extra packages for ARM64 and the same version as your router.
- Drag the
.npkonto WinBox's Files window (orscp file.npk admin@192.168.88.1:), then reboot. - The package is installed during the boot. Check System → Packages and the menus again.
- System → Packages → Check For Updates, Channel
long-term. - Download. Then, in the Package List window, Downgrade (
/system package downgrade). The router reboots into the older version. - Upgrade back: channel
stable, Check For Updates, Download & Install.
RouterBOOT is the small firmware that starts RouterOS on a RouterBOARD (like a PC's BIOS). There are two copies: a main one, which can be upgraded, and a backup one, which is used if you hold the reset button while powering on. After upgrading RouterOS: System → RouterBOARD → Upgrade, then reboot. (CHR has no RouterBOOT: /system routerboard does not exist here.)
Check your work¶
All lines PASS, last line Lab 01-03 SOLVED.
If something goes wrong¶
| Symptom | Likely cause | Fix |
|---|---|---|
Check For Updates says could not resolve dns name |
no Internet / no DNS (always, in the virtual lab) | in class: connect to the class AP first (lab 01-02) |
Uploaded .npk is not installed after reboot |
wrong architecture or a different version than the main package | check System → Resources; download the same version for your architecture |
routeros shows scheduled for disable |
you disabled the main package | /system package unschedule routeros before rebooting |
| WiFi interfaces missing on the hAP | the WiFi package is disabled | System → Packages, enable it, reboot |
| The check says the note is wrong | the note must contain your architecture, version and the word long-term |
/system note set note="..." again |
Clean up¶
Key takeaways¶
- RouterOS 7 is one main package (
routeros) plus extra packages such aswifi-qcom,wirelessorcontainer. - Packages are built for one architecture (
arm64,arm,x86_64...): always check System → Resources before downloading. - Long-term gets only fixes, stable gets fixes and features, testing is a beta: the more people depend on a router, the slower its channel.
- System → Packages → Check For Updates is the easy way to upgrade; uploading an
.npkand rebooting is the manual way; Downgrade goes back. - RouterBOOT is the board's firmware; upgrade it after RouterOS.
- A system note tells every administrator something important the moment they log in.
Quick check¶
1. Which menu tells you a router's CPU architecture?
- System → Resources
- System → Identity
- IP → Services
- Interfaces
System → Resources (/system resource print) shows architecture-name, the version and the hardware. You need the architecture to download the right .npk files.
2. Which release channel gives only bug fixes and no new features?
- long-term
- stable
- testing
- development
Long-term only receives fixes: ideal for production routers. Stable adds new features too, and testing is a beta.
3. You download routeros-7.23.8-arm64.npk for an hAP ac². Why will it not install?
- The hAP ac² has an ARM CPU, and the file is built for ARM64
- The hAP ac² only accepts packages downloaded through WinBox
- Version 7.23.8 is a long-term version and cannot be uploaded
- The file must be renamed to .rsc before uploading
Packages are compiled for one architecture. The hAP ac² is arm, not arm64: like an Android app on an iPhone, the code does not match the processor.
4. In RouterOS 7, what happens after you disable the WiFi package and reboot?
- The WiFi interfaces disappear from the interface list
- The WiFi keeps working but cannot be configured
- The router resets to its factory configuration
- Only the 5 GHz interface disappears
A disabled package removes its features at the next reboot: menus and interfaces vanish. Enable it and reboot to bring them back.
5. What is RouterBOOT?
- The firmware that starts RouterOS on a RouterBOARD
- The first configuration script RouterOS runs at boot
- The menu where you choose the update channel
- The tool that installs RouterOS from a PC
RouterBOOT is the board's firmware, like a PC's BIOS. It has a main copy (upgradeable) and a backup copy. The tool that installs RouterOS from a PC is Netinstall (lab 01-07).
6. Why does Check For Updates fail in the virtual lab?
- The router has no DNS server and no Internet access
- The CHR has no license that allows updates
- Updates only work from WinBox, not from the CLI
- The long-term channel cannot check for updates
The error says could not resolve dns name: without a DNS server the router cannot even find upgrade.mikrotik.com, and there is no route to the Internet anyway.
7. The school's main router runs stable and an update broke the WiFi last month. Which two actions make sense?
- Move the router to the long-term channel
- Use Downgrade to return to the previous working version
- Move the router to the testing channel to get the fix sooner
- Disable the routeros package and reboot
Long-term avoids new-feature surprises, and Downgrade brings back a known-good version. Testing is a beta (more risk), and disabling routeros would leave the router without its operating system.
You now know what your router runs and how to keep it updated. Next lab: personalising RouterOS with a branding package.