Комментарии 25
Новость, безусловно, позитивная. Сам давно слежу за проектом и жду работоспособных версий…
Всё еще на OS X
MacBook-Pro:i2pd Shift$ ./i2p
Segmentation fault: 11
НЛО прилетело и опубликовало эту надпись здесь
Вот и прекрасно — возьмите и реализуйте «на обычных сях, без всяких плюсов, фреймворков и прочего хипстерства» протоколы, кстати на настоящий момент отлично документированные.
Я попытался на плюсах как умел, у вас безусловно получится лучше.
Я попытался на плюсах как умел, у вас безусловно получится лучше.
НЛО прилетело и опубликовало эту надпись здесь
С использованием с++ проблем нет, а вот с бустом уже возникают напряги…
Захочет, например, кто-нибудь ваш проект адаптировать в дерево openwrt, но увидев в зависимостях буст быстро обломается.
Захочет, например, кто-нибудь ваш проект адаптировать в дерево openwrt, но увидев в зависимостях буст быстро обломается.
Нет не форк. Работа над i2pcpp была начата гораздо позже и ничего сколько-нибудь работающего у них пока нет…
Нет, это полностью собственная реализация.
Как было сказано впоследствии, i2pcpp никогда не ставил целью создание пригодной для использования системы. В настоящий момент работа над ним прекращена.
Как было сказано впоследствии, i2pcpp никогда не ставил целью создание пригодной для использования системы. В настоящий момент работа над ним прекращена.
А у вас нету таймлайна, когда оно наконец будет работать как полноценная замена Java-имплементации? :)
А то что-то, вот, собранный из сегодняшнего git HEAD уже полдня висит, и всё
Ну и не заходит никуда :(
А то что-то, вот, собранный из сегодняшнего git HEAD уже полдня висит, и всё
LeaseSets: 0, хотя роутеров и флудфилов уже набрал кучу :(
Ну и не заходит никуда :(
Вот, стоило написать, как он ВНЕЗАПНО нашёл лизсет :) Правда, пока всё ещё только один :(
LeaseSet и должен быть нуль если не флудфил.
Если там что то отличное от нуля значит поймал в транзитном трафике со старых версий когда LeaseSet-ы ходили нешифрованными.
Если никуда не заходит то давайте разбираться куда конкретно не получается.
Скорее всего адреса в адресной книге нет, а нет потому что надо нормальные источники прописывать в subscritptions.txt
Если там что то отличное от нуля значит поймал в транзитном трафике со старых версий когда LeaseSet-ы ходили нешифрованными.
Если никуда не заходит то давайте разбираться куда конкретно не получается.
Скорее всего адреса в адресной книге нет, а нет потому что надо нормальные источники прописывать в subscritptions.txt
1) а «нормальные источники» это какие? :)
У меня там i2p-projekt.i2p/hosts.txt ;)
2) Так не заходит именно по b32-адресам. Прокси выдаёт 500. А при попытке открыть localhost:7070/zmw2cyw2vj7f6obx3msmdvdepdhnw2ctc4okza2zjxlukkdfckhq.b32.i2p — говорит No LeaseSet Found.
3) А ещё он у меня пару раз за ночь уже покрошился. Но т.к. был запущен в качестве сервиса — бектрейса пока нету.
У меня там i2p-projekt.i2p/hosts.txt ;)
2) Так не заходит именно по b32-адресам. Прокси выдаёт 500. А при попытке открыть localhost:7070/zmw2cyw2vj7f6obx3msmdvdepdhnw2ctc4okza2zjxlukkdfckhq.b32.i2p — говорит No LeaseSet Found.
3) А ещё он у меня пару раз за ночь уже покрошился. Но т.к. был запущен в качестве сервиса — бектрейса пока нету.
3. Платформа какая?
Linux (Gentoo ~amd64)
// кстати, полуоффтоп: пытаюсь ещё собрать для роутера, но из-за буста (?) ловлю фейл :(
// кстати, полуоффтоп: пытаюсь ещё собрать для роутера, но из-за буста (?) ловлю фейл :(
Вот кусок билдлога
mips-openwrt-linux-uclibc-g++ -o i2p obj/CryptoConst.o obj/Datagram.o obj/Garlic.o obj/I2NPProtocol.o obj/LeaseSet.o obj/Log.o obj/NTCPSession.o obj/NetDb.o obj/Profiling.o obj/Reseed.o obj/RouterContext.o obj/RouterInfo.o obj/SSU.o obj/SSUSession.o obj/SSUData.o obj/Streaming.o obj/Identity.o obj/TransitTunnel.o obj/Transports.o obj/Tunnel.o obj/TunnelEndpoint.o obj/TunnelPool.o obj/TunnelGateway.o obj/Destination.o obj/UPnP.o obj/util.o obj/aes.o obj/base64.o obj/AddressBook.o obj/BOB.o obj/ClientContext.o obj/Daemon.o obj/I2PTunnel.o obj/I2PService.o obj/SAM.o obj/SOCKS.o obj/HTTPServer.o obj/HTTPProxy.o obj/I2PControl.o obj/i2p.o obj/DaemonLinux.o -lcrypto++ -lboost_system -lboost_date_time -lboost_filesystem -lboost_regex -lboost_program_options -lpthread -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/lib -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/usr/lib -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/toolchain-mips_34kc_gcc-4.8-linaro_uClibc-0.9.33.2/lib -L/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib
/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/libboost_filesystem.so: warning: the use of OBSOLESCENT `utime' is discouraged, use `utimes'
/home/mva/.vcs_repos/openwrt/ar71xx/staging_dir/target-mips_34kc_uClibc-0.9.33.2/usr/lib/libcrypto++.so: warning: gethostbyname is obsolescent, use getnameinfo() instead.
obj/NTCPSession.o: In function `i2p::transport::NTCPSession::HandleSent(boost::system::error_code const&, unsigned int, std::vector<i2p::I2NPMessage*, std::allocator<i2p::I2NPMessage*> >)':
NTCPSession.cpp:(.text+0x4ef4): undefined reference to `__atomic_fetch_add_8'
obj/NTCPSession.o: In function `i2p::transport::NTCPSession::HandleReceived(boost::system::error_code const&, unsigned int)':
NTCPSession.cpp:(.text+0x6c90): undefined reference to `__atomic_fetch_add_8'
obj/SSUSession.o: In function `i2p::transport::SSUSession::Send(unsigned char const*, unsigned int)':
SSUSession.cpp:(.text+0x3b4): undefined reference to `__atomic_fetch_add_8'
obj/SSUSession.o: In function `i2p::transport::SSUSession::ProcessNextMessage(unsigned char*, unsigned int, boost::asio::ip::basic_endpoint<boost::asio::ip::udp> const&)':
SSUSession.cpp:(.text+0x4938): undefined reference to `__atomic_fetch_add_8'
obj/Transports.o: In function `i2p::transport::Transports::UpdateBandwidth()':
Transports.cpp:(.text+0x2ec): undefined reference to `__atomic_load_8'
Transports.cpp:(.text+0x34c): undefined reference to `__atomic_load_8'
Transports.cpp:(.text+0x3a0): undefined reference to `__atomic_load_8'
Transports.cpp:(.text+0x3c4): undefined reference to `__atomic_load_8'
obj/HTTPServer.o: In function `i2p::util::HTTPConnection::FillContent(std::basic_stringstream<char, std::char_traits, std::allocator >&)':
HTTPServer.cpp:(.text+0x2cb4): undefined reference to `__atomic_load_8'
obj/HTTPServer.o:HTTPServer.cpp:(.text+0x2d74): more undefined references to `__atomic_load_8' follow
collect2: error: ld returned 1 exit status
Makefile:52: recipe for target 'i2p' failed
Добавьте в мэйкфайл i2pd -latomic
Про сборку под опеенврт — мэйкфайл и патчи можете найти тут:
github.com/PurpleI2P/i2pd/issues/345
Про сборку под опеенврт — мэйкфайл и патчи можете найти тут:
github.com/PurpleI2P/i2pd/issues/345
У меня кстати на опенврт на свежих версиях подобная штука — роутер работает 6+ часов, но не ходит по адресам:
12:09:54/info — SOCKS: requested i2p-projekt.i2p:80
12:09:54/warn — Remote destination i2p-projekt.i2p not found
12:09:54/error — SOCKS: error when creating the stream, check the previous warnings for more info
12:09:54/warn — SOCKS: v5 request failed: 4
А у вас, часом, нету realtime-чатика где-нибудь за пределами i2p? :) Пообщаться о настройках там, вот это всё… :)
Ну и чтобы два раза не вставать: А никакого способа ограничения количества создаваемых соединений кроме floodfill=1/0 и bandwidth=O/L нету?
А то с floodfill=0 и bandwith=L оно целый день у меня провисело и ни одного лизсета не поймало.
А с floodfill=1 и bandwidth=O — пользоваться и обычными-то интернетами как-то печально становится…
Ну и чтобы два раза не вставать: А никакого способа ограничения количества создаваемых соединений кроме floodfill=1/0 и bandwidth=O/L нету?
А то с floodfill=0 и bandwith=L оно целый день у меня провисело и ни одного лизсета не поймало.
А с floodfill=1 и bandwidth=O — пользоваться и обычными-то интернетами как-то печально становится…
github.com/PurpleI2P/i2pd там создавайте issue
twitter.com/i2porignal
vk.com/i2porignal
на ваш выбор.
Ну и #i2pd-dev в ирке разумеется.
Попробуйте floodfill=0 и badwidth=O тогда такого количества соединений не будет.
Другие ограничения постепенно добавлю.
twitter.com/i2porignal
vk.com/i2porignal
на ваш выбор.
Ну и #i2pd-dev в ирке разумеется.
Попробуйте floodfill=0 и badwidth=O тогда такого количества соединений не будет.
Другие ограничения постепенно добавлю.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
«Пурпурный» I2P — окно в мир C++ приложений