socket servidor redes programacion program por how funcion enviar cliente archivos c# networking

redes - ¿Cómo puedo probar una conexión a un servidor con C#dada la dirección IP del servidor?



socket udp (4)

¿Cómo puedo determinar programáticamente si tengo acceso a un servidor con una dirección IP dada usando C #?


Declare la dirección de cadena y el puerto int y está listo para conectarse a través de la clase TcpClient.

System.Net.Sockets.TcpClient client = new TcpClient(); try { client.Connect(address, port); Console.WriteLine("Connection open, host active"); } catch (SocketException ex) { Console.WriteLine("Connection could not be established due to: /n" + ex.Message); } finally { client.Close(); }


Esto debería hacerlo

bool ssl; ssl = false; int maxWaitMillisec; maxWaitMillisec = 20000; int port = 555; success = socket.Connect("Your ip address",port,ssl,maxWaitMillisec); if (success != true) { MessageBox.Show(socket.LastErrorText); return; }


Puede usar la clase Ping (.net 2.0 y superior)

Ping x = new Ping(); PingReply reply = x.Send(IPAddress.Parse("127.0.0.1")); if(reply.Status == IPStatus.Success) Console.WriteLine("Address is accessible");

Es posible que desee utilizar los métodos simplificados en un sistema de producción para permitir la cancelación, etc.


Suponiendo que quiere decir a través de un socket TCP:

IPAddress IP; if(IPAddress.TryParse("127.0.0.1",out IP)){ Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); try{ s.Connect(IPs[0], port); } catch(Exception ex){ // something went wrong } }

Para obtener más información: http://msdn.microsoft.com/en-us/library/4xzx2d41.aspx?ppud=4