как исправить [WinError 10061] Невозможно установить соединение, потому что целевой компьютер активно отказался от него - PullRequest
0 голосов
/ 18 февраля 2019

Я пытаюсь создать одноранговую сеть с помощью pyp2p python Framework (ссылка: https://pypi.org/project/pyp2p/)

Я использую 64-битную Windows 10 и Python 3.7.2

следуя примерам, приведенным в примере кода

Я пытался запустить скрипт прямого подключения:

from pyp2p.net import *
from pyp2p.unl import UNL
from pyp2p.dht_msg import DHT
import time


#Start Alice's direct server.
alice_dht = DHT()
alice_direct = Net(passive_bind="192.168.0.45", passive_port=44444, interface="eth0:2", net_type="direct", dht_node=alice_dht, debug=1)
alice_direct.start()

#Start Bob's direct server.
bob_dht = DHT()
bob_direct = Net(passive_bind="192.168.0.44", passive_port=44445, interface="eth0:1", net_type="direct", node_type="active", dht_node=bob_dht, debug=1)
bob_direct.start()

#Callbacks.
def success(con):
    print("Alice successfully connected to Bob.")
    con.send_line("Sup Bob.")

def failure(con):
print("Alice failed to connec to Bob\a")

events = {
    "success": success,
    "failure": failure
}

#Have Alice connect to Bob.
alice_direct.unl.connect(bob_direct.unl.construct(), events)

#Event loop.
while 1:
#Bob get reply.
for con in bob_direct:
    for reply in con:
        print(reply)

#Alice accept con.
for con in alice_direct:
    x = 1

time.sleep(0.5)

Я ожидал получить Alice successfully connected to Bob или Alice failed to connect to Bob.

Вместо этого я получаю следующую ошибку:

HTTPConnectionPool (host = 'localhost', port = 80): Превышено максимальное количество повторов с помощью url: /dht_msg.php?call=get_mutex&node_id=496d34347a7538665053586d3064aa676aa66a66a66a66a66a5Wc1MuYdOpeP1h6B72tGz84UGQCGE0Z (вызвано NewConnectionError (': не удалось установить новое соединение: [WinError 10061] Невозможно установить соединение, поскольку целевая машина активно отказывала в этом')) Traceback (последний вызов был последним): файл "direct.py", строка8, в файле alice_dht = DHT () "C: \ Users \ farouk.hdhili \ AppData \ Local \ Programs \ Python \ Python37-32 \ lib \ site-packages \ pyp2p \ dht_msg.py", строка 83, в init assert (self.is_mutex_ready.is_set ()) AssertionError

Я также попытался отключить брандмауэр Windows с помощью команды: NetSh Advfirewall выключил состояние allprofiles

, но ничего не изменилось.

Есть ли какие-либо настройки, которые необходимо выполнить перед запуском скрипта, или что-то еще?

...