I'm debugging why there appears to be "ghost" servers that are sometimes started up - they seemingly start up properly, but nobody can connect to them.
After much debugging and logging, I found this error:
8/3/2018 10:51:19 PM: Caught first chance exception: System.Net.Sockets.SocketException (0x80004005): Only one usage of each socket address (protocol/network address/port) is normally permitted at System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress) 8/3/2018 10:51:19 PM: [DarkRift Fatal] System.Net.Sockets.SocketException (0x80004005): Only one usage of each socket address (protocol/network address/port) is normally permitted at System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress) at System.Net.Sockets.Socket.Bind(EndPoint localEP) at System.Net.Sockets.TcpListener.Start(Int32 backlog) at System.Net.Sockets.TcpListener.Start() at DarkRift.DarkRiftServer.FinishBootstrapping(IManualDataProcessor manualDataProcessor, Type[] forceLoadPlugins)
I can't think of why this would happen on only some servers (maybe 3% of servers), unless somehow the matchmaker tries to start two server instances on the same port. Is that a possibility?
Any tips on how I can log more information than this would be appreciated as well.
Edit: updated with longer stacktrace