1

I have the following socket programming code. My client program is running on a VM on desktop machine using virtual box and my server program is running on a University cluster VM. The client is unable to send the data to the server. Both client and server program are running inside a docker container

running client and server container

docker run --rm -it -p 192.168.56.110:5555:5555  client bash

docker run --rm -it -p 192.168.101.238:5555:5555  server bash

client.py

context=zmq.Context()
print("Connecting")
socket=context.socket(zmq.REQ)
socket.connect("tcp://192.168.101.238:5555")
name="Max"
while True:
  message=input("Message: ")
  socket.send_pyobj({1:[name,message]})
  message2=socket.recv_pyobj()
  print("%s:%s" %(message2.get (1)[0], message2.get(1)[1]))

server.py

context=zmq.Context()
socket=context.socket(zmq.REP)
socket.bind("tcp://0.0.0.0:5555")
while True:
  message=socket.recv_pyobj()
  print("%s:%s" %(message.get(1)[0],message.get(1)[1]))
  socket.send_pyobj({1:[message.get(1)[0],message.get(1)[1]]})

ip route client VM

 default via 172.27.248.1 dev tun0 proto static metric 50 
 default via 10.0.2.2 dev enp0s3 proto dhcp metric 100 
 10.0.2.0/24 dev enp0s3 proto kernel scope link src 10.0.2.15 metric 100 
 10.0.2.2 dev enp0s3 proto static scope link metric 100 
 143.117.101.145 via 10.0.2.2 dev enp0s3 proto static metric 100 
 169.254.0.0/16 dev enp0s8 scope link metric 1000 
 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 
 172.18.0.0/16 dev br-1f684a10d7c8 proto kernel scope link src 172.18.0.1 linkdown 
 172.27.248.0/22 dev tun0 proto kernel scope link src 172.27.250.80 metric 50 
 192.168.56.0/24 dev enp0s8 proto kernel scope link src 192.168.56.110 

server ip route

default via 192.168.101.254 dev ens160 proto dhcp src 192.168.101.238 metric 100 
172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 
192.168.101.0/24 dev ens160 proto kernel scope link src 192.168.101.238 
192.168.101.254 dev ens160 proto dhcp scope link src 192.168.101.238 metric 100 

On the client side, its stuck its not sending the data to the server and on the server its not receiving data.

Help is highly appreciated thanks

gohar shah
  • 165
  • 1
  • 10

0 Answers0