On the attached tcp dump, the first two SYN packets (#21800 and 21801) came to the server, however SYN ACK was sent for the second SYN. Is that correct behaviour? My understanding is that the client is trying to establish two TCP connections from different src ports, so both connections should have been established. After 4 retries the client changed its src port from 13158 to 2352, and the TCP connection succeeded. Is this an issue on the client or server side?
Similar article below doesn't seem to be related. Why would a server not send a SYN/ACK packet in response to a SYN packet
TCP Dump (client IP masked):