一尘不染

如何在Linux上查看/更改套接字连接超时?

linux

在Java中创建套接字时:

new Socket(host, port);

套接字构造函数将在返回之前尝试连接到 host:port
。在Windows上,对于无法访问的主机,此操作几乎立即失败,但是对于Linux,套接字可能最多需要5分钟才能超时。

我知道,如果我可以控制创建套接字,则可以执行以下操作:

Socket s = new Socket();
s.bind(..);
s.connect(.., timeout);

但我希望操作系统使用合理的默认值。有没有办法在Linux上更改此设置?

谢谢


阅读 244

收藏
2020-06-07

共1个答案

一尘不染

我想你要/proc/sys/net/ipv4/tcp_syn_retries。默认值通常是5或6,大约需要3分钟。

请注意,这些是系统范围的。

2020-06-07