not so hard to do with real programming. You simple have this...
Main Server - Server 1
Server 2
Server 3
Server 4
The main server holds all of the account data for characters etc. Each server simple pulls that data from the main server, and passes it to the clients for each sub server. I think you'd need something a lot more powerful than WinSock to handle the amount of connections for the main server. Something like this for QuestNet isn't really necessary though, considering my version of QuestNet Pro allows 30 connections, which is fine for games like these.