Your board is probably behind a NAT.
Have you checked that the IP of your board is the same as the sending address in the packets that arrives in your server?
To have proper bi directional communication you need your board to have a fixed IP that you can access. Either a public IP or an internal one if you have your own private APN.
You can get around this problem by piggyback on the current socket that is used when you send data to the server. Echo is usually done this way.
So for example push some data to the server hourly or daily. When you send data the NAT will link the device to a port on the NAT. You will receive the data in the server and send back the data to the address and port the data came from. As long as you keep sending data back and fourth the port bindings should stay the same.
You will need to set up the socket you are sending with on your board to also receive data.
It's not perfect but it works. You are just bound to only communicate when the board initiates it. But in battery operated devices this is usually Ok.
If you have a public IP or fixed in your own APN it might be better to have one socket for sending and one for receiving.