I've spent a good 50+ hours trying to figure this out. I'll try to give as much detail as I can to outline this problem.I have a game server (VM of Mandrake on a standalone ESXI box. ONLY VM on that box. And yes, I know Mandrake is old. Lets move on...) that listens for traffic on a specific port. I can specify whatever port so lets just say 1084 for conversation sake. When I run the game it binds to the port of 1084 without issue. I attempt to connect the game client but I don't see any response coming from the server.So I started to investigate and I ran tcpdump -i any port 1084. I clearly see requests coming in. Send and receives and acknowledgments. So I now know that traffic is making is into the vm as the tcpdump shows that. But I'm unsure why it's not making it to the actual server application. I didn't have any form of firewall as I didn't want to complicate things but I had no success. So I then installed iptables and specific allow access to port 1084 traffic. This didn't work. I can confirm that ports have been forwarded on my firewall. So outside of that my questions are this:When I view the tcpdump in real time, what is accepting and acknowledging the clients attempts to connect to the server if it's clearly not the game server software that is supposedly bound to that port? Is it the linux OS itself doing that?What additionally might be needed to pass the traffic that is being received on port 1084 over to the application?
Application bound to port but not receiving traffic
linux;iptables;firewall;port forwarding