When creating a Socket in Java:
new Socket(host, port);
The Socket constructor will try to connect to host:port before returning. On Windows, this fails almost immediately for unreachable hosts but for Linux it can take up to 5 minutes for the Socket to timeout.
I'm aware that if I have control over creating the Sockets, I can do:
Socket s = new Socket();
s.bind(..);
s.connect(.., timeout);
but I'd rather have the OS use a reasonable default value. Is there a way to change this setting on Linux?
Thanks