V7.22beta [development] is released!

Before an upgrade:

  1. Remember to make backup/export files before an upgrade and save them on another storage device;
  2. Make sure the device will not lose power during upgrade process;
  3. Device has enough free storage space for all RouterOS packages to be downloaded.

What's new in 7.22beta5 (2026-Jan-21 11:17):

  • app - added support for custom apps;
  • app - allow configuring bridge port pvid for app;
  • app - calibre-web app auto add db if none exists;
  • app - fixed fossil app login typo;
  • app - show app URL only when it is running;
  • app - show DNS URL for app only if it has a reverse-proxy;
  • bridge - added RA guard feature (additional fixes);
  • bridge - fixed dynamic switch-cpu VLAN creation (introduced in v7.22beta1);
  • chr - improved fast-path stability when using vmxnet3 driver;
  • console - added timestamp support to print follow/follow-only (additional fixes);
  • container - fixed issue where containers may not start with large mounts;
  • container - fixed nftables/iptables not working with "Message too long" error;
  • container - made container mounts writable by the user;
  • container - use the user-defined envs and envlist for container shell command;
  • defconf - added single port MGMT bridge on CCR/RDS for easier /app configuration;
  • dhcpv6-relay - fixed link-layer address inconsistency with the original link-layer address in relay-forward packets;
  • disk - added support for file-based swap space;
  • fetch - added HTTP/2 support on ARM64 and x86/CHR devices (additional fixes);
  • ip - added reverse-proxy support (additional fixes);
  • ippool6 - allow creating sub-pool by specifying "from-pool";
  • lte - added roaming barring field to LTE "show-capabilities" menu;
  • lte - fixed "allow-roaming" setting to return error for modems that do not support roaming barring;
  • lte - fixed cases where AT dialer could get stuck in "modem not ready" state;
  • lte - fixed cases where incorrect network modes and bands could be suggested for active interface;
  • lte - fixed modem recovery after unexpected modem reboot for Chateau 5G and Chateau 5G R16 (introduced in v7.22beta1);
  • lte - strip modem reported padding characters for SIM card (ICCID) on Chateau ax R17;
  • radius - fixed initialization of incoming UDP socket in some situations;
  • radius - fixed RadSec SSL CPU usage increase on closed connections;
  • radius - improved logging;
  • routerboot - allow installing ARM64 on L009 device ("/system routerboard upgrade" required; configure "/system/routerboard/settings set preferred-architecture=arm64 boot-device=try-ethernet-once-then-nand"; start Netinstall with ARM64 image and reboot the device (DO NOT load the backup routerboot with reset button); downgrading to older versions must be avoided) (additional fixes);
  • sfp - improved initialization and linking for some QSFP modules (additional fixes);
  • snmp - fixed handling of the script "dont-require-permissions" parameter when executing scripts using MIKROTIK-MIB::mtxrScriptRunOutput;
  • snmp - fixed permission error reporting when executing scripts using MIKROTIK-MIB::mtxrScriptRunOutput (introduced in v7.21);
  • snmp - fixed script "run-count" update after execution;
  • switch - fixed switch type for hAP ax lite devices (introduced in v7.22beta1);
  • webfig - added missing icons for Firewall table;
  • wifi - improved support for 802.11be access points (additional fixes);
  • wifi - updated regulatory information for Malaysia;
  • wifi-mediatek - fixed malformed information elements in beacons (introduced in v7.22beta1);
  • wifi-mediatek - updated driver and firmware;
  • winbox - added Container Repull command;
  • winbox - added SwOS Allow From field;
  • winbox - move "Default" panel from "IPv6/ND/Proxy" to "IPv6/ND/Prefixes";
  • winbox - show separator after "Protocol" field for IPv6 Firewall rules;
  • wireguard - improved stability;
  • zerotier - improved route removal;

What's new in 7.22beta3 (2026-Jan-14 14:35):

  • bgp - changed multipath to number argument;
  • bgp - fixed BGP output sometimes not being cleaned after session restart;
  • bgp - fixed ignore-as-path-len not being used;
  • bgp - fixed update messages not being sent on default-prepend value change;
  • bgp - implemented add-path;
  • bridge - improved logic for interface remove;
  • bridge - improved stability when using MVRP (introduced in v7.21);
  • bridge - improved VRRP MAC address handling;
  • bridge - removed vlan-filtering check when changing the MVRP setting (allows disabling MVRP through WinBox);
  • certificate - fixed empty trust store handling in certain cases (introduced in v7.21);
  • console - added left shift (<<) and right shift (>>) support for IPv6 addresses;
  • console - added on-event script runner support to print follow/follow-only;
  • console - added timestamp support to print follow/follow-only;
  • console - fixed time drift for interface last-link-down-time and last-link-up-time;
  • console - improved command decoding to drop extraneous commands (visible in history logging);
  • console - improved export command to avoid empty [find];
  • console - improved history logging when performing object rename with set/reset;
  • console - use the same flag output format for both print brief and detail;
  • container - changed app auto update to be off by default;
  • defconf - improved firewall rule for local traffic to the loopback interface;
  • detnet - added request-interval setting (additional fixes);
  • disk - added trim command which functions similarly to fstrim;
  • disk - fixed issue where iSCSI did not work with ESXi and XEN hypervisors;
  • disk - fixed issue with disks not mounting after swapping devices;
  • disk - fixed opening a drive in read-only mode if it became locked;
  • disk - improved BTRFS stability on TILE devices;
  • disk - renamed format file-system=trim and trim-secure to format file-system=discard and discard-secure;
  • gps - fixed GPS port disappearance after reboot for EC25-EU&KNe;
  • health - fixed fan and PSU state logging for MIPSBE devices;
  • ip - added reverse-proxy;
  • ipv6 - improved system stability when manipulating IPv6 configuration that was added while IPv6 was disabled;
  • log - added comment support to rule entries;
  • lte - added AT command timeout for EC25-EU&KNe;
  • lte - do not allow modem firmware-upgrade on "inactive" interface;
  • lte - do not reconfigure on AT command timeout for MBIM modems;
  • lte - enable DHCP relay packet forwarding to the cellular network for EG120K-EA and RG650E-AU;
  • lte - fixed APN configuration for QMI modems in a 3G network when use-network-apn=yes is used;
  • lte - fixed roaming barring support for the EC200A-EU modem (introduced in v7.22beta1);
  • lte - hide external antenna selection menu for the Chateau AX R17;
  • lte - improved APN IP type handling by enabling only the IP protocols defined in the assigned APN profile for config-less modems;
  • lte - show ICCID and IMSI also when the interface is disabled;
  • poe-out - firmware update for 802.3bt capable boards (the update will cause a brief power interruption to poe-out interfaces);
  • rip,pimsm - separate the interface property from the address in /routing/rip/interface and /routing/pimsm/interface menus;
  • route - prevent creating routing tables with the same name;
  • snmp - added 5G NSA connection signal indications: nr-rsrp, nr-rsrq, nr-sinr;
  • snmp - fixed CA band indication;
  • snmp - report RouterOS version in SNMPv2-MIB::sysDescr;
  • ssh - improved logging;
  • system - added reset-configuration keep-apps=yes;
  • system - display serial ports in the /system/resource/hardware menu;
  • system - fixed possible configuration loss;
  • wifi - added optional show-frame=radiotap parameter value to make sniffer display the radiotap header of captured frames;
  • wifi - fixed functionality of the wireless-signal-strength LED trigger;
  • wifi - improved support for 802.11be access points (additional fixes);
  • wifi - quicker re-connections to APs for interfaces in station mode;
  • wifi-qcom - update regulatory information for Malaysia;
  • winbox - added confirmation message to Format Drive;
  • winbox - added error reporting to CAPsMAN Manager menu;
  • winbox - added socsify icon for firewall NAT rules;
  • winbox - fixed the "New QoS Profile" field for switch rules;
  • winbox - fixed modem firmware-upgrade for the RG650E-EU modem;
  • winbox - make File Share URL field clickable (additional fixes);
  • winbox - updated some setting and title names;
  • x86 - fixed interface hang on RTL8125 when processing IP-fragmented UDP traffic (additional fixes);

What's new in 7.22beta1 (2026-Jan-02 08:46):

  • bgp - fixed early-cut not working properly;
  • bgp - implement multipath (ability for BGP best path to select ECMP routes);
  • bgp - implement revised input error handling per RFC 7606;
  • bridge - added local and static MAC synchronization for MLAG;
  • bridge - added MLAG support per bridge interface (/interface/bridge/mlag menu is moved to /interface/bridge; configuration is automatically updated after upgrade; downgrading to an older version will result in MLAG configuration loss);
  • bridge - added MLAG-specific aged and aged-peer flags to host table;
  • bridge - added RA guard feature;
  • bridge - fixed MAC moving between regular ports and bonds for MLAG;
  • bridge - fixed MLAG state being permanently disabled when changing bridge interface settings;
  • bridge - improved MAC synchronization for MLAG;
  • certificate - improved certificate export process;
  • certificate - improved logging;
  • console - added :continue and :break commands for various loops;
  • console - added :exit command to terminate scripts;
  • console - added "comments" parameter to print command to control comment and error output;
  • console - added comparison operators for ID values;
  • console - added Ctrl+Left/Right word navigation;
  • console - added Ctrl+w word deletion;
  • console - added hint for dry-run import parameter;
  • console - allow undefined variables in dry-run import;
  • console - changed autocomplete expansion criteria;
  • console - disable follow command in /ip/firewall/connection menu;
  • console - fixed brief print for entries with multiple comments;
  • console - fixed setting of /interface/wireless/scan-list;
  • console - fixed value type names in comparison errors;
  • console - implement string casting in :tobool command;
  • console - improved error tracing when using find command;
  • console - improved set/remove command handling in /file menu;
  • console - look up variable in global scope if argument scope lookup failed;
  • console - parse width parameter for non-interactive SSH commands;
  • console - show smaller QR codes where possible;
  • container - added jupyter-notebook, livebook and myip apps;
  • container - added support for zstd extraction;
  • container - internal stability improvements;
  • detnet - added request-interval setting;
  • detnet - changed default port from MNDP to a random unused UDP port;
  • dhcp-server - improved failure/error logging for both IPv4 and IPv6;
  • dhcpv4-client - fixed inability to reference disabled DHCP client by interface name;
  • dhcpv4-client - request DOMAINNAME (15) option from the server;
  • dhcpv4-server - improved DHCP option handling;
  • dhcpv4-server - improved logging;
  • dhcpv4-server - send all found lease options in reply to DHCPINFORM;
  • dhcpv6-client - allow unsetting "pool-prefix-length" parameter;
  • dhcpv6-client - improved log messages;
  • dhcpv6-server - swap input and output RADIUS accounting statistics counters;
  • disk - show if driver is encrypted and locked;
  • fetch - added HTTP/2 support on ARM64 and x86/CHR devices;
  • fetch - increased default maximum redirect count to 2;
  • fetch - return error code and HTTP headers to :onerror script;
  • fetch - treat HTTP 304 return code as success;
  • firewall - clear relevant masqueraded connection tracking entries on WAN address change;
  • hotspot - allow WireGuard interface type;
  • hotspot - do not invalidate static ARP entries;
  • hotspot - fixed www response after login by cookie;
  • iot - improved LoRa FSK modulation downlinking;
  • ipsec - added "none" option to IPsec key QKD certificate field;
  • ipsec - added IKEv2 DDoS cookie activation setting;
  • ipsec - added logging for IPsec policy template group;
  • ipsec - added logging of IKEv2 connection SPI and initiator address;
  • ipsec - adjusted minimum generated PSK key length;
  • ipsec - fixed IKEv2 child policy reqid lost on rekey;
  • ipsec - fixed IKEv2 child reqid handling on traffic selector update;
  • ipv6 - added dhcp6-pd-preferred to /ipv6/nd/prefix to control P flag in Prefix Info Option RFC 9762;
  • ipv6 - delete SLAAC default route if there are no active SLAAC prefixes present and no new RAs received;
  • ipv6 - do not generate duplicate dynamic link-local addresses on tunnel type interfaces;
  • ipv6 - enable IPv6 fast-path after removing firewall rules;
  • log - added option to clear echo logs;
  • log - added option to prepend topics to BSD syslog message;
  • log - added script target for log actions;
  • log - fixed incorrect log message shown after canceling supout.rif creation;
  • log - fixed minor spelling issues;
  • log - fixed missing ID in trace logs after removing logging rule;
  • log - log "Secret must be set to run scripts from SMS" error only if ":cmd" prefix is used in SMS message;
  • log - use uppercase MAC address in firewall logging;
  • lte - added "auto" MTU option for LTE interfaces to use network-advertised MTU on supported devices;
  • lte - added multi-apn and framed routing support for EC200A-EU modem (requires latest FW version);
  • lte - added USB tethering support using iOS devices;
  • lte - clear about field status on firmware upgrade;
  • lte - do not flap LTE passthrough assinged interface on modem link state change;
  • lte - do not reconfigure LTE interface on configuration change error;
  • lte - fixed changing MAC address for EC200A-EU modem;
  • lte - fixed eSIM errors appearing on devices without eSIM support;
  • lte - fixed firmware update and status refresh for R11eL-EC200A-EU modem;
  • lte - fixed LTE interface IPv6 address generation to use EUI-64 for EC25-EU&KNe;
  • lte - improved APN IP type handling by enabling only the IP protocols defined in the assigned APN profile for config-less modems;
  • lte - make inactive LTE interface settable, LTE interface settings can be set without waiting for modem initial initialization;
  • lte - removed delay before querying modem status for config-less modems with info channel;
  • mac-telnet - added interface property;
  • macsec - fixed hardware offload on S53 and C53 devices;
  • mesh - fixed missing S flag on interfaces after mesh disable/enable;
  • ping - added IPv6 support for flood-ping;
  • poe-out - added LLDP support for dual-signature PDs;
  • poe-out - firmware update for 802.3at capable boards (the update will cause brief power interruption to poe-out interfaces);
  • poe-out - firmware update for 802.3bt capable boards (the update will cause brief power interruption to poe-out interfaces);
  • ppp - fixed Framed-Route attribute not being applied to correct VRF;
  • ppp - fixed premature PPP client disconnect on BG77 modems during firmware update;
  • rose-storage - added XFS support;
  • route - added logs for check-gateway state changes;
  • route - expose built-in routing rules and allow changing their order under the /routing/rule menu;
  • route - fixed route removal after unexpected safe mode termination;
  • routerboot - allow installing ARM64 on L009 device ("/system routerboard upgrade" required; configure "/system/routerboard/settings set preferred-architecture=arm64 boot-device=try-ethernet-once-then-nand"; start Netinstall with ARM64 image and reboot the device (DO NOT load the backup routerboot with reset button); downgrading to older versions must be avoided);
  • routerboot - fixed linking to 1000M-half for KNOT Embedded LTE4 ("/system routerboard upgrade" required);
  • routerboot - fixed possible Netinstall failure for KNOT Embedded LTE4 ("/system routerboard upgrade" required);
  • sfp - improved initialization and linking for some QSFP modules;
  • smips - reduced package size and removed ip-scan, mac-scan, ping-speed, flood-ping features;
  • snmp - fixed issue where bulk walk might skip the first OID;
  • supout - wait up to 5 minutes for export to complete and show incomplete output in case of timeout;
  • switch - fixed missing switch-cpu port counters;
  • switch - updated switch-marvell.npk driver;
  • undo - show user when configuring DHCP server or hotspot with setup command;
  • upgrade - added "password" parameter to "local-upgrade" feature when configuring through CLI;
  • upgrade - added IPv6 support for local package source and mirror;
  • upgrade - fixed local package mirror check interval;
  • upgrade - removed redundant commands from local package menu;
  • usb - updated device ids for ax88179_178a driver;
  • w60g - fixed possible memory leak when an interface is disabled;
  • webfig - added new section "Common names" in skin designer;
  • webfig - added support for collapsible tree view for menus like Interfaces, Files, Queues;
  • webfig - added support for URL fields;
  • webfig - fixed ability to set interworking.realms-raw WiFi interface attribute;
  • webfig - fixed skin designer mobile view for QuickSet and Terminal;
  • webfig - fixed Torch Filters default values;
  • webfig - improved address type field input value validation;
  • wifi - added keepalive message in CAPsMAN data channel;
  • wifi - allow specifying hostname to caps-man-addresses;
  • wifi - fixed channel switching for MediaTek access points;
  • wifi - fixed FT support with wpa2-psk-sha2;
  • wifi - fixed possible certificate failure after CAPsMAN disable/enable;
  • wifi - improved spectral-history width for console;
  • wifi - improved stability and fixed multiple issues;
  • wifi - improved support for 802.11be access points;
  • wifi - improved system stability when using spectral-scan;
  • winbox - added "Force Check" for local upgrade;
  • winbox - added comment in "System/Ports/Remote Access" menu;
  • winbox - added GUI support for IPsec QDK;
  • winbox - added missing LoRa channel fields;
  • winbox - added warning when changing global script variables;
  • winbox - allow using specified skin without the sensitive policy;
  • winbox - fixed applying a skin to a user authenticated with RADIUS;
  • winbox - fixed applying a skin to WinBox if it was uploaded via the branding package;
  • winbox - fixed default flag in certain menus;
  • winbox - fixed Preshared Key "auto" and "none" options for WireGuard Peer;
  • winbox - make File Share URL field clickable;
  • winbox - recognize imported certificate key size;
  • winbox - rename "Change Now" to "Change" button in "System/Password" menu;
  • winbox - replace "DHCP" with "DHCPv6" in IPv6 menus;
  • winbox - show warnings in "MPLS/Traffic Eng/Tunnel" menu;
  • winbox - updated various WiFi properties;
  • wireguard - merged upstream fixes and improvements;
  • wireless - avoid joining BSS that previously failed until all other options tried;
  • wireless - improved system stability when changing nstreme mode;
  • wireless - improved system stability when eap-method=passthrough configured for station;
  • x86 - added JME network driver;
  • x86 - fixed interface hang on RTL8125 when processing IP-fragmented UDP traffic;
  • x86 - improved link establishing on Intel X710 series NIC;

To upgrade, click Check For Updates under System/Packages menu and select the development Channel in RouterOS configuration interface, or head to our download page: http://www.mikrotik.com/download

  • Everything went smoothly
  • I encountered an issue after the update (please post about the device, configuration, and unexpected symptoms)
  • I encountered an issue, but solved it (please post the solution)
0 voters

If you experience version related issues, then please send supout file from your router to support@mikrotik.com. The file must be generated while a router is not working as suspected or after some problem has appeared on the device

Please keep this forum topic strictly related to this particular RouterOS release.

2 Likes
fetch - added HTTP/2 support on ARM64 and x86/CHR devices;

Does this also effect DoH, so that DNS4EU will work?

I'm curious here ... what's the direct added value for this ?
I guess you first need to move to 7.22beta before this can be done (will certainly test tomorrow evening) ?

Will something similar also be possible in future for AX Lite, Hex Refresh, ... ?

Maybe:

fetch - added HTTP/2 support on ARM64 and x86/CHR devices;

And for containers most probably. Docker images removing ARM 32bit support really fast recently.

console - added Ctrl+Left/Right word navigation;

:heart_eyes:

1 Like

hey a 7.21rc still running but 7.22beta already available! this is the first time I see “development” and “testing” releases are different…

ipsec - added logging - please make sure all log lines contain identifying information about the peer, like the peer IP address and/or identity (both for new logs and existing logs, particularly in IPsec)

log - added option to prepend topics to BSD syslog message - finally! that is something I always missed

log - added script target for log actions - yeah!!! another one!

wifi - improved stability and fixed multiple issues - would it be possible to remove the 30km distance limit in wifi-qcom ?

It seems this version would have been the “free gifts for everyone!” thing.

Wasn't aware it was an issue thanks.

*) wifi - fixed FT support with wpa2-psk-sha2;

Yes also HTTP/2 does it apply to DoH ?

bridge - added RA guard feature;

Thx so much <3

1 Like

smips - reduced package size and removed ip-scan, mac-scan, ping-speed, flood-ping features;

I’m going to miss using my hAP Lite as a mini-ddos attack tool with flood-ping :’-(.

Other than that, looks like a good upcoming release with plenty of fixes and improvements. Nice work

1 Like
  • bgp - implement multipath (ability for BGP best path to select ECMP routes);

That’s a nice change, curious to see how well this works.

1 Like

Fantastic

4 Likes

So maybe, maybe ...

Still don't see the ability to disable automatic replacement of TABs with spaces in scripts...
:face_with_bags_under_eyes:

2 Likes

prefix-count=0 for all BGP session, but prefixes are received

Details on this line would be great. Good to see that Mikrotik cares about WireGuard.

1 Like

This probably needs more work! When doing a /export I see those exposed rules, but when opening the routing rules window in winbox they show different actions/tables than indicated in the export and it is unclear what each of them is. I have not tried if it is possible to save them but when it is, it will probably destroy the special rules…

2 Likes

Wanted to type “That is usually fixed by going to another tab in the routing window and back to the sessions” but you are right, it no longer works…

1 Like

any info about this?
I have a lot of prefixes received from upstreams and IX with the same as-path-length and same local-pref, but there is only one active, can't see any difference =\

1 Like

There are various ipsec improvement but VTI still MIA :slight_smile:

7 Likes

I still see the issue that on my LHG XL 5 ax the indicated signal strength during a connection is just a random number. The signal during scan is predictable and stable, but during connection it just jumps around even to positive numbers.

Maybe this only happens because the signal is very weak (-96) as I have the thing in front of the window waiting for better weather so I can swap it with my older LHG?

Please increase the maximal value for Freq.Drift in the NTP client.

My LHG XL 5 ax has a drift of about +550 ppm and it seems the NTP client does not adjust past about 450 ppm, so the time keeps drifting away from the reference server and jumping back by about 800ms. SUP-207678.