Software Package and Version Management

Document revision:1.5 (June 29, 2007, 19:19 GMT)
Applies to: V3.0

General Information

Summary

The MikroTik RouterOS is distributed in the form of software packages. The basic functionality of the router and the operating system itself is provided by the system software package. Other packages contain additional software features as well as support to various network interface cards.

Specifications

License required: Level1
Submenu level: /system package
Standards and Technologies: FTP
Hardware usage: Not significant

Description

Features

The modular software package system of MikroTik RouterOS has the following features:

Installation (Upgrade)

Description

Installation or upgrade of the MikroTik RouterOS software packages can be done by uploading the appropriate version of the software package to the router and rebooting it. All packaged must have the same version number as the system package, otherwise they will not be installed (and will be uninstalled if you are just upgrading the system package).

The software package files are compressed binary files, which can be downloaded from the MikroTik's web page download section. The full name of the software package consists of a descriptive name, version number and extension .npk, e.g., system-2.9.11.npk. Package routeros-x86 contains all necessary packages for RouterOS installation and upgrading for RouterBOARD 200 and PC. Package routeros-rb500 contains all necessary packages for RouterOS installation and upgrading for RouterBOARD 100/500. These packages are preferred installation and upgrading method.

You should check the available hard disk space prior to uploading the package files by issuing /system resource print command. If there is not enough free disk space for storing the upgrade packages, it can be freed up by uninstalling some software packages, which provide functionality not required for upgrade to complete. If you have a sufficient amount of free space for storing the upgrade packages, connect to the router using ftp. Use user name and password of a user with full access privileges.

Step-by-Step

Notes

The packages uploaded to the router should retain the original name and also be in lowercase.

The installation/upgrade process is shown on the console screen (monitor) attached to the router and on the serial console.

The Free Demo License does not allow software upgrades using ftp. You should do a complete reinstall, or purchase the license.

Before upgrading the router, please check the current version of the system package and the additional software packages. The versions of additional packages must match the version number of the system software package. The version of the MikroTik RouterOS system software is shown before the console login prompt and right after you log in. Information about the version numbers and build time of the installed MikroTik RouterOS software packages can be obtained using the /system package print command.

Do not use routeros-x86 and routeros-rb500 packges to upgrade from version 2.8 or older. To upgrade use regular packages.

Test packages, like wireless-test, rstp-bridge-test and so on, are included in the routeros-x86 and routeros-rb500 packages, but disabled by default.

Few special-purpose packages, like LCD, are not included in the combined packages, and you may need to download them separately.

Uninstallation

Command name: /system package uninstall

Description

Usually, you do not need to uninstall software packages. However, if you have installed a wrong package, or you need additional free space to install a new one, you may need to uninstall some unused packages.

Notes

If a package is marked for uninstallation, but it is required for another (dependent) package, then the marked package cannot be uninstalled. You should uninstall the dependent package too. For the list of package dependencies see the 'Software Package List' section below. The system package will not be uninstalled even if marked for uninstallation.

Example

Suppose we need to uninstall security package from the router:

[admin@MikroTik] system package> print 
Flags: X - disabled 
 #   NAME                     VERSION                  SCHEDULED              
 0   routeros-rb500           3.0beta10                                       
 1   system                   3.0beta10                                       
 2 X ipv6                     3.0beta10                                       
 3   ntp                      3.0beta10                                       
 4   wireless                 3.0beta10                                       
 5   dhcp                     3.0beta10                                       
 6   routing                  3.0beta10                                       
 7   routerboard              3.0beta10                                       
 8   advanced-tools           3.0beta10                                       
 9   hotspot                  3.0beta10                                       
10   ppp                      3.0beta10                                       
11   security                 3.0beta10                                       
[admin@MikroTik] system package> uninstall security
[admin@MikroTik] system package> .. reboot

Downgrading

Command name: /system package downgrade

Description

Downgrade option allows you to downgrade the software via FTP without losing your license key or reinstalling the router. It is not recommended to use older versions, however, if the newest version introduced some unwanted behavior, you may try to downgrade. If you send a support question, you will probably be asked to upgrade to the latest version.

Step-by-Step

Command Description

downgrade - this command asks your confirmation and reboots the router. After reboot the software is downgraded (if all needed packages were uploaded to the router)

Example

To downgrade the RouterOS (assuming that all needed packages are already uploaded):

[admin@MikroTik] system package> downgrade
Router will be rebooted. Continue? [y/N]:
y
system will reboot shortly

Disabling and Enabling

Specifications

Command name: /system package disable, /system package enable

Description

You can disable packages making them invisible for the system and later enable them, bringing the system back to the previous state. It is useful if you don't want to uninstall a package, but just turn off its functionality. This will save the RAM and processor resources for other applications, but will not free the diskspace used by the package files.

Notes

If a package is marked for disabling, but it is required for another (dependent) package, then the marked package cannot be disabled. You should disable or uninstall the dependent package too. For the list of package dependencies see the 'Software Package List' section below.

If any of the test packages will be enabled (for example wireless-test and routing-test packages, that are included in routeros-x86.npk and routeros-rb500.npk) system automaticly will disable regular packages that conflict with them.

Example

Suppose we need to test ipv6 package features:

[admin@MikroTik] system package> print 
Flags: X - disabled 
 #   NAME                     VERSION                  SCHEDULED              
 0   routeros-rb500           3.0beta10                                       
 1   system                   3.0beta10                                       
 2 X ipv6                     3.0beta10                                       
 3   ntp                      3.0beta10                                       
 4   wireless                 3.0beta10                                       
 5   dhcp                     3.0beta10                                       
 6   routing                  3.0beta10                                       
 7   routerboard              3.0beta10                                       
 8   advanced-tools           3.0beta10                                       
 9   hotspot                  3.0beta10                                       
10   ppp                      3.0beta10                                       
11   security                 3.0beta10                                       
[admin@MikroTik] system package> enable ipv6
[admin@MikroTik] system package> .. reboot

Unscheduling

Command name: /system package unschedule

Description

Unschedule option allows to cancel pending uninstall, disable or enable actions for listed packages.

Notes

packages marked for uninstallation, disabling or enabling on reboot in column "schedule" will have a note, warning about changes.

Example

Suppose we need to cancel security package uninstallation action scheduled on reboot:

[admin@MikroTik] system package> print 
Flags: X - disabled 
 #   NAME                     VERSION                  SCHEDULED              
 0   routeros-rb500           3.0beta10                                       
 1   system                   3.0beta10                                       
 2 X ipv6                     3.0beta10                                       
 3   ntp                      3.0beta10                                       
 4   wireless                 3.0beta10                                       
 5   dhcp                     3.0beta10                                       
 6   routing                  3.0beta10                                       
 7   routerboard              3.0beta10                                       
 8   advanced-tools           3.0beta10                                       
 9   hotspot                  3.0beta10                                       
10   ppp                      3.0beta10                                       
11   security                 3.0beta10                scheduled for uninstall
[admin@MikroTik] system package> unschedule security
[admin@MikroTik] system package> 

System Upgrade

Submenu level: /system upgrade

Description

This submenu gives you the ability to download RouterOS software packages from a remote RouterOS router.

Step-by-Step

Property Description

name (read-only: name) - package name

source (read-only: IP address) - source IP address of the router from which the package list entry is retrieved

status (read-only: available | scheduled | downloading | downloaded | installed) - package status

version (read-only: text) - version of the package

Command Description

download - download packages from list by specifying their numbers

download-all - download all packages that are needed for the upgrade (packages which are listed in the /system package print command output)

refresh - updates currently available package list

Example

See the available packages:

[admin@MikroTik] system upgrade> refresh
[admin@MikroTik] system upgrade> print
 # SOURCE          NAME             VERSION      STATUS      COMPLETED  
 0 192.168.25.8    routeros-x86     2.9.44       available
 1 192.168.25.8    routeros-rb500   3.0beta10    available
[admin@MikroTik] system upgrade>

To upgrade chosen packages:

[admin@MikroTik] system upgrade> download 1
[admin@MikroTik] system upgrade> print
 # SOURCE          NAME             VERSION      STATUS      COMPLETED  
 0 192.168.25.8    routeros-x86     2.9.44       available
 1 192.168.25.8    routeros-rb500   3.0beta10    downloading 16 %
[admin@MikroTik] system upgrade>

Adding Package Source

Submenu level: /system upgrade upgrade-package-source

Description

In this submenu you can add remote routers from which to download RouterOS software packages.

Property Description

address (IP address) - source IP address of the router from which the package list entry will be retrieved

password (text) - password of the remote router

user (text) - username of the remote router

Notes

After specifying a remote router in /system upgrade upgrade-package-source, you can type /system upgrade refresh to refresh the package list and /system upgrade print to see all available packages.

Example

To add a router with IP address 192.168.25.8, username admin and no password:

[admin@MikroTik] system upgrade upgrade-package-source> add \
\... address=192.168.25.8 user=admin
password: 
[admin@MikroTik] system upgrade upgrade-package-source> print
# ADDRESS         USER
0 192.168.25.8    admin
[admin@MikroTik] system upgrade upgrade-package-source>

Software Package List

Description

System Software Package

The system software package provides the basic functionality of the MikroTik RouterOS, namely:

After installing the MikroTik RouterOS, a free license should be obtained from MikroTik to enable the basic system functionality.

Additional Software Feature Packages

The table below shows additional software feature packages, extended functionality provided by them, the required prerequisites and additional licenses, if any.

Name Contents Prerequisites
advanced-tools email client, pingers, netwatch and other utilities none
calea Call Content Connection (CCC) data retention server for CALEA compliance none
arlan support for legacy DSSS 2.4GHz 2mbps Aironet ISA cards none
dhcp DHCP server and client support none
dude Dude server none
gps support for GPS devices none
hotspot HotSpot gateway none
ipv6 IPv6 protocol none
isdn support for ISDN devices ppp
lcd support for informational LCD display none
ntp Network Time Protocol none
ppp support for PPP, PPTP, L2TP, PPPoE and ISDN PPP none
radiolan support for 5.8GHz RadioLAN cards none
routerboard support for RouterBoard-specific functions and utilities none
routing support for RIP, OSPF and BGP4 none
security support for IPSEC, SSH and secure WinBox connections none
synchronous support for Frame Relay and Moxa C101, Moxa C502, Farsync, Cyclades PC300, LMC SBE and XPeed synchronous cards none
thinrouter-pcipc forces PCI-to-CardBus Bridge to use IRQ 11 as in ThinRouters none
ups support for APC Smart UPS none
user-manager embedded RADIUS server with web interface none
wireless support for Cisco Aironet, PrismII and Atheros wireless cards none