сеть I2P
Модераторы: Olej, bellic, vikos
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
сеть I2P
Именно сейчас, по состоянию на середину 2023 г.
I2P
Эта страница в последний раз была отредактирована 9 июня 2023 в 17:50.
I2P (аббревиатура от англ. invisible internet project, IIP, I2P — проект «Невидимый интернет») — анонимная компьютерная сеть.
I2P — это анонимная самоорганизующаяся распределённая сеть, которая использует модифицированный DHT Kademlia, но отличается тем, что хранит в себе хешированные адреса узлов сети, зашифрованные AES IP-адреса, а также публичные ключи шифрования, причём соединения по network database тоже зашифрованы. Сеть предоставляет приложениям транспортный механизм для анонимной и защищённой пересылки сообщений друг другу.
Проект I2P был начат в 2003 году для поддержки тех, кто заинтересован в новом нецензурируемом, анонимном средстве общения и распространения информации. I2P — это попытка создать защищённую децентрализованную анонимную сеть с малым временем отклика и свойствами автономности, отказоустойчивости и масштабируемости. Конечной задачей является способность функционировать в жёстких условиях, даже под давлением организаций, обладающих значительными финансовыми или политическими ресурсами. Все аспекты сети доступны в виде исходного кода и бесплатны.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
сеть I2P
I2P. Что это такое и как им пользоваться
... не очень22 ноября 2012, 09:00 пп
Как работает I2P
I2P представляет собой защищенный протокол обмена данными, работающий поверх привычного протокола TCP/IP (на самом деле в первую очередь используется протокол UDP, а если его использовать не удается, то TCP). Первая его задача — сделать так, чтобы нельзя было бы вычислить IP-адрес сервера, на котором работает сайт. Вторая задача — избавиться от централизованного хранения доменных имен, в роли DNS-серверов выступают множество серверов. И третья задача — полностью шифровать пакеты данных при передаче их от пользователя к серверу и обратно, сделав бессмысленным перехват пакетов. Благодаря этому приложениям на стороне пользователя больше нет смысла заниматься шифрованием, оно уже реализовано протоколом I2P. По ходу дела решается еще одна задача — анонимизация. Используя I2P можно выходить в обычный интернет под чужими IP-адресами, таким образом обходя блокировки сайтов в отдельно взятой стране.
Принцип работы протокола I2P следующий. Пусть пользователю нужно обратиться к некоему серверу. Пока оставим в стороне вопрос о том, как пользователь нашел сервер, пока скажу только, что для идентификации не используются IP-адреса, вместо них используются сложные идентификаторы. Первое, что нужно сделать пользователю — это создать туннель от себя до сервера. Под туннелем понимается цепочка промежуточных серверов, через которые будут пересылаться пакеты от пользователя к конечному серверу. В качестве таких промежуточных серверов могут выступать (и, как правило, выступают) другие пользователи. Ничего не напоминает? Правильно, это похоже на работу Tor. Но в I2P есть кардинальное отличие.
Напомню, что Tor использует так называемый луковую маршрутизацию, когда каждое промежуточное звено снимает один слой шифрования, в результате последнее звено общается с конечным сервером открытым текстом, что является как потенциальной опасностью для пользователя, так и возможный источник проблем для конечного узла, если через него делают что-то противозаконное.
Протокол I2P работает по-другому, он использует чесночную маршрутизацию. В этом случае каждый пакет, который нужно передать (аналог — зубчик чеснока), шифруется, а затем упаковывается в большой пакет (чесночину), которая содержит еще несколько таких зубчиков-пакетов для передачи к разным узлам. Таким образом, когда пользователь получает чесночину, извлекает из нее зубчик-пакет, предназначенный для него самого, а остальные зубчики передает дальше. Так как все зубчики зашифрованы, то только тот, кому предназначен зубчик, знает, что с ним делать дальше. Промежуточные узлы не знают, что с тем или иным пакетом будет происходить дальше, на следующем узле, и является ли он конечным. Благодаря этому, используя только перехват и анализ пакетов очень трудно (хочется написать «невозможно», но будем осторожны) определить физическое расположение сервера, а сервер, в свою очередь, ничего не знает о пользователе, который к нему обращается.
Перехват осложняется еще и благодаря тому, что каждый пользователь меняет туннель (цепочка, по которой передаются данные) через определенный промежуток времени (по умолчанию 10 минут).
Теперь рассмотрим, как решается проблема с доменными именами. В I2P нет единых доменных регистраторов, каждый пользователь может самостоятельно зарегистрировать себе домен...
У каждого пользователя есть несколько файлов, в которых прописаны соответствия доменов адресам в сети I2P (не IP-адреса). Это так называемая адресная книга. Также у каждого пользователя есть список подписок — адреса серверов, с которых периодически происходит обновление адресов. Подписка — это просто текстовый файл, в котором перечислены адреса серверов, с которых загружаются ссылки на сервера по их именам. По умолчанию там содержится один сервер — http://www.i2p2.i2p/hosts.txt. С этих серверов адреса попадают в так называемую маршрутизаторную адресную книгу.
В завершение этого раздела надо сделать одно уточнение, чтобы вы не ждали от I2P слишком многого. Считается (справедливо), что это распределенная сеть. Однако, в первую очередь распределены адреса. Сайты все-равно работают на каком-то одном конкретном сервере (в отличие от распределенной сети BitTorrent, где распределено само содержимое файлов). Этот сервер можно закрыть, но его очень тяжело найти (узнать его IP). Также очень трудно идентифицировать пользователя, который работал в тот или иной момент с сервером. Еще раз повторю, что сервер тоже не знает, никаких IP-адресов пользователя, только его идентификатор в сети I2P, который периодически меняется. Но для надежности этот идентификатор пользователь не должен никому показывать (сам он его узнать может).
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
сеть I2P
По поводу логики организации сети:
Общее введение в I2P
Общее введение в I2P
12 апр 2021 в 21:34
Общие принципы работы I2P
В сети I2P все пакеты зашифровываются на стороне отправителя и расшифровываются только на стороне получателя, при этом никто из промежуточных участников обмена не имеет возможности перехватить исходные данные. По этой причине нет необходимости беспокоиться о том, чтобы прикладные программы обеспечивали шифрование своего трафика. Например, сайту в I2P не нужно использовать TLS-шифрование, чтобы вводимые данные пользователя не были перехвачены, как это делается в обычном интернете, т.е. нет нужды использовать протокол HTTPS.
Также, никто из участников сети не знает, кто на самом деле отправитель и кто получатель, так как статус узла, от которого пришел пакет неизвестен, он может быть отправителем или промежуточным, а следующий, которому нужно этот пакет отправить, может являться получателем или таким же промежуточным узлом. Узнать конечные точки отправителя и получателя промежуточный узел никак не может, так же как не может узнать, что произошло с только что переданным следующему узлу пакетом: обработал ли тот его, или передал куда-то дальше.
В I2P используется концепция роутеров и конечных точек: Роутер — это обезличенный участник сети: ни клиент, ни сервер — просто ничем не отличающийся от других транзитный узел. Устанавливая прямое соединение между собой, роутеры видят реальные IP-адреса друг друга, но эта информация не говорит о чем-либо, кроме вероятного использования сети I2P абонентом на другом конце. Если злоумышленник решит выявить всех участников сети, он наткнется на различные погрешности вроде прокси-серверов, и в любом случае не будет иметь фактических данных о какой-либо внутрисетевой активности выявленных пользователей. Устанавливая клиент сети I2P на свое устройство, вы фактически устанавливаете I2P-роутер — обезличенное звено сети.
Конечная точка наоборот является осмысленной сущностью — либо сервером, либо клиентом, но ее реальное местоположение неизвестно. В качестве адресов конечных точек сети I2P используются идентификаторы, выведенные из открытого ключа подписи: хеш-сумма дает уникальную строку фиксированной длины, в конце которой для удобочитаемости подставляется псевдодоменная зона «.b32.i2p» — так получается привычный внутрисетевой адрес. Для использования человекочитаемых доменов в зоне «.i2p», например acetone.i2p, существуют бесплатные регистраторы, достаточно незамысловатые в использовании. Привязка домена происходит к полному адресу.
Конечная точка создается администратором роутера, при этом роутер продолжает свою «серую» работу, никому не сообщая об адресах, размещающихся на нем. Роутер, получая информацию, которая предназначается для локального ресурса, не передает ее дальше, но никто из участников сети не может это узнать: роутер-получатель ведет себя также, как обычный транзитный узел.
Транзитные узлы являются частью цепочки серверов, образующих туннель. Туннель можно представить в виде трубы, проходящей через несколько комнат: вода поступает с одного конца и выходит с другого, при этом наблюдатели в промежуточных комнатах видят трубу, могут слышать шум потока внутри, но не знают, что именно по ней течет. В I2P все роутеры по умолчанию могут принимать участие в построении чужих туннелей, но никто не знает что, куда и кому по этим туннелям передается. Создавая точку назначения, пользователь сам определяет длину входящих и исходящих туннелей, а также их количество. Эта информация остается известной только для создателя туннеля: промежуточные звенья ничего не знают о других транзитных узлах и о их общем количестве.
По умолчанию длина туннелей составляет 3 узла, но в зависимости от потребностей пользователя может составлять 1 транзитный узел или целых 8, и даже 0, тогда будет происходить прямое подключение к туннелю второй стороны. Как видим, администратор конечного ресурса имеет входной туннель в 4 узла. Получив запрос, веб-ресурс отсылает ответ во входной туннель пользователя через свой выходной туннель, т.е. по абсолютно другому пути. Смотря на схему, можно представить насколько сложно пользователю определить реальное местоположение собеседника. Учитывая, что каждые 10 минут происходит смена существующего туннеля на новый с новыми цифровыми подписями и ключами шифрования, деанонимизация кого-либо вовсе кажется фантастикой.
Важная сущность сети I2P — это флудфилы: специальные роутеры, собирающие информацию о сети и обменивающиеся ей друг с другом. Флудфилом может быть любой желающий, задав соответствующий параметр в конфигурационном файле роутера. Все серверные конечные точки сети (т.е. точки, к которым ожидается подключение) автоматически публикуют на флудфилах информацию о себе, которая в совокупности называется лизсетом.
Лизсет включат в себя полный адрес конечной точки, ключи шифрования и список входящих туннелей. Обращаясь к какому-либо адресу в I2P, вы автоматически запрашиваете у случайного флудфила лизсет этого адреса. Если флудфил не знает запрошенный адрес, он сообщает адреса других флудфилов и поиск продолжается. Флудфил является роутером (а не конечной точкой) и принимает подключения напрямую, т.е. не имеет своих входных туннелей. Однако конечные точки обращаются к нему исключительно через анонимные цепочки, тем самым скрывая местоположение публикуемых ресурсов и тех, кто хочет к ним обратиться.
Так как каждая конечная точка имеет в среднем по три входных туннеля, которые меняются каждые 10 минут, обращение к флудфилам происходит лавинообразное, хоть и с небольшим потоком данных. Благодаря этому в сети всегда происходит хаотичное движение служебной информации, образующее «белый шум».
Помимо поиска лизсетов, белый шум генерируется зондированием сети: каждый роутер с небольшой периодичностью опрашивает случайный флудфил, получая от него в ответ три новых роутера (таким образом увеличивая собственный рисунок сети и находя новые флудфилы). Главным источником сетевого шума на роутере является транзитный трафик: он создает большую сетевую активность вне зависимости от конечных точек, расположенных на роутере. Также, будучи транзитным звеном, роутер подмешивает к трафику чужих туннелей полезную нагрузку — трафик своих скрытых сервисов. Чем больше транзитного трафика на роутере, тем абсолютнее секретность его конечных точек: какие-либо действия на скрытом ресурсе, даже DDoS-атаку, нельзя сопоставить с сетевой активностью конкретно взятого сервера. Активный узел сети имеет в своей базе в среднем 5000 активных роутеров и принимает сотни, а то и тысячи абсолютно случайных транзитных подключений. Как говорится: попробуй проанализируй.
Недавно мы упомянули DPI — исследование сетевых пакетов с целью выявления типа передаваемой информации. Упомянули не зря, потому что вы должны знать об этой технологии, а также о том, что весь трафик I2P устойчив перед анализом. Трафик сети зашифрован с самого низа, начиная с транспортных протоколов. В I2P используются: NTCP2, как крипто-аналог TCP, и SSU, как крипто-аналог UDP. I2P-роутер принимает сетевой трафик прикладных программ, обращающихся в скрытую сеть, и оборачивает привычные протоколы в их зашифрованные аналоги. После обработки в сетевых пакетах невозможно выявить что-либо вразумительное, потому что шифруется все, в том числе заголовки и размер. Размер пакетов скрывается паддингом, т.е. заполнением пакетов случайными данными до определенного размера. Информация о настоящем размере сетевого пакета передается в нем же в зашифрованном виде. При расшифровке на конечном устройстве примешанный «мусор» просто отбрасывается. Таким образом «белый шум» сети, т.е. практически бессмысленная для человека информация смешивается с пользовательской информацией и со стороны абсолютно от нее неотличима.
Практическое использование
Область применения I2P обширна и не ограничивается только веб-сайтами. Вы можете размещать в I2P любые веб-ресурсы: форумы, доски объявлений, гит-репозитории, блоги и персональные одностраничники. Вполне реально организовать даже сетевые пошаговые игры, не требующие низкой задержки при передаче пакетов, например, шахматы или карты. Также найти применение I2P можно в построении выходных туннелей из неопределенного места в глобальную сеть, для полноты картины размещая выходные прокси на анонимно оплаченных серверах. Организуя ssh-доступ к арендуемой машине через I2P, вам всего лишь единожды потребуется зайти на сервер посредством других сетей, чтобы установить i2pd и сконфигурировать туннель, который будет принимать подключения. Единственное ограничение фантазий — скорость передачи данных внутри сети. Надо заметить, что от года к году скорость становится все ближе к привычным показателям обычного интернета благодаря оптимизации программного кода и общему росту количества узлов.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
сеть I2P
И, пожалуй, самое конкретное для использования - именно в wiki сети Yggdrasil:
I2P (Invisible Internet Project или Invisible Internet Protocol) – оверлейная децентрализованная одноранговая сеть. Оверлейная - работает поверх других сетей, например, обычного интернета; децентрализованная - распределенная, не имеющая единой точки отказа: упадет один узел, полсети, или во всей сети останется 3 пользователя – I2P всё равно будет функционировать. I2P является одноранговой сетью, потому что все участники имеют равные права и возможности: каждый пользователь скрытой сети строит свои туннели через других участников и сам является потенциальным звеном в цепочке другого пользователя. При этом естественная сетевая активность никак не компрометирует абонента перед домашним провайдером или участниками скрытой сети.
i2p-over-ygg.jpg I2P многократно превосходит Tor по параметрам анонимности, но не имеет по умолчанию выходных прокси в обычный интернет. Сеть I2P полностью децентрализована и открыта. Существует два клиента сети: на языке Java (первый релиз которого состоялся в 2003 году) и i2pd на C++ (первый релиз в 2014). I2P-роутер на C++ превосходит по скорости и стабильности своего предшественника и настоятельно рекомендуется к использованию. Основное обсуждение разработки i2pd ведется на канале #dev в сети ILITA. При работе через Yggdrasil, сеть I2P не образует отдельный сегмент, а остается единой: пользователи из обычного интернета также доступны. Схематично взаимодействие Yggdrasil-only роутеров с остальными участниками сети отображено на иллюстрации.
Также i2pd существует в стандартных репозиториях некоторых unix-like операционных систем вроде Debian или Ubuntu, и доступен для установки через короткую строку sudo apt-get install i2pd, но такой способ установки не рекомендуется, т.к. в дефолтных репозиториях всегда находятся весьма устаревшие версии.
Однако есть актуальный репозиторий сообщества, добавив который в свою систему можно забыть про протухшие пакеты и обновляться в привычном и удобном виде. Исчерпывающая информация по установке есть в документации i2pd.
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
сеть I2P
Ресурсы:Olej писал(а): ↑16 июл 2023, 17:28Также i2pd существует в стандартных репозиториях некоторых unix-like операционных систем вроде Debian или Ubuntu, и доступен для установки через короткую строку sudo apt-get install i2pd, но такой способ установки не рекомендуется, т.к. в дефолтных репозиториях всегда находятся весьма устаревшие версии.
Однако есть актуальный репозиторий сообщества
- русскоязычная документация: https://i2pd.readthedocs.io/ru/latest/
- бинарные релизы для установки: https://github.com/PurpleI2P/i2pd/releases (но, к сожалению, Linux релизы там только .rpm)
... тогда соберём из исходников :
- исходники на GIT: https://github.com/PurpleI2P/i2pd
- репозитории многих проектов относительно i2p - https://github.com/PurpleI2P/ ... в частности:i2pd
Русская версия
i2pd (I2P Daemon) is a full-featured C++ implementation of I2P client.
i2pd-qt Public
i2pd with Qt based GUI
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
сеть I2P
Код: Выделить всё
olej@R420:~/2023/I2P$ git clone https://github.com/PurpleI2P/i2pd.git
Клонирование в «i2pd»...
remote: Enumerating objects: 36411, done.
remote: Counting objects: 100% (5478/5478), done.
remote: Compressing objects: 100% (245/245), done.
remote: Total 36411 (delta 5290), reused 5324 (delta 5227), pack-reused 30933
Получение объектов: 100% (36411/36411), 14.56 МиБ | 3.26 МиБ/с, готово.
Определение изменений: 100% (25966/25966), готово.
Код: Выделить всё
olej@R420:~/2023/I2P$ cd i2pd/
olej@R420:~/2023/I2P/i2pd$ du -hs ./
20M ./
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
сеть I2P
Сборка на Unix системах
Проверю зависимости, на всякий случай:Debian/Ubuntu
Код: Выделить всё
olej@R420:~/2023/I2P/i2pd$ aptitude search libboost-chrono-dev libboost-date-time-dev libboost-filesystem-dev libboost-program-options-dev libboost-system-dev libboost-thread-dev libssl-dev | grep -v i386
i A libboost-chrono-dev - C++ representation of time duration, time point, and clocks (default version)
i A libboost-date-time-dev - set of date-time libraries based on generic programming concepts (default version)
i A libboost-filesystem-dev - filesystem operations (portable paths, iteration over directories, etc) in C++ (default version)
i A libboost-program-options-dev - program options library for C++ (default version)
i A libboost-system-dev - Operating system (e.g. diagnostics support) library (default version)
i A libboost-thread-dev - portable C++ multi-threading (default version)
i libssl-dev - Secure Sockets Layer toolkit - development files
Код: Выделить всё
olej@R420:~/2023/I2P/i2pd$ cd build/
Код: Выделить всё
olej@R420:~/2023/I2P/i2pd/build$ cmake -DCMAKE_BUILD_TYPE=Release
CMake Warning:
No source or binary directory provided. Both will be assumed to be the
same as the current working directory, but note that this warning will
become a fatal error in future CMake releases.
-- The CXX compiler identification is GNU 11.3.0
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- The C compiler identification is GNU 11.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB
-- Performing Test HAVE_CXX_ATOMICS_WITHOUT_LIB - Success
-- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB
-- Performing Test HAVE_CXX_ATOMICS64_WITHOUT_LIB - Success
-- Performing Test LLVM_HAS_ATOMICS
-- Performing Test LLVM_HAS_ATOMICS - Success
-- Performing Test CXX17_SUPPORTED
-- Performing Test CXX17_SUPPORTED - Success
-- Performing Test CXX11_SUPPORTED
-- Performing Test CXX11_SUPPORTED - Success
-- Looking for C++ include pthread.h
-- Looking for C++ include pthread.h - found
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found Boost: /usr/lib/x86_64-linux-gnu/cmake/Boost-1.74.0/BoostConfig.cmake (found version "1.74.0") found components: system filesystem program_options date_time atomic
-- Found OpenSSL: /usr/lib/x86_64-linux-gnu/libcrypto.so (found version "3.0.2")
-- Found ZLIB: /usr/lib/x86_64-linux-gnu/libz.so (found version "1.2.11")
-- ---------------------------------------
-- Build type : Release
-- Compiler vendor : GNU
-- Compiler version : 11.3.0
-- Compiler path : /usr/bin/c++
-- Architecture : x86_64
-- Install prefix: : /usr/local
-- Options:
-- AESNI : ON
-- HARDENING : OFF
-- LIBRARY : ON
-- BINARY : ON
-- STATIC BUILD : OFF
-- UPnP : OFF
-- GIT VERSION : OFF
-- ADDRSANITIZER : OFF
-- THREADSANITIZER : OFF
-- ---------------------------------------
-- Configuring done
-- Generating done
-- Build files have been written to: /home/olej/2023/I2P/i2pd/build
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
сеть I2P
Код: Выделить всё
olej@R420:~/2023/I2P/i2pd/build$ time make -j
[ 3%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Afrikaans.cpp.o
[ 3%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/BOB.cpp.o
[ 3%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/AddressBook.cpp.o
[ 4%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/HTTPProxy.cpp.o
[ 5%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Chinese.cpp.o
[ 8%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Base.cpp.o
[ 9%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/I2PTunnel.cpp.o
[ 11%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/I2PService.cpp.o
[ 11%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/I2CP.cpp.o
[ 12%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Blinding.cpp.o
[ 13%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Armenian.cpp.o
[ 15%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/SAM.cpp.o
[ 15%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/ClientContext.cpp.o
[ 17%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Czech.cpp.o
[ 18%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/ChaCha20.cpp.o
[ 18%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/MatchedDestination.cpp.o
[ 22%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/UDPTunnel.cpp.o
[ 22%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/CPU.cpp.o
[ 25%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Italian.cpp.o
[ 25%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/I18N.cpp.o
[ 26%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/CryptoKey.cpp.o
[ 31%] Building CXX object CMakeFiles/libi2pdclient.dir/home/olej/2023/I2P/i2pd/libi2pd_client/SOCKS.cpp.o
[ 31%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/German.cpp.o
[ 31%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Config.cpp.o
[ 23%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/French.cpp.o
[ 31%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Datagram.cpp.o
[ 32%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Polish.cpp.o
[ 32%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Crypto.cpp.o
[ 33%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Destination.cpp.o
[ 34%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Portuguese.cpp.o
[ 37%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/ECIESX25519AEADRatchetSession.cpp.o
[ 37%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/English.cpp.o
[ 38%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Russian.cpp.o
[ 39%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Swedish.cpp.o
[ 40%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Ed25519.cpp.o
[ 41%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Turkmen.cpp.o
[ 43%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Elligator.cpp.o
[ 44%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Spanish.cpp.o
[ 45%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Turkish.cpp.o
[ 46%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Ukrainian.cpp.o
[ 48%] Building CXX object CMakeFiles/libi2pdlang.dir/home/olej/2023/I2P/i2pd/i18n/Uzbek.cpp.o
[ 50%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/FS.cpp.o
[ 48%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Family.cpp.o
[ 51%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Garlic.cpp.o
[ 52%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Gost.cpp.o
[ 53%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Gzip.cpp.o
[ 54%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/HTTP.cpp.o
[ 55%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/I2NPProtocol.cpp.o
[ 56%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/I2PEndian.cpp.o
[ 58%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Identity.cpp.o
[ 59%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/KadDHT.cpp.o
[ 60%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/LeaseSet.cpp.o
[ 61%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Log.cpp.o
[ 62%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/NetDb.cpp.o
[ 63%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/NTCP2.cpp.o
[ 65%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/NetDbRequests.cpp.o
[ 66%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Poly1305.cpp.o
[ 67%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Reseed.cpp.o
[ 69%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Profiling.cpp.o
[ 69%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/RouterContext.cpp.o
[ 70%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/SSU2.cpp.o
[ 72%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/RouterInfo.cpp.o
[ 73%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/SSU2Session.cpp.o
[ 74%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Signature.cpp.o
[ 75%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Streaming.cpp.o
[ 76%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Timestamp.cpp.o
[ 77%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/TransitTunnel.cpp.o
[ 79%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Transports.cpp.o
[ 80%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/Tunnel.cpp.o
[ 81%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/TunnelConfig.cpp.o
[ 82%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/TunnelEndpoint.cpp.o
[ 83%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/TunnelGateway.cpp.o
[ 84%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/TunnelPool.cpp.o
[ 86%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/api.cpp.o
[ 87%] Building CXX object CMakeFiles/libi2pd.dir/home/olej/2023/I2P/i2pd/libi2pd/util.cpp.o
[ 88%] Linking CXX static library libi2pdlang.a
[ 88%] Built target libi2pdlang
[ 89%] Linking CXX static library libi2pdclient.a
[ 89%] Built target libi2pdclient
[ 90%] Linking CXX static library libi2pd.a
[ 90%] Built target libi2pd
[ 94%] Building CXX object CMakeFiles/i2pd.dir/home/olej/2023/I2P/i2pd/daemon/I2PControlHandlers.cpp.o
[ 94%] Building CXX object CMakeFiles/i2pd.dir/home/olej/2023/I2P/i2pd/daemon/i2pd.cpp.o
[ 95%] Building CXX object CMakeFiles/i2pd.dir/home/olej/2023/I2P/i2pd/daemon/UnixDaemon.cpp.o
[ 95%] Building CXX object CMakeFiles/i2pd.dir/home/olej/2023/I2P/i2pd/daemon/Daemon.cpp.o
[ 97%] Building CXX object CMakeFiles/i2pd.dir/home/olej/2023/I2P/i2pd/daemon/HTTPServer.cpp.o
[ 97%] Building CXX object CMakeFiles/i2pd.dir/home/olej/2023/I2P/i2pd/daemon/I2PControl.cpp.o
[ 98%] Building CXX object CMakeFiles/i2pd.dir/home/olej/2023/I2P/i2pd/daemon/UPnP.cpp.o
/home/olej/2023/I2P/i2pd/daemon/UnixDaemon.cpp: In member function ‘virtual bool i2p::util::DaemonLinux::start()’:
/home/olej/2023/I2P/i2pd/daemon/UnixDaemon.cpp:107:40: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
107 | freopen("/dev/null", "r", stdin);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
/home/olej/2023/I2P/i2pd/daemon/UnixDaemon.cpp:108:40: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
108 | freopen("/dev/null", "w", stdout);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/olej/2023/I2P/i2pd/daemon/UnixDaemon.cpp:109:40: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
109 | freopen("/dev/null", "w", stderr);
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
/home/olej/2023/I2P/i2pd/daemon/UnixDaemon.cpp:173:42: warning: ignoring return value of ‘int ftruncate(int, __off_t)’ declared with attribute ‘warn_unused_result’ [-Wunused-result]
173 | ftruncate(pidFH, 0);
| ~~~~~~~~~^~~~~~~~~~
[100%] Linking CXX executable i2pd
[100%] Built target i2pd
real 0m50,598s
user 14m34,121s
sys 0m59,870s
Код: Выделить всё
olej@R420:~/2023/I2P/i2pd/build$ sudo make install
[sudo] пароль для olej:
Consolidate compiler generated dependencies of target libi2pd
[ 54%] Built target libi2pd
Consolidate compiler generated dependencies of target libi2pdclient
[ 68%] Built target libi2pdclient
Consolidate compiler generated dependencies of target libi2pdlang
[ 90%] Built target libi2pdlang
Consolidate compiler generated dependencies of target i2pd
[100%] Built target i2pd
Install the project...
-- Install configuration: "Release"
-- Installing: /usr/local/lib/libi2pd.a
-- Installing: /usr/local/lib/libi2pdclient.a
-- Installing: /usr/local/lib/libi2pdlang.a
-- Installing: /usr/local/bin/i2pd
Код: Выделить всё
olej@R420:~/2023/I2P/i2pd/build$ which i2pd
/usr/local/bin/i2pd
Код: Выделить всё
olej@R420:~/2023/I2P/i2pd/build$ i2pd --version
i2pd version 2.48.0 (0.9.59)
Boost version 1.74.0
OpenSSL 3.0.2 15 Mar 2022
- Olej
- Писатель
- Сообщения: 21338
- Зарегистрирован: 24 сен 2011, 14:22
- Откуда: Харьков
- Контактная информация:
сеть I2P
Код: Выделить всё
olej@R420:~/2023/I2P/i2pd/build$ i2pd --help
i2pd version 2.48.0 (0.9.59)
General options:
--help Show this message
--version Show i2pd version
--conf arg Path to main i2pd config file (default:
try ~/.i2pd/i2pd.conf or
/var/lib/i2pd/i2pd.conf)
--tunconf arg Path to config with tunnels list and
options (default: try
~/.i2pd/tunnels.conf or
/var/lib/i2pd/tunnels.conf)
--tunnelsdir arg Path to extra tunnels' configs folder
(default: ~/.i2pd/tunnels.d or
/var/lib/i2pd/tunnels.d
--certsdir arg Path to certificates used for verifying
.su3, families (default:
~/.i2pd/certificates or
/var/lib/i2pd/certificates
--pidfile arg Path to pidfile (default:
~/i2pd/i2pd.pid or /var/lib/i2pd/i2pd.p
id)
--log arg Logs destination: stdout, file, syslog
(stdout if not set)
--logfile arg Path to logfile (stdout if not set,
autodetect if daemon)
--loglevel arg (=warn) Set the minimal level of log messages
(debug, info, warn, error, none)
--logclftime Write full CLF-formatted date and time
to log (default: disabled, write only
time)
--family arg Specify a family, router belongs to
--datadir arg Path to storage of i2pd data (RI, keys,
peer profiles, ...)
--host arg External IP
--ifname arg Network interface to bind to
--ifname4 arg Network interface to bind to for ipv4
--ifname6 arg Network interface to bind to for ipv6
--nat Should we assume we are behind NAT?
(default: enabled)
--port arg (=0) Port to listen for incoming connections
(default: auto)
--ipv4 Enable communication through ipv4
(default: enabled)
--address4 arg Local address to bind ipv4 transport
sockets to
--ipv6 Enable communication through ipv6
(default: disabled)
--address6 arg Local address to bind ipv6 transport
sockets to
--reservedrange Check remote RI for being in blacklist
of reserved IP ranges (default:
enabled)
--netid arg (=2) Specify NetID. Main I2P is 2
--daemon Router will go to background after
start (default: disabled)
--service Router will use system folders like
'/var/lib/i2pd' (default: disabled)
--notransit Router will not accept transit tunnels
at startup (default: disabled)
--floodfill Router will be floodfill (default:
disabled)
--bandwidth arg Transit traffic bandwidth limit:
integer in KBps or letters: L (32), O
(256), P (2048), X (>9000)
--share arg (=100) Limit of transit traffic from max
bandwidth in percents. (default: 100)
--ntcp Ignored. Always false
--ssu Ignored. Always false
--ntcpproxy arg Ignored
Limits options:
--limits.coresize arg (=0) Maximum size of corefile in Kb (0 - use
system limit)
--limits.openfiles arg (=0) Maximum number of open files (0 - use
system default)
--limits.transittunnels arg (=5000) Maximum active transit tunnels
(default:5000)
--limits.zombies arg (=0) Minimum percentage of successfully
created tunnels under which tunnel
cleanup is paused (default [%]: 0.00)
--limits.ntcpsoft arg (=0) Ignored
--limits.ntcphard arg (=0) Ignored
--limits.ntcpthreads arg (=1) Ignored
HTTP Server options:
--http.enabled arg (=1) Enable or disable webconsole
--http.address arg (=127.0.0.1) Webconsole listen address
--http.port arg (=7070) Webconsole listen port
--http.auth arg (=0) Enable Basic HTTP auth for webconsole
--http.user arg (=i2pd) Username for basic auth
--http.pass arg Password for basic auth (default:
random, see logs)
--http.strictheaders arg (=1) Enable strict host checking on WebUI
--http.hostname arg (=localhost) Expected hostname for WebUI
--http.webroot arg (=/) WebUI root path (default: / )
--http.lang arg (=english) WebUI language (default: english )
--http.showTotalTCSR arg (=0) Show additional value with total TCSR
since router's start (default: false)
HTTP Proxy options:
--httpproxy.enabled arg (=1) Enable or disable HTTP Proxy
--httpproxy.address arg (=127.0.0.1) HTTP Proxy listen address
--httpproxy.port arg (=4444) HTTP Proxy listen port
--httpproxy.keys arg (=transient-proxy)
File to persist HTTP Proxy keys.
Transient by default
--httpproxy.signaturetype arg (=7) Signature type for new keys. 7 (EdDSA)
by default
--httpproxy.inbound.length arg (=3) HTTP proxy inbound tunnel length
--httpproxy.outbound.length arg (=3) HTTP proxy outbound tunnel length
--httpproxy.inbound.quantity arg (=5) HTTP proxy inbound tunnels quantity
--httpproxy.outbound.quantity arg (=5)
HTTP proxy outbound tunnels quantity
--httpproxy.inbound.lengthVariance arg (=0)
HTTP proxy inbound tunnels length
variance
--httpproxy.outbound.lengthVariance arg (=0)
HTTP proxy outbound tunnels length
variance
--httpproxy.latency.min arg (=0) HTTP proxy min latency for tunnels
--httpproxy.latency.max arg (=0) HTTP proxy max latency for tunnels
--httpproxy.outproxy arg HTTP proxy upstream out proxy url
--httpproxy.addresshelper arg (=1) Enable or disable addresshelper
--httpproxy.i2cp.leaseSetType arg (=3)
Local destination's LeaseSet type
--httpproxy.i2cp.leaseSetEncType arg (=0,4)
Local destination's LeaseSet encryption
type
--httpproxy.i2cp.leaseSetPrivKey arg LeaseSet private key
SOCKS Proxy options:
--socksproxy.enabled arg (=1) Enable or disable SOCKS Proxy
--socksproxy.address arg (=127.0.0.1) SOCKS Proxy listen address
--socksproxy.port arg (=4447) SOCKS Proxy listen port
--socksproxy.keys arg (=transient-proxy)
File to persist SOCKS Proxy keys.
Transient by default
--socksproxy.signaturetype arg (=7) Signature type for new keys. 7 (EdDSA)
by default
--socksproxy.inbound.length arg (=3) SOCKS proxy inbound tunnel length
--socksproxy.outbound.length arg (=3) SOCKS proxy outbound tunnel length
--socksproxy.inbound.quantity arg (=5)
SOCKS proxy inbound tunnels quantity
--socksproxy.outbound.quantity arg (=5)
SOCKS proxy outbound tunnels quantity
--socksproxy.inbound.lengthVariance arg (=0)
SOCKS proxy inbound tunnels length
variance
--socksproxy.outbound.lengthVariance arg (=0)
SOCKS proxy outbound tunnels length
variance
--socksproxy.latency.min arg (=0) SOCKS proxy min latency for tunnels
--socksproxy.latency.max arg (=0) SOCKS proxy max latency for tunnels
--socksproxy.outproxy.enabled arg (=0)
Enable or disable SOCKS outproxy
--socksproxy.outproxy arg (=127.0.0.1)
Upstream outproxy address for SOCKS
Proxy
--socksproxy.outproxyport arg (=9050) Upstream outproxy port for SOCKS Proxy
--socksproxy.i2cp.leaseSetType arg (=3)
Local destination's LeaseSet type
--socksproxy.i2cp.leaseSetEncType arg (=0,4)
Local destination's LeaseSet encryption
type
--socksproxy.i2cp.leaseSetPrivKey arg LeaseSet private key
SAM bridge options:
--sam.enabled arg (=1) Enable or disable SAM Application
bridge
--sam.address arg (=127.0.0.1) SAM listen address
--sam.port arg (=7656) SAM listen TCP port
--sam.portudp arg (=0) SAM listen UDP port
--sam.singlethread arg (=1) Sessions run in the SAM bridge's thread
BOB options:
--bob.enabled arg (=0) Enable or disable BOB command channel
--bob.address arg (=127.0.0.1) BOB listen address
--bob.port arg (=2827) BOB listen port
I2CP options:
--i2cp.enabled arg (=0) Enable or disable I2CP
--i2cp.address arg (=127.0.0.1) I2CP listen address
--i2cp.port arg (=7654) I2CP listen port
--i2cp.singlethread arg (=1) Destinations run in the I2CP server's
thread
I2PControl options:
--i2pcontrol.enabled arg (=0) Enable or disable I2P Control Protocol
--i2pcontrol.address arg (=127.0.0.1) I2PCP listen address
--i2pcontrol.port arg (=7650) I2PCP listen port
--i2pcontrol.password arg (=itoopie) I2PCP access password
--i2pcontrol.cert arg (=i2pcontrol.crt.pem)
I2PCP connection certificate
--i2pcontrol.key arg (=i2pcontrol.key.pem)
I2PCP connection certificate key
UPnP options:
--upnp.enabled arg (=0) Enable or disable UPnP: automatic port
forwarding
--upnp.name arg (=I2Pd) Name i2pd appears in UPnP forwarding
list
Precomputation options:
--precomputation.elgamal arg (=0) Enable or disable elgamal
precomputation table
Reseed options:
--reseed.verify arg (=0) Verify .su3 signature
--reseed.threshold arg (=25) Minimum number of known routers before
requesting reseed
--reseed.floodfill arg Path to router info of floodfill to
reseed from
--reseed.file arg Path to local .su3 file or HTTPS URL to
reseed from
--reseed.zipfile arg Path to local .zip file to reseed from
--reseed.proxy arg url for reseed proxy, supports
http/socks
--reseed.urls arg (=https://reseed2.i2p.net/,https://reseed.diva.exchange/,https://reseed-fr.i2pd.xyz/,https://reseed.memcpy.io/,https://reseed.onion.im/,https://i2pseed.creativecowpat.net:8443/,https://reseed.i2pgit.org/,https://banana.incognet.io/,https://reseed-pl.i2pd.xyz/,https://www2.mk16.de/,https://i2p.ghativega.in/,https://i2p.novg.net/)
Reseed URLs, separated by comma
--reseed.yggurls arg (=http://[324:71e:281a:9ed3::ace]:7070/,http://[301:65b9:c7cd:9a36::1]:18801/,http://[320:8936:ec1a:31f1::216]/,http://[306:3834:97b9:a00a::1]/,http://[316:f9e0:f22e:a74f::216]/)
Reseed URLs through the Yggdrasil,
separated by comma
AddressBook options:
--addressbook.enabled arg (=1) Enable address book lookups and
subscritions (default: enabled)
--addressbook.defaulturl arg (=http://shx5vqsw7usdaunyzr2qmes2fq37oumybpudrd4jjj4e4vk4uusa.b32.i2p/hosts.txt)
AddressBook subscription URL for
initial setup
--addressbook.subscriptions arg (=http://reg.i2p/hosts.txt)
AddressBook subscriptions URLs,
separated by comma
--addressbook.hostsfile arg File to dump addresses in hosts.txt
format
Trust options:
--trust.enabled arg (=0) Enable explicit trust options
--trust.family arg Router Family to trust for first hops
--trust.routers arg Only Connect to these routers
--trust.hidden arg (=0) Should we hide our router from other
routers?
Websocket Options:
--websockets.enabled arg (=0) Deprecated option
--websockets.address arg Deprecated option
--websockets.port arg (=0) Deprecated option
Exploratory Options:
--exploratory.inbound.length arg (=2) Exploratory inbound tunnel length
--exploratory.outbound.length arg (=2)
Exploratory outbound tunnel length
--exploratory.inbound.quantity arg (=3)
Exploratory inbound tunnels quantity
--exploratory.outbound.quantity arg (=3)
Exploratory outbound tunnels quantity
NTCP2 Options:
--ntcp2.enabled arg (=1) Enable NTCP2 (default: enabled)
--ntcp2.published arg (=1) Publish NTCP2 (default: enabled)
--ntcp2.port arg (=0) Port to listen for incoming NTCP2
connections (default: auto)
--ntcp2.addressv6 arg (=::) Address to publish NTCP2 with
--ntcp2.proxy arg Proxy URL for NTCP2 transport
SSU2 Options:
--ssu2.enabled arg (=1) Enable SSU2 (default: enabled)
--ssu2.published arg (=1) Publish SSU2 (default: enabled)
--ssu2.port arg (=0) Port to listen for incoming SSU2
packets (default: auto)
--ssu2.mtu4 arg (=0) MTU for ipv4 address (default: detect)
--ssu2.mtu6 arg (=0) MTU for ipv6 address (default: detect)
--ssu2.proxy arg Socks5 proxy URL for SSU2 transport
Time sync options:
--nettime.enabled arg (=0) Enable NTP time sync (default:
disabled)
--nettime.ntpservers arg (=0.pool.ntp.org,1.pool.ntp.org,2.pool.ntp.org,3.pool.ntp.org)
Comma separated list of NTP servers
--nettime.ntpsyncinterval arg (=72) NTP sync interval in hours (default:
72)
--nettime.frompeers arg (=1) Sync clock from transport peers
(default: enabled)
Network information persisting options:
--persist.profiles arg (=1) Persist peer profiles (default: true)
--persist.addressbook arg (=1) Persist full addresses (default: true)
CPU encryption extensions options:
--cpuext.aesni Use auto detection for AESNI CPU
extensions. If false, AESNI will be not
used
--cpuext.avx Use auto detection for AVX CPU
extensions. If false, AVX will be not
used
--cpuext.force Force usage of CPU extensions. Useful
when cpuinfo is not available on
virtual machines
Meshnet transports options:
--meshnets.yggdrasil Support transports through the
Yggdrasil (default: false)
--meshnets.yggaddress arg Yggdrasil address to publish
UNIX-specific options:
--unix.handle_sigtstp Handle SIGTSTP and SIGCONT signals
(default: disabled)
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 11 гостей