través servidor recibir para multiples manejar enviar elementos datos conexión conectar con computadoras clientes cliente clases java sockets network-programming client-server

servidor - cómo conocer el puerto del cliente y la dirección IP en el programa socket del cliente en java



sockets en java enviar y recibir (2)

Creé una comunicación múltiple cliente-servidor en Java usando socket. tengo un solo servidor y un cliente Quiero probar mi programa con múltiples clientes. Estoy planeando crear un simulador que cree dinámicamente ip y puerto ... para eso solo quiero saber cómo configurar el puerto y la IP del cliente en el programa de socket. ¿Alguien puede ayudarme? Uso InetAddress.getByName para obtener la dirección del cliente.

public Socket(Proxy proxy) { if (proxy != null && proxy.type() == Proxy.Type.SOCKS) { SecurityManager security = System.getSecurityManager(); InetSocketAddress epoint = (InetSocketAddress) proxy.address(); if (security != null) { if (epoint.isUnresolved()) epoint = new InetSocketAddress(epoint.getHostName(), epoint.getPort()); if (epoint.isUnresolved()) security.checkConnect(epoint.getHostName(), epoint.getPort()); else security.checkConnect(epoint.getAddress().getHostAddress(), epoint.getPort()); } impl = new SocksSocketImpl(proxy); impl.setSocket(this); } else { if (proxy == Proxy.NO_PROXY) { if (factory == null) { impl = new PlainSocketImpl(); impl.setSocket(this); } else setImpl(); } else throw new IllegalArgumentException("Invalid Proxy"); } }


Prueba esto para

clientString = "Remote client: " + socket.getRemoteSocketAddress().toString().substring(1);


Sencillo. Para crear la IP del cliente y el puerto, debe pasar los siguientes parámetros en el programa principal.

solo intenta así

java Client localhost 1112 //To run (ip: localhost port: 1112) // Code for main public static void main(String[] args) { try { ipAdd=args[0]; portNo=Integer.parseInt(args[1]); Client s=new Client(); } catch (Exception e) { System.out.println(e); } }