public void Open() { var host = uri.Host; var port = uri.Port; Console.WriteLine($"WebSocketServer: Starting on {uri}..."); IPEndPoint localEndPoint = new IPEndPoint(IPAddress.Any, port); if (host.ToLower() != "any" && host != "*") { var ipHostInfo = Dns.GetHostEntry(host); var ipAddress = ipHostInfo.AddressList.Where(ip => ip.AddressFamily == AddressFamily.InterNetwork).FirstOrDefault(); localEndPoint = new IPEndPoint(ipAddress, port); } socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); socket.Bind(localEndPoint); socket.Listen(100); OnServerOpen.Invoke(this, null); Console.WriteLine($"WebSocketServer: Listening..."); var doNotWait = AcceptNewClient(); }
public void Open() { IPEndPoint localEndPoint = null; if (string.IsNullOrEmpty(hostNameOrAddress) || hostNameOrAddress == "0.0.0.0" || hostNameOrAddress == "::/0") { Console.WriteLine($"TCPServer: Starting on IPAddress.Any:{port}..."); localEndPoint = new IPEndPoint(IPAddress.Any, port); } else { Console.WriteLine($"TCPServer: Starting on {hostNameOrAddress}:{port}..."); var ipHostInfo = Dns.GetHostEntry(hostNameOrAddress); var ipAddress = ipHostInfo.AddressList.Where(ip => ip.AddressFamily == AddressFamily.InterNetwork).FirstOrDefault(); localEndPoint = new IPEndPoint(ipAddress, port); } socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); socket.Bind(localEndPoint); socket.Listen(100); OnServerOpen.Invoke(this, null); var doNotWait = AcceptNewClient(); Console.WriteLine($"TCPServer: Listening..."); }