Usa invece il Socket()costruttore e il connect(SocketAddress endpoint, int timeout)metodo .
Nel tuo caso sarebbe simile a:
Socket socket = new Socket();
socket.connect(new InetSocketAddress(ipAddress, port), 1000);
Citando dalla documentazione
connect
public void connect(SocketAddress endpoint, int timeout) throws IOException
Connette questo socket al server con un valore di timeout specificato. Un timeout pari a zero viene interpretato come un timeout infinito. La connessione verrà quindi bloccata fino a quando non viene stabilita o si verifica un errore.
Parametri:
endpoint- SocketAddress
timeout- il valore di timeout da utilizzare in millisecondi.
Lanci:
IOException- se si verifica un errore durante la connessione
SocketTimeoutException- se il timeout scade prima della connessione
IllegalBlockingModeException- se questo socket ha un canale associato e il canale è in modalità non bloccante
IllegalArgumentException- se l'endpoint è nullo o è una sottoclasse SocketAddress non supportata da questo socket
Dal: 1.4