The pull limit is a rolling limit that should reset parts of the quota 6 hours after that part of the quota was used. E.g. of you do 25 pulls every hour, then after the 4th hour, you need to wait 2 hours for the first 25 pulls to be added back to your quota.
Anonymous pulls are based on the IP performing the pull, and if you are behind a proxy or NAT, that may mean others on the same network are included in your limit. So if you see the limit continue to be reached after 6 hours, there are most likely others on the network pulling from hub with your same source IP from the NAT.
Logging in with a free Hub account in doubles this limit and is based on login rather than source IP, allowing different users behind a NAT to pull without conflicting with each other.
Therefore you should include credentials with your pull commands, using docker login
or the equivalent for the tool you use to pull.