Since KindOne said it did not occur for both instances (pretty sure he meant it did occur with one of them), it looks like he meant to say it did for the last one.

You can see that when you start up and before you connect, each is labeled freenode on the side. So while you only notice after you're disconnected, it's about matching up to the correct group in the first place.

The problem seems to be this: when using /server domain port password even if this matches an entry in servers.ini, the password you used here is not used to look up the entry in servers.ini, and so they all match to the first entry of that domain. When you reconnect, it goes to reconnect to that matched entry.

Looks like your solutions for now are either to connect using /server group, or not to define them in servers.ini.

Then the question becomes, how should it be treated when a password is provided? If I connect with /server server password and the password is defined in servers.ini, it seems like the password should be used to differentiate which group it is. But if I connect with /server server password, and the password is not defined in servers.ini, should this be treated as the group defined in servers.ini or not? Would the password be used when trying to connect to other servers in the group?