Open wigging opened 2 days ago
https://pyro5.readthedocs.io/en/latest/security.html
Pyro binds on localhost by default for security reasons. You have to override that configuration to bind on other network addresses that are visible from outside.
For the name server, you can do this via the '-n' command line parameter , you can try -n ""
or -n $HOST
Your daemons also need to bind on an externally visible network interface instead of localhost. The manual tells you how to do this https://pyro5.readthedocs.io/en/latest/servercode.html#creating-a-daemon
So let me make sure I understand this... If my host name on Computer A is mymac123, then I need to run the name server as pyro5-ns -n mymac123
. And for the server code on Computer A, daemon = Pyro5.api.Daemon(host="mymac123")
is also needed. I don't need to change anything in the client code on Computer B. Is there anything else I need to change?
@irmen I made the changes mentioned above and everything works fine. Thanks for the help. Also, can you enable the GitHub Discussions feature for this repository so I don't have to submit questions as issues?
Nah, I'm not going to. I think it's perfectly fine to use the issue tracker for this. The volume of discourse is extremely low to warrant another channel
I'm submitting this question as an issue because I'm not aware of a Pyro5 forum to ask questions.
Anyway, I'm trying to run the Simple Example where the server is on one computer and the client is on another computer. Both computers are on the same network. Below are the steps I have done to run the example with two computers.
Computer A
On this computer I run
pyro5-ns
in a terminal. The output from the name server is shown below. This appears to be running onlocalhost
so I guess I need to change that to use it with multiple computers. How do I run this name server so it can be seen by other computers on the network?In another terminal on this computer, I run the following server code:
Computer B
On this computer I run the client code shown below. This fails because the name server was not located. How can I locate the name server that is running on Computer A?