in 2.9.38 with SNMP reading, same result, from 0-4000 MB ok, but after 4000mb, reading accouting are start from 0 .. but in simple queue rules in OS, result is ok, 4001 … 4500 … 6000 , etc.
if this is counter overflow ,… why in Queue List number are ok, and there is no error ?
where is overflow , … in reading method ?
If in Queue List “Downloaded Bytes” have 5647 MiB, how SNMP read only 1600 MiB ?
I have static rules in simple queue for acounting traffic for users and after 4000 MiB , SNMP read from zero?
there is some “bug” or “problems” with this in RouterOS, and this mean that all this method from wiki.mikrotik.com not work propriety after 4000 MiB:
Limiting a user to a given amount of traffic (using firewall)
Limiting a user to a given amount of traffic II (using queues)
Limiting a user to a given amount of traffic with user levels (using queues)
Three simple data types are defined in the SNMPv1 SMI, all of which are unique values:
1. The integer data type is a signed integer in the range of -2,147,483,648 to 2,147,483,647.
and connection bytes use same signed integer to count bytes in firewall rule.
why in winbox , when open simple queue , I see normal accouting traffic over, 4000 MiB ? this not used signed integer ?
is there any way to reading this data right ?
is this mean , if PPPoE user connect 30 days, and have traffic over 4000MiB, RouterOS send to Radius server , data with error ?
I known this is differet , but where signed integer have influence?
I can not used any of this :
Limiting a user to a given amount of traffic (using firewall)
Limiting a user to a given amount of traffic II (using queues)
Limiting a user to a given amount of traffic with user levels (using queues),
also can not used SNMP , … if my users had traffic over 4000MiB.
and if I want to used , I must reset counter in RouterOS before reach 4000MiB.
Internal in RouterOS (and what it’s showing via the WinBox) obviously the counters are wide enough to cope with that.
That you cannot read those values via SNMP is a limitation of the SNMP protocol or better it’s definition of the variable size. There’s no way to “repair” this.
If you are using RADIUS for accounting, there will be an issue with byte-counters wrapping around after 4 GB, but there IS an additional RADIUS parameter (search for “gigawords”) which is counting, how often the 4 GB limit has been reached. So you CAN do correct ip accounting using RADIUS.