Сейчас нормально соединяется, хотя ничего не менял. Запускаю всегда с динамическим i2p адресом
Если это вас забанили, то сейчас заработало, потому что сменился i2p-адрес на новый незабаненный. Проверить легко: открываете файл debug.log (он лежит в той же директории, что и wallet.dat), ищите там строку
us=[NmvTvxvw~tlaUPVZa6jrk9vJ1Nx2ZS8JbfkCkwJMyB7a2VllFrLHPHiUlIDsam-XGwHV2NbAWSTUtaeCW5bYQl~dqVrb7jillVjHTwn~E5YGotqzWc1Sg2GOmWRb60xBCd9pMJYc9e8OQzxeEZFhO4jEaSxr5gvenZ1YxB8qDcXfmaCJ~xFkPag8bIN~OdNW655fB--HMWKIZhmnzN4-mGSFO2ZQBelsafdBIgMuW7aj62Esijg~UKjMN2BuVGHdo7WcyX2ctqxbBkBmUpOo0-nFckWkygqX6hw9DaOpFMmC5xgg35pwet0NoWqtYUxQovV92Xioy~9xoG6X~UsLWAoyey5ePkp2KoxzhMLOT82sA2jAQ47u6lps1RRuTzzTo270SVZtmb5rlGETqvzU22sCrjF4V~53-vTO8sggUmJLlC3TbqF4YQhecTK6eXEviMZ7iHVqZ7eKK3wuf8oFxK1Yw5CnoWxSk2Kg7HMgw~FBhepQyqgZFtWsmmqazTDPAAAA]:
в разное время бывает от 1 до 5 соединений в режиме только i2p - это нормально ?
3-4 - нормально (в i2p пока мало людей).
Если не сложно, напишите пожалуйста как добавить в исходники QR коды.
Если вы собирали моими скриптами, то логично, что у вас получился такой же бинарник как у меня, т.е. без QR-кодов. В исходниках QR-коды уже есть, просто я собирал свои бинарники без библиотеки для работы с ними. awoland правильно все сказал, только если вы для винды собираете, то компилить библиотеку нужно не g++, а mingw32. Ну и менять мои скрипты для сборки биткоина, или собирать вручную.
Еще в офф. клиенте прогресс бар во время скачивания блоков, тот, что внизу сделан как то по другому, там лучше видно количество оставшихся блоков.
Прогресс бар я вообще не трогал. Ни одного символа не менял в том коде. Так что поведение отличаться не должно. У меня никаких проблем с прогресс баром нет. Я даже не представляю, как он может отображаться по-другому. Так что вам лучше сделать скриншот - я посмотрю. Также учтите, что если у кошелька мало подключений (1-2), прогресс бар может вообще не отображаться, хотя синхронизация будет идти - это нормальное поведение.
Ну и еще, при использовании офф. клиента, когда в винде разрывается соединение с интернетом, то клиент видит это, и показывает, что связь прервалась, а при восстановлении связи восстанавливает соединения и продолжает синхронизацию. В вашей модификации при разрыве связи количество соединений остается, и при восстановлении коннекта синхронизация не возобновляется.
С соединениями - да, это особенность i2p. Дело в том, что при установке соединения к i2p-адресу, кошелек соединяется не с удаленным хостом (т.к. он просто не знает где тот находится), а с
локальным i2p-сервисом. Т.е. сокет открывается на адрес 127.0.0.1. Естественно, при отваливании внешнего интернета соединения с 127.0.0.1 не рвутся, и кошелек будет отображать, что соединения есть. НО! Спустя некоторое время, либо i2p-сервис, видя, что инет отвалился, либо сам кошелек, не получая данные с этих сокетов в течение 60 сек, закроет эти сокеты. Так что при отваливании внешнего инета кошелек будет отображать наличие соединений еще
максимум 1 минуту. После этого они все равно закроются. Если интернета нет меньше минуты, нужно просто подождать, пока соединения переустановятся. Это может занять ~10 минут: пока i2p или кошелек поймут, что соедиение уже не актуально, пока переустановят новые и т.д. Если интернета нет больше минуты, соедиения в кошельке не должны отображаться, т.к. кошелек должен сам их закрыть. После появления интернета, кошелек должен сам переподключится, но опять-таки не сразу, а в течение ~10 минут.
В SAM есть неприятный баг, иногда клиент больше не может открыть соединение
http://trac.i2p2.i2p/ticket/492. В таком случае требуется перезапуск i2p-сервиса. Но этот баг проявляется крайне редко, у меня за несколько месяцев, он был всего один раз. Возможно, вы столкнулись с ним. Вообще, я обратил внимание, что i2p плохо или не всегда восстанавливает связь после долгого отсутствия интернета или при выходе из спящего режима. Перезапуск i2p-сервиса помогает. Кошелек при этом перезапускать необязательно. Перезапускать сервис лучше из браузера, на странице консоли i2p-роутера слева есть кнопка рестарт. При таком способе перезапуска, переинтеграция с сетью происходит за несколько секунд.
Еще одна особенность I2P, как и всех p2p-технологий, что качество связи сильно зависит от количества узлов, с которыми вы соединены. Поэтому лучше открыть входящие порты для i2p. На странице консоли i2p-роутера слева отображается количество пиров. Если пиров меньше 100 (обычно 10-20), значит ваш i2p-роутер не принимает входящие соединения (порты закрыты). При открытых портах количество пиров быстро становится больше 1000. Качество связи при этом улучшается значительно.