Linux – Status FIN_WAIT_1 Problem occurred

Status FIN_WAIT_1 Problem occurred… here is a solution to the problem.

Status FIN_WAIT_1 Problem occurred

Recently I had some ports stay in FIN_WAIT_1 state until two days later. The destination port was once used by a server process through which clients connect to the server process.

The case is that we stop the server process and apparently some clients are still connecting to the server at that moment. As I understand it, the server process sends a FIN packet to the client and waits for the ACK packet to return. Unfortunately, that ACK package doesn’t seem to arrive on the server side until two days later.

My problem is that there are any configurations like timeouts for FIN_WAIT_1 states. I scanned the internet and searched but found nothing there. If you have any experience with this, please help let me know.

By the way, when port FIN_WAIT_1 occurs, the server process is gone.

Thanks in advance

Solution

The FIN_WAIT_1 status is waiting for the FIN that the peer ACK itself just sent. That outgoing FIN is subject to all normal TCP retry and timeout handling, so if the other end disappears completely and never responds again, TCP should rightfully time out and reset it. That’s why you can’t find a specific FIN_WAIT_1 timeout: no, just a normal TCP write timer.

All of this should happen in ten minutes or so.

If that state persists and causes other issues, I don’t think you have much choice but to reboot.

Related Problems and Solutions