Maybe limiting the ways the cn can change throughout the players would be a nice solution? What I mean is that the moment a game starts, the players in the server have their own cn's, let's say there are 10 players so the cn goes from 1-10.
However, say cn 6 leaves and then another player enters. Instead of the other player taking his cn he would get cn 11, then if cn 3 leaves and another one enters he would be cn 12, and so on and so forth. Each time a new game starts the cn's would then be restarted and re-arrange from x to y.
So basically, with this the server can also ban the cn in case the IP changes or something.
However, say cn 6 leaves and then another player enters. Instead of the other player taking his cn he would get cn 11, then if cn 3 leaves and another one enters he would be cn 12, and so on and so forth. Each time a new game starts the cn's would then be restarted and re-arrange from x to y.
So basically, with this the server can also ban the cn in case the IP changes or something.