First of all apologies for the delay. I’m just going to state a couple of assumptions I’m making before I diagnose this issue (it does however look like an issue in your networking configuration so we might not be able to help much)
You have a physical machine (server) and a virtual machine (client2)
server is trying to connect to client2 (note this is a little odd as normally clients connect to a server)
server is trying to send on 18.104.22.168:10000 which is a public ip address
client2 is trying to receive on 192.168.56.1:10000 which is a private network ip address
If all this is correct then there is no way that the server can know where to find client2 as it does not know “where” this private network is. client2 could however connect to server as the server ip is public. For server to connect to client2 they have to be on the same subnet, in other words you need to make sure that the server has an ip address in the 192.168.56.x range. The type of network used here depends on the virtual machine system you are using, in virtualbox for example it is called a “Host-only network. If you let me know the virtual machine environment you are using I may be able to point you in the right direction.
Hopefully this makes things a bit more understandable. If any of my assumptions above were wrong please correct me and I’ll try and help further. It really does however sound like this is a network configuration issue and thus this is probably not the best place to solve your problem.