We had issues with “Unable to assign ip address, pool full” when a user tried to connect with multiple devices after even after extending the network range of a server.
I checked the database and noticed that pool_cursor
was set to the start of the network range, even though there were a lot of unused IP addresses in the network.
According to the source code it is never reset, unless you restart the server.
In order to avoid a restart of the server, I fixed this by running:
db.servers.update({'_id': ObjectId("SERVERID")}, {'$set': {'pool_cursor': null }});