I have 3 computers hooked up to a local network. I have written a python script to open a dedicated iperf server and an iperf client on separate threads. I want every computer to connect to the other 2 computers and at the same time, accept connections from the other 2 computers. For this, I am running 4 different threads (2 server threads that accept incoming client connections, 2 client threads that connect to the other computer). I am making sure that the servers are running before I try to connect to one of them. On every computer, I am running the 2 servers on separate ports so that the clients can then connect to those specific ports. This is with iperf version 2.0.13.
When I run the program, I get a connect failed: connection refused
error. Even though my servers are running, the clients are not able to connect to them. I also tried this with iperf3 and in this case, one computer could connect to the 2 other computers, one computer could connect to only one other computer, and the third couldn't connect to either one of the computer. I checked the connection my running it manually in separate terminal windows and it seemed to work. How can I solve this issue?