我试图通过Java程序连接到远程主机:TCP连接建立
socket = new java.net.Socket(host,port);
我得到以下异常:
java.net.ConnectException: Connection refused: connect
跟踪我的计算机和远程之间的IP数据包主机,我看到我的计算机发送了三次SYN数据包,并接收到[RST,ACK]数据包三次。
尽管只有一个连接建立,我的计算机为什么会发送三个SYN数据包?
是由于OS的TCP/IP堆栈?
还是由于Java的实现java.net.Socket类?
防火墙和java安全管理器已在连接的两端进行检查?这应该工作。我一直用这个没有问题。尝试ol重新启动? – jefflunt
问题不在于为什么远程主机重置连接,而是为什么发送了3个SYN数据包。 –
这可能是一个重试? http://stackoverflow.com/questions/1045964/how-to-view-change-socket-connection-timeout-on-linux –