in reply to IO::Socket does not send FIN ack?

You pass "Listen => 10" to your IO::Socket constructor, and then explicitely call listen($sock, 3).

Does that make sense?