Python/P2P无法连接到rendezvous s

2024-09-28 05:23:58 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图使用python(pyp2p)创建一个P2P节点,但是我得到了以下错误:

Eamons-MacBook-Pro:blockchain eamonwhite$ python3 serveralice.py
HTTP Error 404: Not Found
HTTP Error 404: Not Found
HTTP Error 404: Not Found
HTTP Error 404: Not Found
Traceback (most recent call last):
  File "/Users/eamonwhite/.pyenv/versions/3.6.3/lib/python3.6/site-packages/pyp2p/net.py", line 732, in start
    rendezvous_con = self.rendezvous.server_connect()
  File "/Users/eamonwhite/.pyenv/versions/3.6.3/lib/python3.6/site-packages/pyp2p/rendezvous_client.py", line 92, in server_connect
    con.connect(server["addr"], server["port"])
  File "/Users/eamonwhite/.pyenv/versions/3.6.3/lib/python3.6/site-packages/pyp2p/sock.py", line 189, in connect
    self.s.bind((src_ip, 0))
TypeError: str, bytes or bytearray expected, not NoneType

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "serveralice.py", line 10, in <module>
    alice.start()
  File "/Users/eamonwhite/.pyenv/versions/3.6.3/lib/python3.6/site-packages/pyp2p/net.py", line 735, in start
    raise Exception("Unable to connect to rendezvous server.")
Exception: Unable to connect to rendezvous server.

我的相关代码如下:

^{pr2}$

它刚开始就被Net函数卡住了——这与rendezvous包有关。IP是我在我的网络上的IP,我端口转发44444,尽管我不确定是否需要这样做。谢谢。在


Tags: inpypyenvhttpserverconnectlinenot
1条回答
网友
1楼 · 发布于 2024-09-28 05:23:58

我对这一点很陌生,很明显服务器代码的配置方式,它需要一个集合服务器才能工作(一个处理所有其他节点的节点)。它在pyp2p包的net.py中:

# Bootstrapping + TCP hole punching server.
rendezvous_servers = [
    {
        "addr": "162.243.213.95",
        "port": 8000
    }
]

地址是问题所在,显然它只是一个占位符IP。所以我意识到我需要自己的集合服务器,我使用了这个代码-https://raw.githubusercontent.com/StorjOld/pyp2p/master/pyp2p/rendezvous_server.py。在

然而,我不得不对这个文件进行一点调试,它最终需要在顶部使用import sysimport time和{}语句才能正常工作。现在我将把它托管在我的raspberry pi上,这样它就可以处理节点了:)

相关问题 更多 >

    热门问题