而这次想讨论的是:
在不重启各自socket程序情况下, 将ESTABLED链接断开 ???...都被那可恶的iptables丢掉了.!
那client会因为server不搭理而情绪低落放弃它们的连接么?...正确姿势
首先, 我们得明白的是, 一般的重启程序, 重启机器, 实际上是发送了 fin标识去对端来触发四次挥手发生, 所以对待孽缘, 还是得遵循规律, 从内部攻破.....:
socket 的主动close, 也就是发送 fin报文 ( 应用层程序或者内核 )
TCP链接的超时自动断开 ( 这个过程可能会比较耗时 )
伪造报文发送RST
除了上面的条件, 还有一个点需要注意的..., 那就是:
在某些情况下, 哪怕对方关闭了, 但是自己也是无法感知的, 还是需要send一次, 通信一次, 触发了socket的错误, 例如 Connection reset by peer.