Same here. v7.14.2 OK, v.7.15rc not. SSH, Winbox, RoMON not working, webfig, telnet works.using this RC in GNS3 you can't login via winbox it just simply saying logging even ssh connection it's not working :(, never seen this before2.png
edit: webfig works
1.png
This doesn't work on hap ac2*) dns - added support for "adlist";
/ip/dns/print
servers: 1.1.1.1,1.0.0.1
dynamic-servers:
use-doh-server:
verify-doh-cert: no
doh-max-server-connections: 5
doh-max-concurrent-queries: 50
doh-timeout: 5s
allow-remote-requests: yes
max-udp-packet-size: 4096
query-server-timeout: 2s
query-total-timeout: 10s
max-concurrent-queries: 100
max-concurrent-tcp-sessions: 20
cache-size: 131064KiB
cache-max-ttl: 1w
address-list-extra-time: 0s
vrf: main
cache-used: 50688KiB
/ip/dns/adlist/print
Flags: X - disabled
0 file=apple.txt ssl-verify=no match-count=10 name-count=2
1 url="https://raw.githubusercontent.com/hagezi/dns-blocklists/main/hosts/pro.txt" ssl-verify=no
match-count=2168 name-count=438197
You're right, I already reported it with SUP-146323This doesn't work on hap ac2*) dns - added support for "adlist";
winbox64_dGttAi5w27.png
It looks like your device doesn't have enough storage on the device to use adlist. At the moment the adlist is downloaded to the NAND as well as stored in RAM, we are looking in to maybe changing the behavior, but sadly can't provide more details at the moment.
Do you have the wifi-qcom-ac package installed? If yes, I doubt you would have enough space to download the adlist.Works great here, do you have enough cache for all that Bling!
@normis
I thought you was adding adlist update timer ?? Did I miss-understand
Was that for me?Do you have the wifi-qcom-ac package installed? If yes, I doubt you would have enough space to download the adlist.Works great here, do you have enough cache for all that Bling!
@normis
I thought you was adding adlist update timer ?? Did I miss-understand
And the update list timer?That's for all potential adlist users. The feature requires storage and RAM, it is recommended for ARM64 devices that have those resources more than others
@ZOltan I'll leave you to ponder you owm riddle....
Hello Normis, is it possible to change the location from local storage to a USB flash drive?That's for all potential adlist users. The feature requires storage and RAM, it is recommended for ARM64 devices that have those resources more than others
IEEE 802.1Q specification, most likelyWhat is the reason for vlan-id limit to 1 - 4094
4,096 values provided by the 12-bit VID field minus reserved values at each end of the range, 0 and 4,095
wow :)What's new in 7.15rc1 (2024-Apr-18 12:17):
!) system - added support for AMPERE (R) and ARM64 CHR installations (new ARM64 CHR image available);
For anyone wondering, I was able to boot CHR on the Hetzner ARM instance with this versionWhat's new in 7.15rc1 (2024-Apr-18 12:17):
!) system - added support for AMPERE (R) and ARM64 CHR installations (new ARM64 CHR image available);
Same here on a specific CHR installation.using this RC in GNS3 you can't login via winbox it just simply saying logging even ssh connection it's not working :(, never seen this before2.png
edit: webfig works
1.png
This hasn't been said elsewhere, so just a note for everyone else who's been curious about it: In order to import Ed25519 private keys, they appear to need to be in PKCS8 format.RouterOS version 7.15rc has been released on the "v7 testing" channel!
Other changes since v7.14:
*) ssh - added support for user Ed25519 private keys;
npm install -g sshpk
sshpk-conv -T openssh -t pkcs8 -p -f ~/.ssh/id_ed25519
from changelogModel CRS309-1G-8S+
RouterOS 7.15 branch
Support Ticket SUP-150626
Webfig
Missing icons Wifi Wireguard Dot1X
Missing Partition
Winbox
Missing Partition
Screenshot_20240419_180916.png
Screenshot_20240419_181428.png
wireguard: [peer1] xxxxxxxxxxxxxxxxxxxxxxxxxxxxx: Handshake for peer did not complete after 5 seconds, retrying (try 2)
Confirmed here as well: RoMON not working after 7.15rc1. More specifically, RoMON is no longer working through microwave links. I had to create EOIP tunnels to get Romon to access all of our routers.Same here. v7.14.2 OK, v.7.15rc not. SSH, Winbox, RoMON not working, webfig, telnet works.
Nothing is forced, and nothing is changed. These a just the old settings being preserved.Why force older configs to "short"/10 anyway if the default is "long"/20000?
Why force older configs to "short"/10 anyway if the default is "long"/20000?
OK so that was the only flotsam change to the AP's and my router that since 7.13. I thought it happened in 7.14.x and I never bothered messing with the changes, just noted "hmmm new arguments for the bridge" with no obvious consequences.Answers at the top here; solution in the "Bridge Interface Path Costs" section near the end.
Is there a why to find out what this does? New version from the vendor and if so what does it fix/add/break?*) wifi-qcom - updated driver;
And what about the upgrade for devices with 15.3MB memory(hapac2) ?
/user/ssh-keys/import user=***** public-key-file=id_rsa.pub
action timed out - try again, if error continues contact MikroTik support and send a supout file (13)
It works well. ROM - there is enough space on the HDD now. What I'm still dealing with though is probably a memory leak. It was roughly 145MB of RAM when I rebooted. Now after 3 days only 118 MB. And the memory continues to decline. :-( I raised ticket SUP-147911, but nothing happened.And what about the upgrade for devices with 15.3MB memory(hapac2) ?
"*) system - general work on optimizing the size of RouterOS packages;"
RouterOS version 7.15rc has been released on the "v7 testing" channel!
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 the upgrade process;
3) Device has enough free storage space to download all RouterOS packages.
What's new in 7.15rc1 (2024-Apr-18 12:17):
*) lte - added "at-chat" support for DELL T99W175 (PID: 0x05c6 VID: 0x90d5);
Seems like it doesnt or something is missing... Same thing with simcard.
I have around 250,000 entries on a hAP ax2 and experience the same behavior, but it takes around a day before it exhibits this.CCR1009-7G-1C-1S:
DNS Adlist with +400k entrys - works well for about 1h for just 1 User
Then I tried to open all links in a bookmark folder using the middle mouse button function in Firefox.
There were about 50 links trying to open at the same time. This probably caused the DNS server to crash.
Until the CCR1009 was rebooted, it was no longer accessible.
Update: After reboot the DNS server was reachable for about 1h. Suddenly no response anymore.
Now disabled
I think system > license is kinda broken in chr 7.15rc1... console prints it out okay
chr-715rc1-system-license-print.png
/interface bridge
add admin-mac=78:9A:18:3D:26:5F auto-mac=no dhcp-snooping=yes name=bridge priority=0x7000 vlan-filtering=yes
/interface bridge port
add bpdu-guard=yes bridge=bridge interface=ether1 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether2 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether3 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether4 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether5 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether6 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether7 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether8 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether9 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether10 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether11 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether12 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether13 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether14 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether15 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether16 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether17 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether18 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether19 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether20 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether21 pvid=17 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=ether22 pvid=17 restricted-role=yes
add bridge=bridge interface=ether23 pvid=25 restricted-role=yes
add bridge=bridge interface=ether24 pvid=25 restricted-role=yes
add bridge=bridge interface=sfp-sfpplus1 trusted=yes
add bpdu-guard=yes bridge=bridge interface=sfp-sfpplus2 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=sfp-sfpplus3 restricted-role=yes
add bpdu-guard=yes bridge=bridge interface=sfp-sfpplus4 restricted-role=yes
/interface bridge vlan
add bridge=bridge tagged="bridge,ether1,ether2,ether3,ether4,ether7,ether8,ether9,ether10,ether11,ether12,ether13,ether14,ether15,ether16,ether17,eth\
er18,ether19,ether20,ether21,ether22,sfp-sfpplus1" vlan-ids=14
add bridge=bridge tagged=bridge,sfp-sfpplus1 vlan-ids=17
add bridge=bridge tagged=bridge,sfp-sfpplus1 vlan-ids=25
add bridge=bridge tagged=bridge,sfp-sfpplus1 vlan-ids=31
add bridge=bridge tagged=bridge,ether5,ether6,sfp-sfpplus1 vlan-ids=100
add bridge=bridge tagged=bridge,ether5,ether6,sfp-sfpplus1 vlan-ids=101
add bridge=bridge tagged=bridge,ether5,ether6,sfp-sfpplus1 vlan-ids=102
add bridge=bridge tagged=bridge,ether5,ether6,sfp-sfpplus1 vlan-ids=666
add bridge=bridge tagged=bridge,ether5,ether6,sfp-sfpplus1 vlan-ids=667
/ip neighbor discovery-settings
set lldp-med-net-policy-vlan=14
Embarrassing using testing release on your clients network devices...🙄embarrassing that client's network was broken due to rogue DHCP on their network
and confirmed on my CHR installation...Noted!
I think system > license is kinda broken in chr 7.15rc1... console prints it out okay
chr-715rc1-system-license-print.png
This is already fixed and the fix will be included in the rc2 version.RouterOS version 7.15rc has been released on the "v7 testing" channel!
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 the upgrade process;
3) Device has enough free storage space to download all RouterOS packages.
What's new in 7.15rc1 (2024-Apr-18 12:17):
*) lte - added "at-chat" support for DELL T99W175 (PID: 0x05c6 VID: 0x90d5);
Seems like it doesnt or something is missing... Same thing with simcard.
unsupported.JPG
I have 560,000 I can't say I've had any problems with crashing, if I open all my bookmarks at the same time my dns stops responding with the default settings. But if I do the following all my bookmarks open just fine as expected??I have around 250,000 entries on a hAP ax2 and experience the same behavior, but it takes around a day before it exhibits this.CCR1009-7G-1C-1S:
DNS Adlist with +400k entrys - works well for about 1h for just 1 User
Then I tried to open all links in a bookmark folder using the middle mouse button function in Firefox.
There were about 50 links trying to open at the same time. This probably caused the DNS server to crash.
Until the CCR1009 was rebooted, it was no longer accessible.
Update: After reboot the DNS server was reachable for about 1h. Suddenly no response anymore.
Now disabled
/ip/dns/print
servers: 1.1.1.1,1.0.0.1
dynamic-servers:
use-doh-server:
verify-doh-cert: no
doh-max-server-connections: 5
doh-max-concurrent-queries: 50
doh-timeout: 5s
allow-remote-requests: yes
max-udp-packet-size: 4096
query-server-timeout: 2s
query-total-timeout: 10s
max-concurrent-queries: 1000
max-concurrent-tcp-sessions: 40
cache-size: 131064KiB
cache-max-ttl: 1w
address-list-extra-time: 0s
vrf: main
cache-used: 65585KiB
Another 10 MB of RAM left within 1 day.It works well. ROM - there is enough space on the HDD now. What I'm still dealing with though is probably a memory leak. It was roughly 145MB of RAM when I rebooted. Now after 3 days only 118 MB. And the memory continues to decline. :-( I raised ticket SUP-147911, but nothing happened.
"*) system - general work on optimizing the size of RouterOS packages;"
Actual I can´t see any memory leaks on any of my systems, all are running with 7.15RC1. (Examples 3 of 16)Another 10 MB of RAM left within 1 day.
It works well. ROM - there is enough space on the HDD now. What I'm still dealing with though is probably a memory leak. It was roughly 145MB of RAM when I rebooted. Now after 3 days only 118 MB. And the memory continues to decline. :-( I raised ticket SUP-147911, but nothing happened.
Maybe post your device config and installed packages in a separate topic. This needs further inspection.Another 10 MB of RAM left within 1 day.
21:46:37 dhcp,debug,packet recv server: <pppoe-user1> fe80::2 -> ff02::1:2
21:46:37 dhcp,debug,packet type: renew
21:46:37 dhcp,debug,packet transaction-id: 635501
21:46:37 dhcp,debug,packet -> clientid: 00030001 005056bf 3ea9
21:46:37 dhcp,debug,packet -> serverid: 00030001 005056bf 358d
21:46:37 dhcp,debug,packet -> oro: 23
21:46:37 dhcp,debug,packet -> elapsed_time: 163
21:46:37 dhcp,debug,packet -> ia_pd:
21:46:37 dhcp,debug,packet t1: 1800
21:46:37 dhcp,debug,packet t2: 2880
21:46:37 dhcp,debug,packet id: 0x2
21:46:37 dhcp,debug,packet -> ia_prefix:
21:46:37 dhcp,debug,packet prefix: xxxx:xxxx:3:3001::/64
21:46:37 dhcp,debug,packet valid time: 3600
21:46:37 dhcp,debug,packet pref. time: 2880
21:46:37 dhcp,debug processing client:005056bf3ea9 iapd:0x2
21:46:37 dhcp,debug binding prefix mismatch: xxxx:xxxx:3:3003::/64 != xxxx:xxxx:3:3001::/64
21:46:37 dhcp,debug binding not updated
21:46:37 dhcp,debug,packet send <pppoe-user1> -> fe80::2%44
21:46:37 dhcp,debug,packet type: reply
21:46:37 dhcp,debug,packet transaction-id: 635501
21:46:37 dhcp,debug,packet -> clientid: 00030001 005056bf 3ea9
21:46:37 dhcp,debug,packet -> serverid: 00030001 005056bf 358d
21:46:37 dhcp,debug,packet -> dns_servers:
21:46:37 dhcp,debug,packet xxxx:xxxx:0:10::10
21:46:37 dhcp,debug,packet xxxx:xxxx:0:10::11
21:46:37 dhcp,debug,packet -> ia_pd:
21:46:37 dhcp,debug,packet t1: 43200
21:46:37 dhcp,debug,packet t2: 69120
21:46:37 dhcp,debug,packet id: 0x2
21:46:37 dhcp,debug,packet -> ia_prefix:
21:46:37 dhcp,debug,packet prefix: xxxx:xxxx:3:3001::/64
21:46:37 dhcp,debug,packet valid time: 0
21:46:37 dhcp,debug,packet pref. time: 0
This is broken in all RouterOS 7.x release, not just 7.15rc...Embarrassing using testing release on your clients network devices...🙄embarrassing that client's network was broken due to rogue DHCP on their network
Nope, this issue may only appear with vlan filtering enabled but is confirmed to be an issue in 7.8, 7.9, 7.10, 7.11, 7.12, 7.13, 7.14 and now 7.15rc.You can always go back to v7.14.X DHCP snooping is working as expected on this version
[user@DCCJ-POP1-R1-EDGESW] > /interface/bridge/port export
# 2024-04-24 03:36:24 by RouterOS 7.14.1
# software id = 12DQ-9QUD
#
# model = CRS326-24G-2S+
# serial number = HCQXXXXX
/interface bridge port
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether1 pvid=80
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether2 pvid=80
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether3 pvid=81 trusted=yes
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether4 pvid=81
add bridge=DISTRIBUTION comment="BRAS -> OLT (ether1)" frame-types=\
admit-only-untagged-and-priority-tagged interface=ether5 pvid=10
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether6 pvid=20
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether7 pvid=30
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether8 pvid=40
add bridge=DISTRIBUTION comment=HOTSPOT frame-types=\
admit-only-untagged-and-priority-tagged interface=ether9 pvid=100 trusted=\
yes
add bridge=DISTRIBUTION comment="HOTSPOT UPSTREAM" frame-types=\
admit-only-untagged-and-priority-tagged interface=ether10 pvid=70
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether11 pvid=65
add bridge=DISTRIBUTION interface=ether12
add bridge=DISTRIBUTION interface=ether13
add bridge=DISTRIBUTION interface=ether14
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether15 pvid=65
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether16 pvid=65
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether17 pvid=65
add bridge=DISTRIBUTION frame-types=admit-only-untagged-and-priority-tagged \
interface=ether18 pvid=65
add bridge=DISTRIBUTION interface=ether19
add bridge=DISTRIBUTION interface=ether20
add bridge=DISTRIBUTION interface=ether21
add bridge=DISTRIBUTION interface=ether22
add bridge=DISTRIBUTION interface=ether23
add bridge=DISTRIBUTION comment="802.1Q -> CORESW @ SFP-SFPPLUS1" frame-types=\
admit-only-vlan-tagged interface=sfp-sfpplus1 pvid=4094 trusted=yes
add bridge=DISTRIBUTION comment=RESERVED interface=sfp-sfpplus2
[user@DCCJ-POP1-R1-EDGESW] >
There is one warning regarding VLAN + DHCP snooping: https://help.mikrotik.com/docs/display/ ... CPOption82This is broken in all RouterOS 7.x release, not just 7.15rc...
Embarrassing using testing release on your clients network devices...🙄
Answer:Please do remember that "increase in RAM usage" in 99% cases is a normal behaviour - that is why such a thing as RAM exists. Questions here are:
1) Does the increase stop at some point and remains the same? If yes, then some service has "max RAM/cache" setting or built-in limit specified and RAM usage will increase freely until this limit is reached (for example, not well-adjusted queue type settings, large MTU values specified, etc.);
2) Do you have some "lists" that might increase dynamically and even maybe without max table size limit possible. Excellent example is firewall address-list, DNS cache, connection tracking table, etc.
3) etc.
The fact that RAM usage is increasing does not necessarily mean that there is a bug. If you do think that there is a real memory leak, then please - reboot your router, wait for ~5 minutes, generate supout file A, wait, wait until RAM usage becomes very high and not much RAM is left for the system, generate supout file B, send both files to support@mikrotik.com.
*) dns - added support for "adlist";
You need to keep the support ticket updated. You say RAM consumption increases by 10MB/day. OK, then send them your supout.rif daily. That's all you can do honestly. On a regular linux bug you could try all kind of debug settings, dig logs and kernel messages. But ROS hides this from us. So have no pity with MT support. Send them your findings. As much and detailled it can get. They decide to hide away everything - so they need to investigate/debug/troubleshoot on MT side.SUP-147911 was submitted on 03/24/2024 (exactly 1 month ago) with my configuration, supout.rif, images and explanation.
SUP-147911 was submitted on 03/24/2024 (exactly 1 month ago) with my configuration, supout.rif, images and explanation.
1) No - free memory decreases by about 10MB/day. I tried going to zero (18 days running), but around 38MB of free RAM a reboot was necessary - the router simply stopped routing packets.
2) No - only using QoS queues with fq-codel (without CAKE) - standard home use pppoe xDSL line. Quite simple configuration, nothing special.
This is what it looks like now:
Thanks, the time frame until he stopped responding again was now 20 hours.I have 560,000 I can't say I've had any problems with crashing, if I open all my bookmarks at the same time my dns stops responding with the default settings. But if I do the following all my bookmarks open just fine as expected??
I have around 250,000 entries on a hAP ax2 and experience the same behavior, but it takes around a day before it exhibits this.
max-concurrent-queries: 1000
max-concurrent-tcp-sessions: 40
Also getting alot of query timeouts, vs zero problems on 7.14.Since the new driver was added some client devices are getting SA Query timeouts and have issues with connecting to wifi then. SUP-151059 created. I suppose it will be similar issue that was fixed for previous driver version already.
My configuration is below. I simply mark the uplink traffic according to DSCP high 3 bits (with preference of ACK packets). Outbound traffic is divided into standard 8 queues under one outbound queue tree. Downstream traffic is handled by a single untagged queue. I didn't change any default buffer sizes or anything else. IP and IPv6 Mangles are identical copies. This configuration is the best from a bufferbloat perspective with absolutely minimal latency (9ms) and minimal latency variation (+3-4ms) under full load. That's the reason.@Sit75
Referring to your post (viewtopic.php?p=1067162#p1067162), did you assign a fq_codel_queue_type with 32MB buffer for each member of the queue tree?
If so, then the queue buffer clearly exceeds the RAM of your hAP ac² and and could lead to this behavior.
/queue type
add fq-codel-limit=1024 fq-codel-quantum=300 kind=fq-codel name=fq-codel-ethernet-upload
add fq-codel-limit=1024 fq-codel-quantum=600 kind=fq-codel name=fq-codel-ethernet-download
/queue tree
add bucket-size=0.01 comment="Upload Link" max-limit=25M name="DSCP->Priority - upload" parent=pppoe-out1 priority=1 queue=fq-codel-ethernet-upload
add comment="DSCP 01-07 (Priority 8 - Lowest)" name="8. Routine - upload" packet-mark=priority_8 parent="DSCP->Priority - upload" queue=fq-codel-ethernet-upload
add comment="DSCP 08-15 (Priority 7)" name="7. Priority - upload" packet-mark=priority_7 parent="DSCP->Priority - upload" priority=7 queue=fq-codel-ethernet-upload
add comment="DSCP 16-23 (Priority 6)" name="6. Immedate - upload" packet-mark=priority_6 parent="DSCP->Priority - upload" priority=6 queue=fq-codel-ethernet-upload
add comment="DSCP 24-31 (Priority 5)" name="5. Flash - upload" packet-mark=priority_5 parent="DSCP->Priority - upload" priority=5 queue=fq-codel-ethernet-upload
add comment="DSCP 32-39 (Priority 4)" name="4. Flash Override - upload" packet-mark=priority_4 parent="DSCP->Priority - upload" priority=4 queue=fq-codel-ethernet-upload
add comment="DSCP 40-47 (Priority 3)" name="3. Critical - upload" packet-mark=priority_3 parent="DSCP->Priority - upload" priority=3 queue=fq-codel-ethernet-upload
add comment="DSCP 48-55 (Priority 2)" name="2. Internetwork Control - upload" packet-mark=priority_2 parent="DSCP->Priority - upload" priority=2 queue=fq-codel-ethernet-upload
add comment="DSCP 56-63 (Priority 1 - Highest)" name="1. Network Control - upload" packet-mark=priority_1 parent="DSCP->Priority - upload" priority=1 queue=fq-codel-ethernet-upload
add comment="Download Link" max-limit=120M name="Download Link" packet-mark=no-mark parent=bridge queue=fq-codel-ethernet-download
/ip firewall mangle
add action=change-dscp chain=postrouting comment="ACK -> DSCP 34" new-dscp=34 packet-size=0-123 passthrough=yes protocol=tcp tcp-flags=ack
add action=set-priority chain=postrouting comment="Setting priority from DSCP high 3 bits" new-priority=from-dscp-high-3-bits passthrough=yes
add action=mark-packet chain=postrouting comment="DSCP 56-63 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=7
add action=mark-packet chain=postrouting comment="DSCP 48-55 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=6
add action=mark-packet chain=postrouting comment="DSCP 40-47 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=5
add action=mark-packet chain=postrouting comment="DSCP 32-39 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=4
add action=mark-packet chain=postrouting comment="DSCP 24-31 Priority 5" new-packet-mark=priority_5 out-interface-list=WAN passthrough=no priority=3
add action=mark-packet chain=postrouting comment="DSCP 16-23 Priority 6" new-packet-mark=priority_6 out-interface-list=WAN passthrough=no priority=2
add action=mark-packet chain=postrouting comment="DSCP 08-15 Priority 7" new-packet-mark=priority_7 out-interface-list=WAN passthrough=no priority=1
add action=mark-packet chain=postrouting comment="DSCP 00 -> Priority 7" dscp=0 new-packet-mark=priority_7 out-interface-list=WAN passthrough=no
add action=mark-packet chain=postrouting comment="DSCP 01-07 Priority 8" new-packet-mark=priority_8 out-interface-list=WAN passthrough=no priority=0
/ipv6 firewall mangle
add action=change-dscp chain=postrouting comment="ACK -> DSCP 34" new-dscp=34 packet-size=0-123 passthrough=yes protocol=tcp tcp-flags=ack
add action=set-priority chain=postrouting comment="Setting priority from DSCP high 3 bits" new-priority=from-dscp-high-3-bits passthrough=yes
add action=mark-packet chain=postrouting comment="DSCP 56-63 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=7
add action=mark-packet chain=postrouting comment="DSCP 48-55 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=6
add action=mark-packet chain=postrouting comment="DSCP 40-47 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=5
add action=mark-packet chain=postrouting comment="DSCP 32-39 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=4
add action=mark-packet chain=postrouting comment="DSCP 24-31 Priority 5" new-packet-mark=priority_5 out-interface-list=WAN passthrough=no priority=3
add action=mark-packet chain=postrouting comment="DSCP 16-23 Priority 6" new-packet-mark=priority_6 out-interface-list=WAN passthrough=no priority=2
add action=mark-packet chain=postrouting comment="DSCP 08-15 Priority 7" new-packet-mark=priority_7 out-interface-list=WAN passthrough=no priority=1
add action=mark-packet chain=postrouting comment="DSCP 00 -> Priority 7" dscp=0 new-packet-mark=priority_7 out-interface-list=WAN passthrough=no
add action=mark-packet chain=postrouting comment="DSCP 01-07 Priority 8" new-packet-mark=priority_8 out-interface-list=WAN passthrough=no priority=0
Hello!I'm not 100% but I think their might be an error lurking in the VRF segment again. Using the export functionality on the terminal I see that a IP route has been added which is good but it shows it has been added to the Main routing table, when checking using Winbox it shows it as being added to my VRF routing table (which is correct). Am I overlooking something or is this a bug ?
But it is reported to consume RAM over days slowly and not release this RAM anymore. This is a clear indication of bad garbage collection or not freeing allocated memory anymore. Commonly said as "memory leak".
hello everyone, is there a chance to be able to install it on 16 mb devices? I don't see size reduction anywhere in the changelog
Doing so is not always possible.It's not great if the currently unused memory is not become free again
I confirm, both issues have been resolved in rc2.*) chr - fixed management access (introduced in v7.15rc1);
*) winbox - fixed missing information for CHR/x86 (introduced in v7.15rc1);
468 KiBHow much free space did you have with ROS 7.12.x+zerotier?
/system/resource
uptime: 3w5d43m19s
version: 7.12.1 (stable)
build-time: Nov/17/2023 11:38:45
free-memory: 154.4MiB
total-memory: 256.0MiB
free-hdd-space: 468.0KiB
architecture-name: arm
board-name: hAP ac^2
platform: MikroTik
/system/package
Columns: NAME, VERSION
# NAME VERSION
0 routeros 7.12.1
1 zerotier 7.12.1
Thanks for the effort. On the other hand, there are 2 limits - memory and number of packets. The number of packets in fq_codel is set to 1024 and it is hard to believe that the average TCP packet size in my case will be 32kB (64kB is the theoretical maximum). Standard TCP packets typically follow 1500 bytes Eth frames to avoid fragmentation. Anyway, I upgraded the router to RouterOS 7.15 beta 2, decimated the 8 queues to 4 (use DSCP the highest 2 bits only not 3) and reduced the fq_codel memory size to 16 MiB and we'll see.Sit75 - This seems to probably be a story as old as the planet Earth - RouterOS and its great possibilities which come with a great responsibility. We more or less do let the system administrator to do any kinds of nonsense on the router, but you do that on your own risk. It seems that the reply from DanMos79 is completely accurate. You define a lot of queues with max buffer limits but do not take into consideration that buffer is allocated per queue and if total theoretically allocated memory exceeds router hardware resources, then even your router can reboot due to out of memory condition, and then it is not a memory leak, bur router doing exactly what it was told to do by system administrator. To be sure - I recommend that you adjust queue type limits, do the math on paper first. Queues start up without allocated memory - when you use them, then buffer increases, but it does not exceed the maximum limit. So in short - routers with queues and large buffer will bootup with low RAM usage and during its work, RAM usage will be consumed by simply traffic going through queues that are at the moment "installed". RAM is freed only when queue is removed.
P.S. You should see the exact same behaviour in older releases. In short - this issue does not seem to be an issue and has nothing to do with this release. Of course, please correct me, if you test this and I am wrong.
It's in the extras package archive, where it had always been. However, AFAIK it's only available for ARM architecture(s).Where did wifi-qcom-ac package go? can't seems to find in extra package and why?
Good catch.There is a change not included in change list. /system resource board-name for CHR now has extra information about the host/platform it is running on.
For example, it might now be "CHR x86 Xen HVM domU"
So, testing if board-name is "CHR" no longer works; you'd need to use something like /^CHR/.
I do see the "all the changes" mention. Why is not this mention in the change log? It will (and has) break script that uses this information.RouterOS changelog covers all the changes introduced in any particular release
Cleanup done.Please keep RouterOS release topics strictly related to the particular release. These topics are made to make aware users of how a particular update might have changed something. Make as many new topics as you want for anything else or of course the best way - contact support.
I had a laptop (intel wifi card AX200 series) refusing to move, it's a works laptop so I have no access to it, I had to force it to shift IE7.15.x has introduced the new feature of the two iPads in my house no longer roam reliably like they did with 7.14.x and earlier. The often stubbornly stick to the weaker AP they roamed away from. A quick Wifi on/off cycle gets them connected to the closer AP. 5009 and 2x hapax^2.
The family is complaining. Not good!
interface/wifi/access-list/print
Columns: INTERFACE, MAC-ADDRESS, ACTION
# INTERFACE MAC-ADDRESS ACTION
1 wifi2 6C:A1: reject
2 cap-wifi2 6C:A1: reject
I also have AX200-series wifi card in my laptop (AX211) and no problem roaming in capsman environment with RB5009 / AX3 / AX2 (home).I had a laptop (intel wifi card AX200 series) refusing to move, it's a works laptop so I have no access to it, I had to force it to shift IE7.15.x has introduced the new feature of the two iPads in my house no longer roam reliably like they did with 7.14.x and earlier. The often stubbornly stick to the weaker AP they roamed away from. A quick Wifi on/off cycle gets them connected to the closer AP. 5009 and 2x hapax^2.
The family is complaining. Not good!
yeah my own laptop has an ax card with no problems, I think this might be a driver problem but like I say, nothing I can do about it, it belongs to the Government!I also have AX200-series wifi card in my laptop (AX211) and no problem roaming in capsman environment with AX3 / AX2 (home) and other capsman setup using AX3 / cAP AX / AX Lite (client network).
I had a laptop (intel wifi card AX200 series) refusing to move, it's a works laptop so I have no access to it, I had to force it to shift IE
Yes.Are the two hAP ax's using different channels?
I have exactly the same finding with "SA Query timeout" and my kids with iPads complain about "WiFi quality". Additionally, in the iOS mobile app, the SSID is not displayed in RouterOS 7.15. RC1 or RC2. RouterOS 7.14.3 seems much better from this point of view.Still getting random query timeout disconnects on HAP AX3 on 7.15 RC2, no problems on 7.14, all started happening since new Qualcomm drivers got implemented.
Also roaming is super bad, clients hang on 2ghz practically near router full signal and never or rarely roam to 5ghz.
I hope this doesnt go into final release..
Hello Normis, is it possible to change the location from local storage to a USB flash drive?That's for all potential adlist users. The feature requires storage and RAM, it is recommended for ARM64 devices that have those resources more than others
The second thing is that AdList works when I add it as a file, not as a link.
winbox64_EoASgwZwyq.png
Can confirm i am seeing the same issue on my CCR2216. After "testing" 7.15rc1 we only had 1 hour of uptime on an IX before being pinged for our session locking up.an old bgp issue araised again in 7.15rc1, after one hour of operation:
- one core locked to 100% about routing
- slow prefixes advertisment (in this condition)
- some ipv6 bgp sessions closed by HoldTimer Expired
this kind of issue was fixed several months ago, and again present in this release candidate......
SUP-150642 opened
it's a regression of an old bug.Can confirm i am seeing the same issue on my CCR2216. After "testing" 7.15rc1 we only had 1 hour of uptime on an IX before being pinged for our session locking up.an old bgp issue araised again in 7.15rc1, after one hour of operation:
- one core locked to 100% about routing
- slow prefixes advertisment (in this condition)
- some ipv6 bgp sessions closed by HoldTimer Expired
this kind of issue was fixed several months ago, and again present in this release candidate......
SUP-150642 opened
I'll take your word for it, trying to follow their forum is like pulling teeth!Following Ubiquiti forum threads on their releases....it isnt much of a difference 😛
when that happens, usually it means iPad is trying to use a technology it does not support. Maybe you enabled WPA3?Just now the iPad started asking for the Wifi password which it does know. Did not reconnect until I restarted the 5009.
Also my Galaxy A52 had a run of SA Query Timeouts earlier today. This is a big regression since 7.14.3 in the Wifi driver as that version worked nicely.
These 2 behaviours were something that would happen when I initially started using the Wifi driver last year and they seemed to have come back. I have the same connectivity and roaming issues as ivicask above.
All my devices have worked fine for many months, in fact really nicely with below until the beta 9 came out. Putting just the AX2's back to 7.14.3 and they are fine again.when that happens, usually it means iPad is trying to use a technology it does not support. Maybe you enabled WPA3?
I want to understand why you commented this way? User said: all working perfectly well until including 7.14.3.when that happens, usually it means iPad is trying to use a technology it does not support. Maybe you enabled WPA3?Just now the iPad started asking for the Wifi password which it does know. Did not reconnect until I restarted the 5009.
Also my Galaxy A52 had a run of SA Query Timeouts earlier today. This is a big regression since 7.14.3 in the Wifi driver as that version worked nicely.
These 2 behaviours were something that would happen when I initially started using the Wifi driver last year and they seemed to have come back. I have the same connectivity and roaming issues as ivicask above.
Probably because Mikrotik is still tuning these drivers, and there is a big chance that some new feature has been enabled? We see this time and again: a "wrong" way to configure something works for months. Then Mikrotik releases an update that fix a non conforming behavior - and suddenly we see lots of setups that "just worked" breaking.I want to understand why you commented this way? User said: all working perfectly well until including 7.14.3.
More often than not, user forgot he changed something in the device or in the router.User said: all working perfectly well until including 7.14.3.
The fact that wrong behaviour is changed completely (like how to address a vrf interface in firewall as for example) is a good thing. Not communicating these changes in changelog and let people debug the blackbox themselves. Not nice.It's irrelevant if You consider this a good or bad development policy: it is what it is.
Maybe you don't need the "connect-priority=0/1" with the new driver and its this what breaks it. Why did you use "group-key-update=1h" instead of the 24h default?All my devices have worked fine for many months, in fact really nicely with below until the beta 9 came out. Putting just the AX2's back to 7.14.3 and they are fine again.
/interface wifi security
add authentication-types=wpa2-psk,wpa3-psk connect-priority=0/1 disabled=no ft=\
yes ft-over-ds=yes group-key-update=1h name=SecJGA
Did you mean this as a bug report? Because you can even benefit from FT without using CAPsMAN at all.Also FT does not work without CAPSMAN;
Default for group-key-update if you leave it empty is 5 min. This for me breaks a few IoT devices as they do not have the process power to calculate the key before it needs to be recalculated.Why did you use "group-key-update=1h" instead of the 24h default?
See here: https://help.mikrotik.com/docs/display/ ... PropertiesDid you mean this as a bug report? Because you can even benefit from FT without using CAPsMAN at all.Also FT does not work without CAPSMAN;
For a client device to successfully roam between 2 APs, the APs need to be managed by the same instance of RouterOS. For information on how to centrally manage multiple APs, see CAPsMAN
Nothing wrong with "For a client device to successfully roam between 2 APs, the APs need to be managed by the same instance of RouterOS". AP dont need to refer to hardware AP. Each wifi interface on ROS is an (logical) AP itself. Having an 2.4ghz and 5ghz with the same security configuration on the same ROS can benefit from FT without CAPsMAN as well.See here: https://help.mikrotik.com/docs/display/ ... Properties
For a client device to successfully roam between 2 APs, the APs need to be managed by the same instance of RouterOS. For information on how to centrally manage multiple APs, see CAPsMAN
That is only for roaming between 2.4 and 5 GHz on the same AP.it works even without running capsman
The goal was to correct this statement.Also FT does not work without CAPSMAN;
!) system - added support for AMPERE (R) and ARM64 CHR installations (new ARM64 CHR image available);
[admin@MikroTik] > /system/resource/print
uptime: 6m37s
version: 7.15rc2 (testing)
build-time: 2024-04-24 09:38:34
free-memory: 3652.5MiB
total-memory: 4000.0MiB
cpu: ARM64
cpu-count: 2
cpu-load: 1%
free-hdd-space: 8.9GiB
total-hdd-space: 8.9GiB
write-sect-since-reboot: 282
write-sect-total: 282
architecture-name: arm64
board-name: CHR Hetzner vServer
platform: MikroTik
[admin@MikroTik] > /system/device-mode/print
mode: enterprise
container: yes
Hard to consider switching between 2 SSID-s on the same device “roaming” but there you have it. Perhaps it would be nice to also file a bug report to have the wiki page updated to list this feature?The goal was to correct this statement.Also FT does not work without CAPSMAN;
It fast roams (FT). Whether it is 2ms faster than BSS Transition (802.11v) or not. It works, it does what it does. And without any of 802.11r/802.11v the clients just disconnect and connect to another AP and it takes some seconds without connection at all. So no roaming, just disconnect and connect.It does that without any roaming support at all! The roaming really isn't much faster with "Fast Roaming" (FT) and WPA2-PSK. The advantage of this addition is mainly there when you use WPA2-EAP (and also WPA3 I think).
That's pretty much the definition of WiFi roaming.And without any of 802.11r/802.11v the clients just disconnect and connect to another AP
With PSK non-FT roaming takes only few milliseconds. If it takes multiple seconds for you, your AP- or L2-configuration is incorrect/bad.and it takes some seconds without connection at all.
The only case when I personally observed anything similar with the old drivers was if I forcibly kicked (via the access list) clients off an AP based on the signal strength. When I let the clients roam by themselves the transition is almost seamless.With old wireless driver I could see the wifi symbol on my Android device disappear and reappear after 1 ~second.
Right! I've already suppressed that. At least I don't need that dreadful access list stuff (band steering for the poor's) with the new driver anymore.The only case when I personally observed anything similar with the old drivers was if I forcibly kicked (via the access list) clients off an AP based on the signal strength.
Done.UpRunTech - Can you please reproduce the wifi problem with authentication/roaming/etc. and generate supout files on your APs and CAPsMAN?
/ip/dns/cache/print
That is just UI, I would not consider that a measurement.Really? With old wireless driver I could see the wifi symbol on my Android device disappear and reappear after 1 ~second. It was clearly not just some milliseconds.
/routing/rule
add action=lookup disabled=no routing-mark=main table=main
please check SUP-151768
The routing-table for IPv6 routes requires enabling any line of code in /routing/rule each time for it to take effect; this issue does not exist with IPv4. Specifically, when /routing/rule is empty, the routing-table for IPv6 routes does not work.
When /routing/rule is empty, the routing-table for IPv6 routes is ineffective. At this point, you just need to enable any disabled arbitrary code, even if it is unrelated to the specific routing-table.
After doing this, the routing-table for IPv6 routes becomes effective. Then, even if you disable the above code, it still remains effective. Currently, this operation needs to be repeated every time the system is rebooted, an issue that does not occur with IPv4 routes.Code: Select all/routing/rule add action=lookup disabled=no routing-mark=main table=main
/routing/rule/set [find table=main routing-mark=main] disabled=no
:delay 3s
/routing/rule/set [find table=main routing-mark=main] disabled=yes
/routing/rule
add action=lookup disabled=no routing-mark=main table=main
please check SUP-151768
The routing-table for IPv6 routes requires enabling any line of code in /routing/rule each time for it to take effect; this issue does not exist with IPv4. Specifically, when /routing/rule is empty, the routing-table for IPv6 routes does not work.
When /routing/rule is empty, the routing-table for IPv6 routes is ineffective. At this point, you just need to enable any disabled arbitrary code, even if it is unrelated to the specific routing-table.
After doing this, the routing-table for IPv6 routes becomes effective. Then, even if you disable the above code, it still remains effective. Currently, this operation needs to be repeated every time the system is rebooted, an issue that does not occur with IPv4 routes.Code: Select all/routing/rule add action=lookup disabled=no routing-mark=main table=main
Memory leak, memory leak, memory leak...... No emotion, absolutely no change after applying the recommended solution. Still roughly 10 MiB/day of memory leak with standard router usage. It has around 150 MiB of free memory immediately after restart. After 5 and half days I'm at about 90 MiB. Neither C nor C++ has a native "garbage collector", therefore precise memory deallocation is necessary. If not, then we have a problem.Thanks for the effort. On the other hand, there are 2 limits - memory and number of packets. The number of packets in fq_codel is set to 1024 and it is hard to believe that the average TCP packet size in my case will be 32kB (64kB is the theoretical maximum). Standard TCP packets typically follow 1500 bytes Eth frames to avoid fragmentation. Anyway, I upgraded the router to RouterOS 7.15 beta 2, decimated the 8 queues to 4 (use DSCP the highest 2 bits only not 3) and reduced the fq_codel memory size to 16 MiB and we'll see.Sit75 - This seems to probably be a story as old as the planet Earth - RouterOS and its great possibilities which come with a great responsibility. We more or less do let the system administrator to do any kinds of nonsense on the router, but you do that on your own risk. It seems that the reply from DanMos79 is completely accurate. You define a lot of queues with max buffer limits but do not take into consideration that buffer is allocated per queue and if total theoretically allocated memory exceeds router hardware resources, then even your router can reboot due to out of memory condition, and then it is not a memory leak, bur router doing exactly what it was told to do by system administrator. To be sure - I recommend that you adjust queue type limits, do the math on paper first. Queues start up without allocated memory - when you use them, then buffer increases, but it does not exceed the maximum limit. So in short - routers with queues and large buffer will bootup with low RAM usage and during its work, RAM usage will be consumed by simply traffic going through queues that are at the moment "installed". RAM is freed only when queue is removed.
P.S. You should see the exact same behaviour in older releases. In short - this issue does not seem to be an issue and has nothing to do with this release. Of course, please correct me, if you test this and I am wrong.
Consuming available RAM over time does not mean there is a memory leak. If the consumption continues beyond the available RAM, this is different. Thankfully, there is no GC in the languages mentioned or we’d be dealing with the GC latency sporadically.Memory leak, memory leak, memory leak...... No emotion, absolutely no change after applying the recommended solution. Still roughly 10 MiB/day of memory leak with standard router usage. It has around 150 MiB of free memory immediately after restart. After 5 and half days I'm at about 90 MiB. Neither C nor C++ has a native "garbage collector", therefore precise memory deallocation is necessary. If not, then we have a problem.
Thanks for the effort. On the other hand, there are 2 limits - memory and number of packets. The number of packets in fq_codel is set to 1024 and it is hard to believe that the average TCP packet size in my case will be 32kB (64kB is the theoretical maximum). Standard TCP packets typically follow 1500 bytes Eth frames to avoid fragmentation. Anyway, I upgraded the router to RouterOS 7.15 beta 2, decimated the 8 queues to 4 (use DSCP the highest 2 bits only not 3) and reduced the fq_codel memory size to 16 MiB and we'll see.
Memory leak status: 6 days and 18 hours - free memory is 78,4 MiB. Next status tomorrow - I expect roughly about 65 - 70 MiB.Memory leak, memory leak, memory leak...... No emotion, absolutely no change after applying the recommended solution. Still roughly 10 MiB/day of memory leak with standard router usage. It has around 150 MiB of free memory immediately after restart. After 5 and half days I'm at about 90 MiB. Neither C nor C++ has a native "garbage collector", therefore precise memory deallocation is necessary. If not, then we have a problem.
Thanks for the effort. On the other hand, there are 2 limits - memory and number of packets. The number of packets in fq_codel is set to 1024 and it is hard to believe that the average TCP packet size in my case will be 32kB (64kB is the theoretical maximum). Standard TCP packets typically follow 1500 bytes Eth frames to avoid fragmentation. Anyway, I upgraded the router to RouterOS 7.15 beta 2, decimated the 8 queues to 4 (use DSCP the highest 2 bits only not 3) and reduced the fq_codel memory size to 16 MiB and we'll see.
The issue of memory or disk leak in the hAP ac2 has been confirmed as unresolvable. I have sold all my hAP ac2 units and replaced them with hAP ax3. Previous contacts with customer support were unable to provide a specific reason; they only noted that some configurations were stored, but these gradually decreased in size over time, eventually reaching 0 size. After a restart, the hAP ac2 turns into a brick, unable to boot, and can only be repaired through netinstall.Memory leak, memory leak, memory leak...... No emotion, absolutely no change after applying the recommended solution. Still roughly 10 MiB/day of memory leak with standard router usage. It has around 150 MiB of free memory immediately after restart. After 5 and half days I'm at about 90 MiB. Neither C nor C++ has a native "garbage collector", therefore precise memory deallocation is necessary. If not, then we have a problem.
Thanks for the effort. On the other hand, there are 2 limits - memory and number of packets. The number of packets in fq_codel is set to 1024 and it is hard to believe that the average TCP packet size in my case will be 32kB (64kB is the theoretical maximum). Standard TCP packets typically follow 1500 bytes Eth frames to avoid fragmentation. Anyway, I upgraded the router to RouterOS 7.15 beta 2, decimated the 8 queues to 4 (use DSCP the highest 2 bits only not 3) and reduced the fq_codel memory size to 16 MiB and we'll see.
If this is true, I would expect some serious announcement from Mikrotik. So far all I see from their side is pressure - "It's your fault - wrong configuration." What's even more serious is the fact that they still introduce new rather expensive HW based on the exact same hAP ac^2 IPQ-4019 256 Mib RAM and 16 MiB ROM with RouterOS 7 configuration as the new Chateau 5G R16.The issue of memory or disk leak in the hAP ac2 has been confirmed as unresolvable. I have sold all my hAP ac2 units and replaced them with hAP ax3. Previous contacts with customer support were unable to provide a specific reason; they only noted that some configurations were stored, but these gradually decreased in size over time, eventually reaching 0 size. After a restart, the hAP ac2 turns into a brick, unable to boot, and can only be repaired through netinstall.
Memory leak, memory leak, memory leak...... No emotion, absolutely no change after applying the recommended solution. Still roughly 10 MiB/day of memory leak with standard router usage. It has around 150 MiB of free memory immediately after restart. After 5 and half days I'm at about 90 MiB. Neither C nor C++ has a native "garbage collector", therefore precise memory deallocation is necessary. If not, then we have a problem.
So, if you're just experiencing memory leaks, I suggest routinely restarting the device. What I encountered was the disk space leaking to zero. I'm not sure what was being recorded inside; the files directory was empty and of no help.
Moreover, this problem only occurs with RouterOS 7.x. Since the hAP ac2 is quite an old model, it seems the memory leak issue in RouterOS will not be resolved anytime soon.
Trust me, sell it and switch to the hAP ax2 if you want to use RouterOS v7. If you're just using the hAP ac2 for everyday activities, I recommend sticking with RouterOS v6.
Because its 16MB is really too small, and it's truly a torment.
Please check ticket SUP-85301 to see if this issue might be resolved in the future.
"memory leak" has NOTHING to do with "too little disk space"!!So, if you're just experiencing memory leaks, I suggest routinely restarting the device. What I encountered was the disk space leaking to zero. I'm not sure what was being recorded inside; the files directory was empty and of no help.
Moreover, this problem only occurs with RouterOS 7.x. Since the hAP ac2 is quite an old model, it seems the memory leak issue in RouterOS will not be resolved anytime soon.
wtf, for sure just your YMMV 2cent statement and no common knowledge..It's common knowledge (without any speciffic insights) that hAP ac2 running ROS v7 should either be used as pretty simple AP or as router without any wireless package intalled
Once again, and for the final time, "the memory" has NOTHING to do with "the disk space"!But if you use it with configurations similar to those from the old RouterOS v6, you will find that over time, memory will leak, and disk space will gradually drop to zero
I agree that this is bad. They should not recommend v7 on devices that cannot run it. Devices like hAP lite even struggle when running later v6 versions, let alone v7.Then, someone from MT lists V7 as the official and recommended version for download on the HAP lite product page.
Another 10 MiB of RAM went down the next day. Now I have 71.3 MiB (256 MiB version hAP ac^2) in 7 days and 13 hours of operation.
Hmmm,...the alternative would be to declair those devices "End of Live" or "End of Support"...I agree that this is bad. They should not recommend v7 on devices that cannot run it. Devices like hAP lite even struggle when running later v6 versions, let alone v7.Then, someone from MT lists V7 as the official and recommended version for download on the HAP lite product page.
But I guess it is similar to the performance issue. Performance figures are published for every router, but it never states which RouterOS version was used to obtain them. Performance can be considerably lower with v7, especially on older devices, but there are no warnings or even mentions on that on the product pages.
This certainly can be improved.
Hmmm,...the alternative would be to declair those devices "End of Live" or "End of Support"...
but would this be the better solution instead of supporting old devices with the newest ROS with concerns?
One of the best aspects of having MT hardware is it´s longevity! This is what sets them apart from any (?) other vendor. Since 7.14 I am running ROS 7 on my most devices (including HAPmini, HAPac2...), and it works. Yes I have not much space left, and I can´t run containers on them, etc. Who cares? My CAPac installations are for accessing WLAN and have multi SSID/VLAN. I don´t expect same performance and all the new features for the older devices.Hmmm,...the alternative would be to declair those devices "End of Live" or "End of Support"...
but would this be the better solution instead of supporting old devices with the newest ROS with concerns?
Sure, you can try. It is standard home use AP with pppoe, dual frequency AP (2,4 + 5 GHz), Wireguard, IP4+IP6, DHCP, DNS, IP4 source NAT, standard FW IP4 and IP6 rules and marking traffic for Queue Tree for uplink (fq-codel). That is all.Another 10 MiB of RAM went down the next day. Now I have 71.3 MiB (256 MiB version hAP ac^2) in 7 days and 13 hours of operation.
I have a total of six devices currently installed with ROS 7.14.3 (including three hAP ac² with only 128 MiB RAM running as APs with wifi-qcom-ac driver) and cannot see a memory leak on any of them. Only a small fluctuation in the RAM usage can be seen, but at most +/- 5 MiB (even less on the hAP ac²).
Maybe you can post your complete config?
/interface bridge
add admin-mac=xx:xx:xx:xx:xx:xx auto-mac=no comment=defconf name=bridge
/interface ethernet
set [ find default-name=ether1 ] mtu=1550 rx-flow-control=auto tx-flow-control=auto
set [ find default-name=ether2 ] rx-flow-control=auto tx-flow-control=auto
set [ find default-name=ether3 ] rx-flow-control=auto tx-flow-control=auto
set [ find default-name=ether4 ] rx-flow-control=auto tx-flow-control=auto
set [ find default-name=ether5 ] rx-flow-control=auto tx-flow-control=auto
/interface wifi
set [ find default-name=wifi1 ] channel.band=2ghz-n .width=20/40mhz-Ce configuration.country=xxxx .mode=ap .multicast-enhance=enabled .qos-classifier=priority .ssid=Net_DSL disabled=no mtu=1500 \
security.authentication-types=wpa2-psk,wpa3-psk .ft=yes .ft-over-ds=yes .ft-preserve-vlanid=yes steering.neighbor-group=dynamic-_DSL-xxxx .rrm=yes .wnm=yes
set [ find default-name=wifi2 ] channel.band=5ghz-ac .skip-dfs-channels=10min-cac .width=20/40/80mhz configuration.country=xxxx .mode=ap .multicast-enhance=enabled .qos-classifier=priority .ssid=Net_DSL \
disabled=no mtu=1500 security.authentication-types=wpa2-psk,wpa3-psk .ft=yes .ft-over-ds=yes .ft-preserve-vlanid=yes steering.neighbor-group=dynamic-_DSL-xxxx .rrm=yes .wnm=yes
/interface wireguard
add comment="WireGuard interface" listen-port=xxxx mtu=1420 name=WireGuard
add comment=back-to-home-vpn listen-port=xxxx mtu=1420 name=back-to-home-vpn
/interface vlan
add interface=ether1 mtu=1520 name=vlan-xxx vlan-id=xxx
/interface pppoe-client
add add-default-route=yes disabled=no interface=vlan-xxx name=pppoe-out1 user=xxxx
/interface list
add comment=defconf name=WAN
add comment=defconf name=LAN
/ip pool
add name=dhcp ranges=xx.xx.xx.xx-xx.xx.xx.xx
/ip dhcp-server
add address-pool=dhcp interface=bridge lease-time=10m name=defconf
/queue type
add fq-codel-limit=1024 fq-codel-memlimit=4.0MiB fq-codel-quantum=300 kind=fq-codel name=fq-codel-ethernet-upload
add fq-codel-limit=1024 fq-codel-memlimit=8.0MiB fq-codel-quantum=600 kind=fq-codel name=fq-codel-ethernet-download
/queue tree
add bucket-size=0.01 comment="Upload Link" max-limit=25M name="DSCP->Priority - upload" parent=pppoe-out1 priority=1 queue=fq-codel-ethernet-upload
add comment="DSCP 01-15 (Priority 4)" max-limit=25M name="4. Routine - upload" packet-mark=priority_4 parent="DSCP->Priority - upload" priority=4 queue=fq-codel-ethernet-upload
add comment="DSCP 16-31 (Priority 3)" max-limit=25M name="3. Immedate - upload" packet-mark=priority_3 parent="DSCP->Priority - upload" priority=3 queue=fq-codel-ethernet-upload
add comment="DSCP 32-47 (Priority 2)" max-limit=25M name="2. Critical - upload" packet-mark=priority_2 parent="DSCP->Priority - upload" priority=2 queue=fq-codel-ethernet-upload
add comment="DSCP 48-63 (Priority 1 - Highest)" max-limit=25M name="1. Network Control - upload" packet-mark=priority_1 parent="DSCP->Priority - upload" priority=1 queue=fq-codel-ethernet-upload
add comment="Download Link" max-limit=120M name="Download Link" packet-mark=no-mark parent=bridge priority=3 queue=fq-codel-ethernet-download
/interface bridge port
add bridge=bridge comment=defconf interface=ether2
add bridge=bridge comment=defconf interface=ether3
add bridge=bridge comment=defconf interface=ether4
add bridge=bridge comment=defconf interface=ether5
add bridge=bridge comment=defconf interface=*7
add bridge=bridge comment=defconf interface=wifi2
add bridge=bridge comment=defconf interface=wifi1
/interface bridge settings
set allow-fast-path=no use-ip-firewall=yes use-ip-firewall-for-pppoe=yes use-ip-firewall-for-vlan=yes
/ip neighbor discovery-settings
set discover-interface-list=LAN
/interface list member
add comment=defconf interface=bridge list=LAN
add interface=pppoe-out1 list=WAN
add interface=WireGuard list=LAN
/interface sstp-server server
set ciphers=aes256-sha
/interface wireguard peers
add allowed-address=xx.xx.xx.xx/32,xxxx:xxxx:xxxx:xxxx::xxxx:xxxx/128 comment=Tab1 interface=WireGuard name=peer1 public-key="xxxx"
add allowed-address=xx.xx.xx.xx/32,xxxx:xxxx:xxxx:xxxx::xxxx:xxxx/128 comment=Pho1 interface=WireGuard name=peer2 public-key="xxxx"
add allowed-address=xx.xx.xx.xx/32,xxxx:xxxx:xxxx:xxxx::xxxx:xxxx/128 comment=Tab2 interface=WireGuard name=peer3 public-key="xxxx"
/ip address
add address=xx.xx.xx.xx/24 comment=defconf interface=bridge network=xx.xx.xx.xx
add address=xx.xx.xx.xx/24 interface=WireGuard network=xx.xx.xx.xx
/ip cloud
set back-to-home-vpn=enabled ddns-enabled=yes vpn-prefer-relay-code=EUR1
/ip dhcp-client
add comment=defconf disabled=yes interface=ether1
/ip dhcp-server lease
add address=xx.xx.xx.xx client-id=xx:xx:xx:xx:xx:xx:xx comment="A serv" mac-address=xx:xx:xx:xx:xx:xx server=defconf
add address=xx.xx.xx.xx client-id=xx:xx:xx:xx:xx:xx comment="B serv" mac-address=xx:xx:xx:xx:xx:xx server=defconf
add address=xx.xx.xx.xx client-id=xx:xx:xx:xx:xx:xx comment="C serv" mac-address=xx:xx:xx:xx:xx:xx server=defconf
add address=xx.xx.xx.xx client-id=xx:xx:xx:xx:xx:xx comment="D serv" mac-address=xx:xx:xx:xx:xx:xx server=defconf
/ip dhcp-server network
add address=xx.xx.xx.xx/24 comment=defconf dns-server=xx.xx.xx.xx,xx.xx.xx.xx,xx.xx.xx.xx,xx.xx.xx.xx gateway=xx.xx.xx.xx netmask=24
/ip dns
set allow-remote-requests=yes servers=xx.xx.xx.xx,xx.xx.xx.xx,xx.xx.xx.xx
/ip dns static
add address=xx.xx.xx.xx comment=defconf name=router.lan
/ip firewall filter
add action=accept chain=input comment="WireGuard listening" dst-port=xxxx protocol=udp
add action=accept chain=input comment="WireGuard remote LAN" src-address=xx.xx.xx.xx/24
add action=accept chain=input comment="defconf: accept established,related,untracked" connection-state=established,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=invalid
add action=accept chain=input comment="defconf: accept ICMP" protocol=icmp
add action=accept chain=input comment="defconf: accept to local loopback (for CAPsMAN)" dst-address=127.0.0.1
add action=drop chain=input comment="defconf: drop all not coming from LAN" in-interface-list=!LAN
add action=accept chain=forward comment="defconf: accept in ipsec policy" ipsec-policy=in,ipsec
add action=accept chain=forward comment="defconf: accept out ipsec policy" ipsec-policy=out,ipsec
add action=fasttrack-connection chain=forward comment="defconf: fasttrack" connection-state=established,related disabled=yes hw-offload=yes
add action=accept chain=forward comment="defconf: accept established,related, untracked" connection-state=established,related,untracked
add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid
add action=drop chain=forward comment="defconf: drop all from WAN not DSTNATed" connection-nat-state=!dstnat connection-state=new in-interface-list=WAN
/ip firewall mangle
add action=change-dscp chain=postrouting comment="ACK -> DSCP 34" new-dscp=34 packet-size=0-123 passthrough=yes protocol=tcp tcp-flags=ack
add action=set-priority chain=postrouting comment="Setting priority from DSCP high 3 bits" new-priority=from-dscp-high-3-bits passthrough=yes
add action=mark-packet chain=postrouting comment="DSCP 56-63 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=7
add action=mark-packet chain=postrouting comment="DSCP 48-55 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=6
add action=mark-packet chain=postrouting comment="DSCP 40-47 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=5
add action=mark-packet chain=postrouting comment="DSCP 32-39 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=4
add action=mark-packet chain=postrouting comment="DSCP 24-31 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=3
add action=mark-packet chain=postrouting comment="DSCP 16-23 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=2
add action=mark-packet chain=postrouting comment="DSCP 00 -> Priority 3" dscp=0 new-packet-mark=priority_3 out-interface-list=WAN passthrough=no
add action=mark-packet chain=postrouting comment="DSCP 08-15 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=1
add action=mark-packet chain=postrouting comment="DSCP 01-07 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=0
/ip firewall nat
add action=src-nat chain=srcnat ipsec-policy=out,none out-interface-list=WAN to-addresses=xx.xx.xx.xx
/ip hotspot profile
set [ find default=yes ] html-directory=hotspot
/ip service
set telnet disabled=yes
set ftp disabled=yes
set www disabled=yes
set ssh disabled=yes
set api disabled=yes
set winbox address=xx.xx.xx.xx/24,xx.xx.xx.xx/32
set api-ssl disabled=yes
/ip smb shares
set [ find default=yes ] directory=pub
/ipv6 address
add from-pool=pool58 interface=bridge
add from-pool=pool58 interface=WireGuard
/ipv6 dhcp-client
add interface=pppoe-out1 pool-name=pool58 request=prefix use-peer-dns=no
/ipv6 firewall address-list
add address=::/128 comment="defconf: unspecified address" list=bad_ipv6
add address=::1/128 comment="defconf: lo" list=bad_ipv6
add address=fec0::/10 comment="defconf: site-local" list=bad_ipv6
add address=::ffff:0.0.0.0/96 comment="defconf: ipv4-mapped" list=bad_ipv6
add address=::/96 comment="defconf: ipv4 compat" list=bad_ipv6
add address=100::/64 comment="defconf: discard only " list=bad_ipv6
add address=2001:db8::/32 comment="defconf: documentation" list=bad_ipv6
add address=2001:10::/28 comment="defconf: ORCHID" list=bad_ipv6
add address=3ffe::/16 comment="defconf: 6bone" list=bad_ipv6
/ipv6 firewall filter
add action=accept chain=forward comment="Wireguard IPv6" in-interface=WireGuard out-interface-list=WAN src-address=xxxx:xxxx:xxxx:xxxx::/64
add action=accept chain=input comment="defconf: accept established,related,untracked" connection-state=established,related,untracked
add action=drop chain=input comment="defconf: drop invalid" connection-state=invalid
add action=accept chain=input comment="defconf: accept ICMPv6" protocol=icmpv6
add action=accept chain=input comment="defconf: accept UDP traceroute" dst-port=33434-33534 protocol=udp
add action=accept chain=input comment="defconf: accept DHCPv6-Client prefix delegation." dst-port=546 protocol=udp src-address=fe80::/10
add action=accept chain=input comment="defconf: accept IKE" dst-port=500,4500 protocol=udp
add action=accept chain=input comment="defconf: accept ipsec AH" protocol=ipsec-ah
add action=accept chain=input comment="defconf: accept ipsec ESP" protocol=ipsec-esp
add action=accept chain=input comment="defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=drop chain=input comment="defconf: drop everything else not coming from LAN" in-interface-list=!LAN
add action=accept chain=forward comment="defconf: accept established,related,untracked" connection-state=established,related,untracked
add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid
add action=drop chain=forward comment="defconf: drop packets with bad src ipv6" src-address-list=bad_ipv6
add action=drop chain=forward comment="defconf: drop packets with bad dst ipv6" dst-address-list=bad_ipv6
add action=drop chain=forward comment="defconf: rfc4890 drop hop-limit=1" hop-limit=equal:1 protocol=icmpv6
add action=accept chain=forward comment="defconf: accept ICMPv6" protocol=icmpv6
add action=accept chain=forward comment="defconf: accept HIP" protocol=139
add action=accept chain=forward comment="defconf: accept IKE" dst-port=500,4500 protocol=udp
add action=accept chain=forward comment="defconf: accept ipsec AH" protocol=ipsec-ah
add action=accept chain=forward comment="defconf: accept ipsec ESP" protocol=ipsec-esp
add action=accept chain=forward comment="defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec
add action=drop chain=forward comment="defconf: drop everything else not coming from LAN" in-interface-list=!LAN
/ipv6 firewall mangle
add action=change-dscp chain=postrouting comment="ACK -> DSCP 34" new-dscp=34 packet-size=0-123 passthrough=yes protocol=tcp tcp-flags=ack
add action=set-priority chain=postrouting comment="Setting priority from DSCP high 3 bits" new-priority=from-dscp-high-3-bits passthrough=yes
add action=mark-packet chain=postrouting comment="DSCP 56-63 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=7
add action=mark-packet chain=postrouting comment="DSCP 48-55 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=6
add action=mark-packet chain=postrouting comment="DSCP 40-47 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=5
add action=mark-packet chain=postrouting comment="DSCP 32-39 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=4
add action=mark-packet chain=postrouting comment="DSCP 24-31 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=3
add action=mark-packet chain=postrouting comment="DSCP 16-23 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=2
add action=mark-packet chain=postrouting comment="DSCP 00 -> Priority 3" dscp=0 new-packet-mark=priority_3 out-interface-list=WAN passthrough=no
add action=mark-packet chain=postrouting comment="DSCP 08-15 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=1
add action=mark-packet chain=postrouting comment="DSCP 01-07 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=0
/ipv6 nd
set [ find default=yes ] dns=xxxx:xxxx:xxxx::xxxx,xxxx:xxxx:xxxx:xxxx::xxxx other-configuration=yes
/system clock
set time-zone-name=Europe/Paris
/system leds settings
set all-leds-off=after-1h
/system note
set show-at-login=no
/system ntp client
set enabled=yes
/system ntp client servers
add address=xx.xx.xx.ntp.org
/system package update
set channel=testing
/tool mac-server
set allowed-interface-list=LAN
/tool mac-server mac-winbox
set allowed-interface-list=LAN
They can't do it. They said the devices would be supported by 5 years AFTER stopped being sold. At least it was this way, as far as I can remember.Hmmm,...the alternative would be to declair those devices "End of Live" or "End of Support"...
but would this be the better solution instead of supporting old devices with the newest ROS with concerns?
They can't do it. They said the devices would be supported by 5 years AFTER stopped being sold. At least it was this way, as far as I can remember.Hmmm,...the alternative would be to declair those devices "End of Live" or "End of Support"...
but would this be the better solution instead of supporting old devices with the newest ROS with concerns?
Or am I getting senile?
As mentioned before - please keep this topic related to 7.15 functionality, not anything else. For generic discussions - open new topics, please.
Please keep RouterOS release topics strictly related to the particular release. These topics are made to make aware users of how a particular update might have changed something. Make as many new topics as you want for anything else or of course the best way - contact support.
A memory leak is definitely not a "philosophical banter". It is related to the 7.15 release (and possibly the entire 7.x branch). If there is an "elephant in the room" and we don't want to talk about it, we have a much bigger problem. Sorry.As mentioned before - please keep this topic related to 7.15 functionality, not anything else. For generic discussions - open new topics, please.
Seems like a lot of incredibly off-topic diluting the value of the 7.15 thread. I keep getting notifications, thinking someone has something of value to add about their 7.15rc2 testing and I check in and it's more of this philosophical banter and complaining about memory usage that doesn't seem to be directly related to 7.15.
Don't know why we can't all respect MT support's repeated requests to keep conversation to specifically functionality new/changed in 7.15 so they can work on finalizing a clean release.
Please keep RouterOS release topics strictly related to the particular release. These topics are made to make aware users of how a particular update might have changed something. Make as many new topics as you want for anything else or of course the best way - contact support.
add bridge=bridge comment=defconf interface=*7
The reason is that these release topics are the only topics that are often read by MikroTik personnel.Don't know why we can't all respect MT support's repeated requests to keep conversation to specifically functionality new/changed in 7.15 so they can work on finalizing a clean release.
I presume something like HTOP would be appreciated...I wonder why ROS gives us the ability to profile CPU usage - but no tools to just see the RAM usage in a similar way. This makes no sense as they could "anonymize" processes similarly as they do in CPU-profiling. If such a RAM profile feature would exist, we as the users could at least get a hint what is causing the high RAM usage. Instead is is a spiderman meme: MT points at Sit75, Sit75 points at ROS/MT. That's ridiculous.
Or full bash?I presume something like HTOP would be appreciated...
Unfortunately I don't have a spare hAP ac^2 to test for 7.14.3. And I'd like to avoid reinstalling because I want to create a supout.rif with as little RAM as possible. Thanks to this I can now to prove it on 7.15rc2. By the way 8 days 21 hours uptime and 58.2 MiB free RAM, another 7 MiB RAM is lost.@Sit75 Memory leak also on 7.14.3? If yes -> not strictly related to 7.15 and open separate topic and/or support ticket. If no -> keep us updated as it is related to 7.15.
PS: remove this line from your config
Code: Select alladd bridge=bridge comment=defconf interface=*7
I think I found a solution and like to share it in case someone ending up here looking for the same issue.I tried this version too on CRS310-1G-5S-4S+ and facing the same issue as on all versions after 7.12.1: None of my 1Gbps RF45 copper SFPs enter running state. They all report link ok and sslave state but do not enter running state.
I totally agree about the vlan features missing on v7 wireless being the most critical. Last 2 versions of v7 where very disappointing with minimal improvements to vlan parity with v6I think nobody would group "VLAN" under enterprise features or even features to be excluded from a light version!
To the contrary, I think the omission of VLAN features in the new WiFi driver is a serious omission that should really be fixed.
But a light version to be used on access points or home routers like hAP ac2 or the mini/lite devices could exclude things like MPLS, Autorouting, Proxy server, SMB, Hotspot, CAPSman server, etc.
These are features you do not need in an access point working in bridge mode in cooperation with a more powerful router that would provide those services where required.
Have you tried a config reset, i.e. applying your config from scratch? I checked my three devices currently on 7.15rc2 and I see no sign of leaking memory. If that made the leak go away you might have some corruption in your config, who knows.Unfortunately I don't have a spare hAP ac^2 to test for 7.14.3. And I'd like to avoid reinstalling because I want to create a supout.rif with as little RAM as possible. Thanks to this I can now to prove it on 7.15rc2. By the way 8 days 21 hours uptime and 58.2 MiB free RAM, another 7 MiB RAM is lost.@Sit75 Memory leak also on 7.14.3? If yes -> not strictly related to 7.15 and open separate topic and/or support ticket. If no -> keep us updated as it is related to 7.15.
PS: remove this line from your config
Code: Select alladd bridge=bridge comment=defconf interface=*7
Anyway, if anyone can share some information on how to refine the debugging information (about running processes, memory usage etc.), I can investigate. I don't mean to annoy Mikrotik or the forum on purpose, but I would like to resolve this.
Since March 2024 it is registered under SUP-147911.
As for the bridge configuration, I agree. It was generated automatically when pppoe was set up on Eth1. I couldn't find in the documentation exactly what interface=*7 means, but it's inactive anyway.
I provided the requested supout.rif files with enabled and disabled queues to Mikrotik yesterday under registered ticket SUP-147911. We'll see if they find anything. Anyway 11 days 01 hours 33 MiB of free RAM from 256 MiB.Have you tried a config reset, i.e. applying your config from scratch? I checked my three devices currently on 7.15rc2 and I see no sign of leaking memory. If that made the leak go away you might have some corruption in your config, who knows.
Unfortunately I don't have a spare hAP ac^2 to test for 7.14.3. And I'd like to avoid reinstalling because I want to create a supout.rif with as little RAM as possible. Thanks to this I can now to prove it on 7.15rc2. By the way 8 days 21 hours uptime and 58.2 MiB free RAM, another 7 MiB RAM is lost.
Anyway, if anyone can share some information on how to refine the debugging information (about running processes, memory usage etc.), I can investigate. I don't mean to annoy Mikrotik or the forum on purpose, but I would like to resolve this.
Since March 2024 it is registered under SUP-147911.
As for the bridge configuration, I agree. It was generated automatically when pppoe was set up on Eth1. I couldn't find in the documentation exactly what interface=*7 means, but it's inactive anyway.
Final release without an RC to check if memory leak was corrected?Quite some time passed since rc2. I can smell final release already...😂
MT is heavily developing 7.16 already.
That is installation utility that runs on generic Linux OS and is developed independently of RouterOS, although yes version 7.16alpha is probably improved so that it can install some initial RouterOS 7.16 say prealpha images it doesn't say anything on how far RouterOS 7.16 development has been done so far...They use netinstall-cli 7.16alpha50 in this public video:
https://www.youtube.com/watch?v=EdwcHcWQju0
Not too fast, rc2 still have bugs with cpu 100%Final release without an RC to check if memory leak was corrected?Quite some time passed since rc2. I can smell final release already...😂
Sounds like a bad choice.
Sounds like 7.15.1 will be launched before we would like.
SUP-150642 not update since i openedit on April 20:CPU usage means you are using the device for something. If you still see 100% CPU with no configuration and cables unplugged, email support with your RIF file
That is correct of course, but high CPU usage caused by BGP under certain circumstances as reported by rpingar is a bit more to the point :)"My CPU usage is high" could honestly be anything.
Is important to say that Beta is different from RC.it is looong time and no new beta...what is happening? :)
Well... That seems to me to be a concrete detail from someone who has the slightest idea of what he's talking about. And it also has a good basis for comparison with correct functioning in the past.SUP-150642 not update since i openedit on April 20:
"we have issue with bgp (that were fixed months ago) after one hour of operation:
- one cpu core goes 100%
- slow advertisement of the prefixes
- HoldTimer Expired for one ipv6 bgp session (no issue with the Cogent remote peer).
attached rtrace during it and supout generated immediately after holdtimer expired"
*) dns - added support for "adlist";
*) media - added support for DLNA;
That is of course utter nonsense. EVERY SOFTWARE MANUFACTURER puts versions into release with known problems.If this description is correct and complete, and they go straight to 7.15 stable without clarification about this, it will be a typical case of MT behavior.
Is there already some way to delete RouterOS v6 configuration from an upgraded device? (other than netinstalling it)*) system - skip configuration upgrade from RouterOS v6 on configuration reset;
snmpnetstat -v2c -c public -Cr hostname
/routing table
add disabled=no fib name=test1
add disabled=no fib name=test2
/ipv6 route
add blackhole disabled=no dst-address=fec0::/10 gateway="" routing-table=main \
suppress-hw-offload=no
add blackhole disabled=no distance=1 dst-address=fec0::/10 gateway="" \
routing-table=test1 scope=30 suppress-hw-offload=no target-scope=10
add blackhole disabled=no distance=1 dst-address=fec0::/10 gateway="" \
routing-table=test2 scope=30 suppress-hw-offload=no target-scope=10
*) dns - added support for "adlist";
Dear Normis, Please take a look SUP-3085,CPU usage means you are using the device for something. If you still see 100% CPU with no configuration and cables unplugged, email support with your RIF file
Have you reached 0?I provided the requested supout.rif files with enabled and disabled queues to Mikrotik yesterday under registered ticket SUP-147911. We'll see if they find anything. Anyway 11 days 01 hours 33 MiB of free RAM from 256 MiB.
No, I stopped it when it was 16 MiB RAM, 15 days. I upgraded to RC3 today. It's pointless to go to 0 just for the sake of proof that it can go to 0 with the fact that the router can stop working at any time. The memory decline was unmistakable and obvious. The requested supout.rif under these conditions was provided by Mikrotik and the rest makes no sense.Have you reached 0?I provided the requested supout.rif files with enabled and disabled queues to Mikrotik yesterday under registered ticket SUP-147911. We'll see if they find anything. Anyway 11 days 01 hours 33 MiB of free RAM from 256 MiB.
It definitely made sense since there were no newer RCx or final versions. :-)Then it didn’t even make sense to wait 11 days to reach 33 MB. It was already clear before that something was consuming the RAM.
Sorry, my ticket is about a memory leak, not the router crashing when free RAM reaches 0 MiB. And I can probably safely say that after reaching 0 MiB or even before, the router simply stops working.People should stop obsessing about memory usage. It's meant to be used after all.
As long as the system is not crashing, there is no problem with decreasing free memory. Really not.
Only when it does reach zero and the OS does not perform necessary cleanup actions to free up unused memory (ultimately resulting in a crash when it doesn't), THEN you have a problem.
So in my view that test should have been continued to proof your point.
Not quite. What RoS reports as "used" memory is the equivalent of the field "used", given by the command "free". THIS value should not grow until everything is used. What should grow until memory gets all used is "used + buff/cache" - but this isn't what RoS reports to us.People should stop obsessing about memory usage. It's meant to be used after all.
As long as the system is not crashing, there is no problem with decreasing free memory. Really not.
Only when it does reach zero and the OS does not perform necessary cleanup actions to free up unused memory (ultimately resulting in a crash when it doesn't), THEN you have a problem.
Well, have you checked timestamps? 🙂 How would be possible to have RC3 yesterday? 🙂Nope. RC3 so you can not tell for sure why it crashed so soon.
*) system - skip configuration upgrade from RouterOS v6 on configuration reset;
Also the capability to orbit to private moons pleaseHi, can you update the zerotier package too please, the new Version is out 1.14.0
It depends on how it is configured... e.g. when you have made a "clever" config that adds all suspect IP addresses (trying a telnet or ssh, sending invalid packets, whatever) to an address list to "block the hackers", well, then you can see growing memory usage.Not quite. What RoS reports as "used" memory is the equivalent of the field "used", given by the command "free". THIS value should not grow until everything is used. What should grow until memory gets all used is "used + buff/cache" - but this isn't what RoS reports to us.
I can't say if he has a memory leak or not - but he is right in saying that the RAM usage should not grow this way. Not when RoS reports it like this.
Sure, you can try. It is standard home use AP with pppoe, dual frequency AP (2,4 + 5 GHz), Wireguard, IP4+IP6, DHCP, DNS, IP4 source NAT, standard FW IP4 and IP6 rules and marking traffic for Queue Tree for uplink (fq-codel). That is all.
I have a total of six devices currently installed with ROS 7.14.3 (including three hAP ac² with only 128 MiB RAM running as APs with wifi-qcom-ac driver) and cannot see a memory leak on any of them. Only a small fluctuation in the RAM usage can be seen, but at most +/- 5 MiB (even less on the hAP ac²).
Maybe you can post your complete config?
Code: Select all/interface bridge add admin-mac=xx:xx:xx:xx:xx:xx auto-mac=no comment=defconf name=bridge /interface ethernet set [ find default-name=ether1 ] mtu=1550 rx-flow-control=auto tx-flow-control=auto set [ find default-name=ether2 ] rx-flow-control=auto tx-flow-control=auto set [ find default-name=ether3 ] rx-flow-control=auto tx-flow-control=auto set [ find default-name=ether4 ] rx-flow-control=auto tx-flow-control=auto set [ find default-name=ether5 ] rx-flow-control=auto tx-flow-control=auto /interface wifi set [ find default-name=wifi1 ] channel.band=2ghz-n .width=20/40mhz-Ce configuration.country=xxxx .mode=ap .multicast-enhance=enabled .qos-classifier=priority .ssid=Net_DSL disabled=no mtu=1500 \ security.authentication-types=wpa2-psk,wpa3-psk .ft=yes .ft-over-ds=yes .ft-preserve-vlanid=yes steering.neighbor-group=dynamic-_DSL-xxxx .rrm=yes .wnm=yes set [ find default-name=wifi2 ] channel.band=5ghz-ac .skip-dfs-channels=10min-cac .width=20/40/80mhz configuration.country=xxxx .mode=ap .multicast-enhance=enabled .qos-classifier=priority .ssid=Net_DSL \ disabled=no mtu=1500 security.authentication-types=wpa2-psk,wpa3-psk .ft=yes .ft-over-ds=yes .ft-preserve-vlanid=yes steering.neighbor-group=dynamic-_DSL-xxxx .rrm=yes .wnm=yes /interface wireguard add comment="WireGuard interface" listen-port=xxxx mtu=1420 name=WireGuard add comment=back-to-home-vpn listen-port=xxxx mtu=1420 name=back-to-home-vpn /interface vlan add interface=ether1 mtu=1520 name=vlan-xxx vlan-id=xxx /interface pppoe-client add add-default-route=yes disabled=no interface=vlan-xxx name=pppoe-out1 user=xxxx /interface list add comment=defconf name=WAN add comment=defconf name=LAN /ip pool add name=dhcp ranges=xx.xx.xx.xx-xx.xx.xx.xx /ip dhcp-server add address-pool=dhcp interface=bridge lease-time=10m name=defconf /queue type add fq-codel-limit=1024 fq-codel-memlimit=4.0MiB fq-codel-quantum=300 kind=fq-codel name=fq-codel-ethernet-upload add fq-codel-limit=1024 fq-codel-memlimit=8.0MiB fq-codel-quantum=600 kind=fq-codel name=fq-codel-ethernet-download /queue tree add bucket-size=0.01 comment="Upload Link" max-limit=25M name="DSCP->Priority - upload" parent=pppoe-out1 priority=1 queue=fq-codel-ethernet-upload add comment="DSCP 01-15 (Priority 4)" max-limit=25M name="4. Routine - upload" packet-mark=priority_4 parent="DSCP->Priority - upload" priority=4 queue=fq-codel-ethernet-upload add comment="DSCP 16-31 (Priority 3)" max-limit=25M name="3. Immedate - upload" packet-mark=priority_3 parent="DSCP->Priority - upload" priority=3 queue=fq-codel-ethernet-upload add comment="DSCP 32-47 (Priority 2)" max-limit=25M name="2. Critical - upload" packet-mark=priority_2 parent="DSCP->Priority - upload" priority=2 queue=fq-codel-ethernet-upload add comment="DSCP 48-63 (Priority 1 - Highest)" max-limit=25M name="1. Network Control - upload" packet-mark=priority_1 parent="DSCP->Priority - upload" priority=1 queue=fq-codel-ethernet-upload add comment="Download Link" max-limit=120M name="Download Link" packet-mark=no-mark parent=bridge priority=3 queue=fq-codel-ethernet-download /interface bridge port add bridge=bridge comment=defconf interface=ether2 add bridge=bridge comment=defconf interface=ether3 add bridge=bridge comment=defconf interface=ether4 add bridge=bridge comment=defconf interface=ether5 add bridge=bridge comment=defconf interface=*7 add bridge=bridge comment=defconf interface=wifi2 add bridge=bridge comment=defconf interface=wifi1 /interface bridge settings set allow-fast-path=no use-ip-firewall=yes use-ip-firewall-for-pppoe=yes use-ip-firewall-for-vlan=yes /ip neighbor discovery-settings set discover-interface-list=LAN /interface list member add comment=defconf interface=bridge list=LAN add interface=pppoe-out1 list=WAN add interface=WireGuard list=LAN /interface sstp-server server set ciphers=aes256-sha /interface wireguard peers add allowed-address=xx.xx.xx.xx/32,xxxx:xxxx:xxxx:xxxx::xxxx:xxxx/128 comment=Tab1 interface=WireGuard name=peer1 public-key="xxxx" add allowed-address=xx.xx.xx.xx/32,xxxx:xxxx:xxxx:xxxx::xxxx:xxxx/128 comment=Pho1 interface=WireGuard name=peer2 public-key="xxxx" add allowed-address=xx.xx.xx.xx/32,xxxx:xxxx:xxxx:xxxx::xxxx:xxxx/128 comment=Tab2 interface=WireGuard name=peer3 public-key="xxxx" /ip address add address=xx.xx.xx.xx/24 comment=defconf interface=bridge network=xx.xx.xx.xx add address=xx.xx.xx.xx/24 interface=WireGuard network=xx.xx.xx.xx /ip cloud set back-to-home-vpn=enabled ddns-enabled=yes vpn-prefer-relay-code=EUR1 /ip dhcp-client add comment=defconf disabled=yes interface=ether1 /ip dhcp-server lease add address=xx.xx.xx.xx client-id=xx:xx:xx:xx:xx:xx:xx comment="A serv" mac-address=xx:xx:xx:xx:xx:xx server=defconf add address=xx.xx.xx.xx client-id=xx:xx:xx:xx:xx:xx comment="B serv" mac-address=xx:xx:xx:xx:xx:xx server=defconf add address=xx.xx.xx.xx client-id=xx:xx:xx:xx:xx:xx comment="C serv" mac-address=xx:xx:xx:xx:xx:xx server=defconf add address=xx.xx.xx.xx client-id=xx:xx:xx:xx:xx:xx comment="D serv" mac-address=xx:xx:xx:xx:xx:xx server=defconf /ip dhcp-server network add address=xx.xx.xx.xx/24 comment=defconf dns-server=xx.xx.xx.xx,xx.xx.xx.xx,xx.xx.xx.xx,xx.xx.xx.xx gateway=xx.xx.xx.xx netmask=24 /ip dns set allow-remote-requests=yes servers=xx.xx.xx.xx,xx.xx.xx.xx,xx.xx.xx.xx /ip dns static add address=xx.xx.xx.xx comment=defconf name=router.lan /ip firewall filter add action=accept chain=input comment="WireGuard listening" dst-port=xxxx protocol=udp add action=accept chain=input comment="WireGuard remote LAN" src-address=xx.xx.xx.xx/24 add action=accept chain=input comment="defconf: accept established,related,untracked" connection-state=established,related,untracked add action=drop chain=input comment="defconf: drop invalid" connection-state=invalid add action=accept chain=input comment="defconf: accept ICMP" protocol=icmp add action=accept chain=input comment="defconf: accept to local loopback (for CAPsMAN)" dst-address=127.0.0.1 add action=drop chain=input comment="defconf: drop all not coming from LAN" in-interface-list=!LAN add action=accept chain=forward comment="defconf: accept in ipsec policy" ipsec-policy=in,ipsec add action=accept chain=forward comment="defconf: accept out ipsec policy" ipsec-policy=out,ipsec add action=fasttrack-connection chain=forward comment="defconf: fasttrack" connection-state=established,related disabled=yes hw-offload=yes add action=accept chain=forward comment="defconf: accept established,related, untracked" connection-state=established,related,untracked add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid add action=drop chain=forward comment="defconf: drop all from WAN not DSTNATed" connection-nat-state=!dstnat connection-state=new in-interface-list=WAN /ip firewall mangle add action=change-dscp chain=postrouting comment="ACK -> DSCP 34" new-dscp=34 packet-size=0-123 passthrough=yes protocol=tcp tcp-flags=ack add action=set-priority chain=postrouting comment="Setting priority from DSCP high 3 bits" new-priority=from-dscp-high-3-bits passthrough=yes add action=mark-packet chain=postrouting comment="DSCP 56-63 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=7 add action=mark-packet chain=postrouting comment="DSCP 48-55 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=6 add action=mark-packet chain=postrouting comment="DSCP 40-47 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=5 add action=mark-packet chain=postrouting comment="DSCP 32-39 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=4 add action=mark-packet chain=postrouting comment="DSCP 24-31 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=3 add action=mark-packet chain=postrouting comment="DSCP 16-23 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=2 add action=mark-packet chain=postrouting comment="DSCP 00 -> Priority 3" dscp=0 new-packet-mark=priority_3 out-interface-list=WAN passthrough=no add action=mark-packet chain=postrouting comment="DSCP 08-15 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=1 add action=mark-packet chain=postrouting comment="DSCP 01-07 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=0 /ip firewall nat add action=src-nat chain=srcnat ipsec-policy=out,none out-interface-list=WAN to-addresses=xx.xx.xx.xx /ip hotspot profile set [ find default=yes ] html-directory=hotspot /ip service set telnet disabled=yes set ftp disabled=yes set www disabled=yes set ssh disabled=yes set api disabled=yes set winbox address=xx.xx.xx.xx/24,xx.xx.xx.xx/32 set api-ssl disabled=yes /ip smb shares set [ find default=yes ] directory=pub /ipv6 address add from-pool=pool58 interface=bridge add from-pool=pool58 interface=WireGuard /ipv6 dhcp-client add interface=pppoe-out1 pool-name=pool58 request=prefix use-peer-dns=no /ipv6 firewall address-list add address=::/128 comment="defconf: unspecified address" list=bad_ipv6 add address=::1/128 comment="defconf: lo" list=bad_ipv6 add address=fec0::/10 comment="defconf: site-local" list=bad_ipv6 add address=::ffff:0.0.0.0/96 comment="defconf: ipv4-mapped" list=bad_ipv6 add address=::/96 comment="defconf: ipv4 compat" list=bad_ipv6 add address=100::/64 comment="defconf: discard only " list=bad_ipv6 add address=2001:db8::/32 comment="defconf: documentation" list=bad_ipv6 add address=2001:10::/28 comment="defconf: ORCHID" list=bad_ipv6 add address=3ffe::/16 comment="defconf: 6bone" list=bad_ipv6 /ipv6 firewall filter add action=accept chain=forward comment="Wireguard IPv6" in-interface=WireGuard out-interface-list=WAN src-address=xxxx:xxxx:xxxx:xxxx::/64 add action=accept chain=input comment="defconf: accept established,related,untracked" connection-state=established,related,untracked add action=drop chain=input comment="defconf: drop invalid" connection-state=invalid add action=accept chain=input comment="defconf: accept ICMPv6" protocol=icmpv6 add action=accept chain=input comment="defconf: accept UDP traceroute" dst-port=33434-33534 protocol=udp add action=accept chain=input comment="defconf: accept DHCPv6-Client prefix delegation." dst-port=546 protocol=udp src-address=fe80::/10 add action=accept chain=input comment="defconf: accept IKE" dst-port=500,4500 protocol=udp add action=accept chain=input comment="defconf: accept ipsec AH" protocol=ipsec-ah add action=accept chain=input comment="defconf: accept ipsec ESP" protocol=ipsec-esp add action=accept chain=input comment="defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec add action=drop chain=input comment="defconf: drop everything else not coming from LAN" in-interface-list=!LAN add action=accept chain=forward comment="defconf: accept established,related,untracked" connection-state=established,related,untracked add action=drop chain=forward comment="defconf: drop invalid" connection-state=invalid add action=drop chain=forward comment="defconf: drop packets with bad src ipv6" src-address-list=bad_ipv6 add action=drop chain=forward comment="defconf: drop packets with bad dst ipv6" dst-address-list=bad_ipv6 add action=drop chain=forward comment="defconf: rfc4890 drop hop-limit=1" hop-limit=equal:1 protocol=icmpv6 add action=accept chain=forward comment="defconf: accept ICMPv6" protocol=icmpv6 add action=accept chain=forward comment="defconf: accept HIP" protocol=139 add action=accept chain=forward comment="defconf: accept IKE" dst-port=500,4500 protocol=udp add action=accept chain=forward comment="defconf: accept ipsec AH" protocol=ipsec-ah add action=accept chain=forward comment="defconf: accept ipsec ESP" protocol=ipsec-esp add action=accept chain=forward comment="defconf: accept all that matches ipsec policy" ipsec-policy=in,ipsec add action=drop chain=forward comment="defconf: drop everything else not coming from LAN" in-interface-list=!LAN /ipv6 firewall mangle add action=change-dscp chain=postrouting comment="ACK -> DSCP 34" new-dscp=34 packet-size=0-123 passthrough=yes protocol=tcp tcp-flags=ack add action=set-priority chain=postrouting comment="Setting priority from DSCP high 3 bits" new-priority=from-dscp-high-3-bits passthrough=yes add action=mark-packet chain=postrouting comment="DSCP 56-63 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=7 add action=mark-packet chain=postrouting comment="DSCP 48-55 Priority 1" new-packet-mark=priority_1 out-interface-list=WAN passthrough=no priority=6 add action=mark-packet chain=postrouting comment="DSCP 40-47 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=5 add action=mark-packet chain=postrouting comment="DSCP 32-39 Priority 2" new-packet-mark=priority_2 out-interface-list=WAN passthrough=no priority=4 add action=mark-packet chain=postrouting comment="DSCP 24-31 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=3 add action=mark-packet chain=postrouting comment="DSCP 16-23 Priority 3" new-packet-mark=priority_3 out-interface-list=WAN passthrough=no priority=2 add action=mark-packet chain=postrouting comment="DSCP 00 -> Priority 3" dscp=0 new-packet-mark=priority_3 out-interface-list=WAN passthrough=no add action=mark-packet chain=postrouting comment="DSCP 08-15 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=1 add action=mark-packet chain=postrouting comment="DSCP 01-07 Priority 4" new-packet-mark=priority_4 out-interface-list=WAN passthrough=no priority=0 /ipv6 nd set [ find default=yes ] dns=xxxx:xxxx:xxxx::xxxx,xxxx:xxxx:xxxx:xxxx::xxxx other-configuration=yes /system clock set time-zone-name=Europe/Paris /system leds settings set all-leds-off=after-1h /system note set show-at-login=no /system ntp client set enabled=yes /system ntp client servers add address=xx.xx.xx.ntp.org /system package update set channel=testing /tool mac-server set allowed-interface-list=LAN /tool mac-server mac-winbox set allowed-interface-list=LAN
> Hi, can you update the zerotier package too please, the new Version is out 1.14.0
Also the capability to orbit to private moons please
I think we all agree that if someone does this, and the lists grows until all memory is used, we are firmly in the camp of "it should not happen", don't we?It depends on how it is configured... e.g. when you have made a "clever" config that adds all suspect IP addresses (trying a telnet or ssh, sending invalid packets, whatever) to an address list to "block the hackers", well, then you can see growing memory usage.
1) Have you transferred a binary backup from other hardware to the hAP ac² in the past? - No.
@Sit75
I have transferred your config to one of my hAP ac² (only 128MiB RAM, ROS 7.15rc2) and now after almost six days of operation I can't detect any memory leak.
The router still has almost 30MiB RAM free and works perfectly.
Have you transferred a binary backup from other hardware to the hAP ac² in the past?
Have you already tried a netinstall, but without keeping the old binary configuration and regenerating the configuration from a fresh rsc export?
Have you ever tried temporarily deactivating individual functions for test purposes?
It's not about what I want to happen. I was explaining that the used memory should not grow up to 100%. What we expect to see growing up to 100% is "used + buffer/cache". Because someone was saying that memory should be fully used. Well, yes - but not on the "used" field alone.Yes, but what do you want to happen? Should the router not add more entries to the list when that would consume all memory, and then MikroTik would run the risk that an outraged user would spam all
Could that be related to the fact that naming (at least for me on wifi-qcom-ac devices) is now compliant with wifi-qcom devices?All my devices were left without a Wi-Fi connection after updating to version 7.15rc3@hapAX3, the network spreads but the devices do not connect.
Yes, that's exactly what I'd expect. At the same time I'd expect to start flooding log with error message about inability to add new entries due to low memory state. Having log spammed with messages still gives plenty more of information than OOM reboot, don't you think? User who doesn't care about how a function works (and gets annoyed by log being filled with those entries can reconfigure logging to omit these and he'll be back to his blissful ignorant happiness).Yes, but what do you want to happen? Should the router not add more entries to the list when that would consume all memory ...
Of course it does not really matter if it grows to 100%, 99%, 95% or whatever, as soon as some process whats to allocate a chunk of memory and fails to do so, you are in trouble.It's not about what I want to happen. I was explaining that the used memory should not grow up to 100%. What we expect to see growing up to 100% is "used + buffer/cache". Because someone was saying that memory should be fully used. Well, yes - but not on the "used" field alone.Yes, but what do you want to happen? Should the router not add more entries to the list when that would consume all memory, and then MikroTik would run the risk that an outraged user would spam all
And even "used + buffers/cache" doesn't usually gets up to 100%. It gets close, but not there. Usually.
It is more a bug than a missing feature. All we can configure in ROS is already an abstraction of the underlying system. So, while on a regular Linux system, I can do whatever crazy things to fill up my system's memory, I am the only one to blame for doing such dumb things to crash my system. But ROS address-lists are provided by ROS, and ROS should make sure that such a "simple" thing like an address-list does not consume all system memory and lead to a system OOM error. MT could easily avoid this situation by applying a strategy like "drop the least recent entries" and adding a log warning in the syslog saying something like: "Warning! Address list XYZ tried to consume more than available system memory. Dropped the least recent entry." This way, the system keeps running instead of rebooting because of an OOM situation.I'd also expect to have some setting regarding max number of entries in the list ... either in terms of memory used (can be relative to device's memory) or in terms of number of entries. But this might be perceived by MT as feature request, not as bug report (sic).
... when a user process (like the DNS resolver, the proxy, etc) allocates memory, it normally does so by requesting a block of memory from the kernel, giving out small pieces of that to the program requiring them (e.g. a cache, some buffers, some other data structure), and when the program decides that it no longer needs them, that requested block normally is never returned to the kernel and thus to the system.
What I describe is how libc (the shared library for C) works. It is not programmers negligence.... when a user process (like the DNS resolver, the proxy, etc) allocates memory, it normally does so by requesting a block of memory from the kernel, giving out small pieces of that to the program requiring them (e.g. a cache, some buffers, some other data structure), and when the program decides that it no longer needs them, that requested block normally is never returned to the kernel and thus to the system.
The way you describe it ... I'd call it programmers negligence and clear case of memory leak. I don't see why some programmer would want to implement his own memory management and garbage collector when it's the easiest to deallocate unneeded memory as soon as it's determined that process doesn't need it any more.
14:06:54 dhcp,debug processing client:005056bf3ea9 iapd:0x2
14:06:54 dhcp,debug binding belongs to other server: 005056bf3ea9 XXXX:XXXX:3:3003::/64
14:06:54 dhcp,debug binding not updated
A mix of feelings:I can already prepare the changelog line: "*) improve stability of IP firewall address-lists"
Implementation is up to MT developers. ;)
This excerpt reminded me of the use of containers in RouterOS.So, while on a regular Linux system, I can do whatever crazy things to fill up my system's memory, I am the only one to blame for doing such dumb things to crash my system.
any updates about kvm and extra-nic packages?why kvm and extra-nic were removed from x86 iso file?
File sent.daaf - Can you please provide supout files from your access points to support@mikrotik.com? Please make sure that files are generated at the moment when APs are not working properly.
Finally tried out MVRP. Seems to work in limited testing.*) bridge - added MVRP support;
Where is this documented ? I can't find any such statement ?I assume that MT developed this feature for home users. Maximum 40k URL lists. Kind of grabbing low hanging fruits. The main thing is to be able to import adlists -> "we already have DNS".
This is during adlist "intake" and parsing etc ! Not after all that stuff is done.OK, didn't know. But 50% CPU usage on DNS is clearly a bug. But I can imagine support answer: "dear user, while you can increase DNS cache size to a very high number, it is still limited by your device's physical capabilities. ROS gives you the freedom to set 512MB cache size but this does not necessarily mean that it runs smoothly or stable."
0.0.0.0 example1.com
0.0.0.0 eu1.example.com
0.0.0.0 ex.com
0.0.0.0 com.example.com
It's been over 3 days and the results seem better.Dear Normis, Please take a look SUP-3085,CPU usage means you are using the device for something. If you still see 100% CPU with no configuration and cables unplugged, email support with your RIF file
i sent u many rif on that tickets, problem happen and captured from CCR1009, running simple single BGP full route and not long after that wait till 1 cpu get lock in 100% (/tools profile cpu high as routing).
When cpu lock 100%, some problem happen.
- export failed to get /routing/bgp information
- disable the bgp but routing stay running on the memory.
All the problem gone after reboot and it will came again.
i am installing rc3 now, i'll inform the result.
thx
"Should not be an issue" isn't good enough. Supply Chain attacks are a real thing, and I don't know what Mikrotik does for certificate pinning (if at all) in ROS updates. It also assumes that a threat actor would never be able to breach Mikrotik HQ and get their private keys. Considering where Mikrotik is (Latvia), and the extreme, valid, and current threat of Russia's offensive cybersecurity teams, we can no longer be apathetic to this.It should not be an issue, because almost all websites are now https and all updates (Microsoft, MikroTik) are digitally signed so you cannot setup a website hosting trojaned ROS images.
That is just half of the truth. If RouterOS itself downloads packages that same RouterOS is actually the client.RouterOS is not in any way involved in encrypted (https) connections made by clients. So "certificate pinning" makes no sense.
But it downloads them using http. Not https. So that doesn't matter.That is just half of the truth. If RouterOS itself downloads packages that same RouterOS is actually the client.RouterOS is not in any way involved in encrypted (https) connections made by clients. So "certificate pinning" makes no sense.