Ошибка при подключени к i2p socket серверу через i2p в python

сервер поднимает i2p сокет и ждёт соединения, клиент должен подключится по i2p аддресу, но клиент пишет, что:

python3 client.py
Введите порт для локального сервера:678
step 2
step 3
step 4
Traceback (most recent call last):
  File "client.py", line 11, in <module>
    i2plo.connect(("q5vc65lf345bakn6z55csafm2oo7hgnuxqzxoyjoj5hhasmjf2ga.b32.i2p", 2389))
  File "/home/q/.local/lib/python3.7/site-packages/i2p/socket/sam/simple.py", line 198, in check_connect
    return func(self, *args, **kwargs)
  File "/home/q/.local/lib/python3.7/site-packages/i2p/socket/sam/simple.py", line 164, in check_state
    return func(self, *args_inner, **kwargs_inner)
  File "/home/q/.local/lib/python3.7/site-packages/i2p/socket/sam/simple.py", line 174, in check_type
    return func(self, *args, **kwargs)
  File "/home/q/.local/lib/python3.7/site-packages/i2p/socket/sam/simple.py", line 260, in connect
    dest = self.lookup(addr)
  File "/home/q/.local/lib/python3.7/site-packages/i2p/socket/sam/simple.py", line 594, in lookup
    raise pysocket.herror(errno.EAGAIN, "name not resolved: {}".format(name))
socket.herror: [Errno 11] name not resolved: q5vc65lf345bakn6z55csafm2oo7hgnuxqzxoyjoj5hhasmjf2ga.b32.i2p

В этом скрипте используется библиотека i2p.socket.
мой клиент:

from i2p import socket
#sock = socket.socket()
i2plo = socket.socket()
portlol = int(input('Введите порт для локального сервера:'))
#sock.bind(('', portlol))
print('step 2')
#sock.listen()
print('step 3')
#conn, addr = sock.accept()
print('step 4')
i2plo.connect(("q5vc65lf345bakn6z55csafm2oo7hgnuxqzxoyjoj5hhasmjf2ga.b32.i2p", 2389))
print('step 5')
while(True):
    while(True):
        login =  str(input('Введите логин:'))
        if (' ' in login):
            print('Не испуользуйте пробел.')
        else:
            break
    while(True):
        password = str(input('Введите пароль:'))
        if (' ' in password):
            print('Не испуользуйте пробел.')
        else:
            break
    while(True):
        secretkey = str(input('Введите секретный ключ:'))
        if (' ' in secretkey):
            print('Не испуользуйте пробел.')
        else:
            break
    #test auth
    #i2plo.send(b"/login "+bytes(login, 'utf-8')+bytes(password, 'utf-8')+bytes(secretkey, 'utf-8'))
    #if (i2plo.recv(1024) == 'ok'):
    #    break
    #else:
    #    print('Неверный логин, пароль или секретный ключ.')
    break
while True:
    i2plo.send(b'hello!')
    getterl = i2plo.recv(1024)
    print(getterl)

мой сервер:

import os
from i2p import socket
def get_i2p_server_address():
    source = os.popen('curl -fsSL 127.0.0.1:7070/?page=i2p_tunnels').read()
    return str(source.split('&#8656;')).split('<br>')[-3].split(' ')[5]
i2p_addres = get_i2p_server_address()
print('Your i2p server adress: ',i2p_addres)
#основной сокет                                                                                                                        
print('step 1')
sock = socket.socket()
print('step 2')
sock.bind(('', 2389))
print('step 3')
sock.listen(5)
print('step 4')
conn, addr = sock.accept()
print('step 5')
while True:
    data = conn.recv(1024)
    if not data:
        break
    conn.send(data.upper())
conn.close()

Ответы (0 шт):