PYRO4 と Python 2.7 を使用して、クライアント マシンを別のネットワークのサーバー マシンに接続しようとしています。
私のサーバーコードは次のとおりです。
import Pyro4
class Thing(object):
def method(self, arg):
return arg*2
daemon=Pyro4.Daemon(port=9999,nathost="78.149.X.X", natport=5555)
uri=daemon.register(Thing(),"gameServer") # register Thing() as a Pyro object
print "Ready. Object uri =", uri
daemon.requestLoop()
クライアントコードは次のとおりです。
import Pyro4
server = Pyro4.Proxy("PYRO:gameServer@78.149.X.X:5555")
print server.method(6)
ただし、サーバーを実行すると、次のエラーが発生しました。
CommunicationError: cannot connect: [Errno 10061] No connection could be made because the target machine actively refused it
この問題を修正するために 8 時間以上探していますが、永遠に修正されることはないようです。どなたか解決策をご存じの方がいらっしゃればお願いします。
注: 1. ルーターの背後でサーバーを実行しているため、ポート 5555 をプライベート IP アドレスに転送しました。また、オンラインサービスでポートをテストし、正しく開いていました。
- ファイアウォールとウイルス対策ソフトウェアを閉じました。