I2P: Прозрачный доступ из любого браузера
Но куда уходить людям?
Что бы был доступ к информации, свобода слова и соблюдались хотя бы те правила, которые есть в конституции?
Mesh сети не подходят, Tor — тоже не может обеспечить требуемого, остается I2P.
Сегодня мы поговорим как настроить прозрачный доступ в I2P, с помощью которого каждая домохозяйка сможет открыть любой сайт в этой сети.
Первые шаги
Очевидно, что нам потребуется I2P, если он у вас еще не установлен — самое время это сделать, а то завтра, возможно, официальный сайт I2P тоже уйдет в блокировку.
www.i2p2.de/download
Во время установки, согласитесь установить службу I2P, это позволит работать ей в фоновом режиме при включении компьютера.
Настраиваем
На странице http://127.0.0.1:7657/config выставите ограничение скорости равно 60% от вашего канала (можно больше, если не жалко)
Делаем легкий доступ из всех браузеров в системе
В поставку I2P входит файл автоматической настройки прокси в браузерах, в windows он находится тут:
C:\Program Files\i2p\scripts\i2pProxy.pac
Теперь его надо скормить IE.
Вот и все
Теперь можете налить себе чашку чая и не спеша выпить её, интеграция нового узла в сеть i2p происходит не сразу, к моменту когда чашка будет пустой вы можете зайти на один из многих сайтов сети:
Любой браузер теперь имеет доступ к I2P сети
При такой настройке вас можно вычислить если кому-то это будет нужно с помощью двойного обращения.
Так что если вы собираетесь готовить покушение восстание или рассказывать о различных преимуществах тех или иных способов самоубийства — лучше используйте отдельный браузер для I2P, который может иметь доступ только к сети I2P
Что есть в сети?
http://freezone.i2p/ — Социальный сервис совместного блогинга
flibusta.i2p Библиотека
http://lenta.i2p/ — Новостной сайт, новости могут добавлять пользователи
http://rus.i2p/ Местная википедия, так же в неё перенесены удаленные статьи с лурка
http://nnm-club.i2p/ — Торрент трекер, в представлении не нуждается
forum.i2p Главный форум
http://hiddenchan.i2p/
http://entheogen.i2p/
runode.i2p
http://ugha.i2p/EepsiteIndex Большой каталог сайтов
http://tracker2.postman.i2p/ Торрент трекер
http://diftracker.i2p/ Еще один торрент трекер
http://xc.i2p/ Сокращалка ссылок
http://stats.i2p/ Статистика по работе сети
В последнее время, сеть I2P активно развивается, разработчики повысили скорость работы в сети, добавили поддержку IPv6.
SAM. Приложение, работающее через I2P: проще, чем кажется
Invisible Internet Project (I2P, проект невидимого интернета) – лидер среди технологий приватной передачи информации. Полная децентрализация и независимость делают сеть I2P архитектурно сложной, но уникальной в своем роде. Статья посвящена вопросу: может ли программист, несведущий в криптографии и сетях написать приложение, работающее через I2P.
Современные реализации I2P-роутеров имеют поддержку API-протокола SAM (Simple Anonymous Messaging), который позволяет внешним приложениям общаться через I2P, используя всего несколько простых команд. В рамках этой статьи рассмотрим необходимый минимум для начала собственных экспериментов.
Небольшая ретроспектива
История I2P начинается в первой половине 2000-ых. Хорошие практики разработки ПО в эпоху видеокассет распространялись неактивно. Представить в то время современные концепции взаимодействия с внешними приложениями через удобный интерфейс (API) было сложно.
Изначально программный клиент сети предоставлял во внешний мир только прокси. Прокси, по-простому говоря, является посредником, который принимает запрос, например, «example.i2p», и обрабатывает его. Для внешнего приложения вся внутренняя логика абсолютно скрыта, а сам процесс напоминает использование обычной сети.
Неискушенный читатель наверняка не видит в этом проблему, ведь «есть прокси – делай что хочешь»! Отчасти это так – клиент-серверные приложения будут работать в штатном режиме: сайт откроется, IRC-чат тоже. Но что делать с peer-to-peer технологиями и как динамически создавать новые идентификаторы пользователя, чтобы все приложения не серфили сеть от одного лица?
В I2P-роутере существует протокол I2CP (I2P Control Protocol), который призван логически разделить сущность роутера анонимной сети и внешнее приложение. Однако не все так радужно, как показалось команде разработчиков в начале нулевых: I2CP является очень громоздким и сложным протоколом. Чтобы внешнее приложение могло делать хоть что-то осмысленное, оно должно содержать больше половины кода роутера. Представьте, что для покупки в интернет-магазине вам нужно владеть хотя бы разговорным китайским!
Сложность интеграции I2P во внешнюю программу весьма неплохо объясняет перегруженность исконного Java-роутера всевозможными дополнительными приложениями вроде BitTorrent и Email, которые превратили I2P-роутер из небольшой утилиты в монолитного мамонта.
Актуальному API-протоколу SAM предшествовал BOB (Basic Open Bridge). Когда сеть I2P глобально перешла на более совершенную криптографию (отказ от алгоритма SHA1), разработчики флагманского Java-роутера решили оставить Боба в прошлом и не учить его новым стандартам. Как бы там ни было, тратить и без того скудные ресурсы на одновременное сопровождение двух похожих протоколов показалось нецелесообразно.
Перед тем, как перейти к основной части статьи отмечу, что в реализации роутера на C++ (i2pd) BOB является актуальным протоколом наравне с SAM. Команда PurpleI2P не дает ему погибнуть, при необходимости актуализируя кодовую (и функциональную) базу. Если загоритесь энтузиазмом, можете с ним ознакомиться.
Начало урока
Существует несколько библиотек для разных языков программирования, предоставляющие готовые функции и методы для взаимодействия с I2P-роутером через SAM. Их официальный перечень легко найти на странице документации. Если удачно напишете свою библиотечку, подумайте о ее добавлении в этот список.
Hello hidden world
После получения команды, роутер возвращает ключи с явным разделением публичных (PUB) и приватных (PRIV). Это весьма удобно при использовании простого парсинга по ключевым словам.
Теперь переходим непосредственно к созданию сессии. SAM поддерживает три типа сессий: STREAM (для TCP), DATAGRAM (отправка и получение пакетов UDP) и RAW (вариация на тему UDP). Наиболее наглядным и базовым протоколом является TCP. Его используют для основных операций вроде передачи файлов и сообщений, поэтому для примера создадим STREAM-сессию.
Параметр STYLE отвечает за тип сессии (в нашем случае STREAM ), DESTINATION – принимает приватные ключи (блок информации из секции PRIV недавно сгенерированных ключей), ID – никнейм сессии, по которому можно к ней обратиться (в примере: HabraHabr ).
Через несколько секунд роутер сообщает об успешном создании сессии. Сессия будет жить пока сокет, который ее создал, существует. При этом работать с сессией необходимо через новые подключения к Сэму. Это значит, что контрольный сокет хоть и не используется напрямую, но должен существовать до тех пор, пока нам нужна конкретная сессия.
Через новое окно снова подключаюсь к Сэму и произвожу стандартное рукопожатие. Есть два пути использования существующей сессии «HabraHabr»: инициировать соединение с другим скрытым узлом от лица этой сессии, зная его адрес, либо подключиться к локальному стриму для ожидания входящего соединения извне. Чтобы принять сообщения, которые будут отправлены из второй сессии, подключимся к стриму командой STREAM ACCEPT >.
Чтобы подключиться к предыдущей сессии «HabraHabr», открываю еще одно окно терминала, подключаюсь к Сэму и ввожу команду:
При входящем сообщении, на сокет приходит блок публичных ключей подключенного абонента, который является его внутрисетевым идентификатором (на скриншоте слева). В текущей сессии эта информация не нужна, но она может пригодиться, чтобы позже установить соединение с абонентом по нашей инициативе.
Таким образом происходит соединение двух конечных точек. Несмотря на то, что фактически они расположены на одном I2P-роутере, соединение проходит через несколько компьютеров по всему миру, причем соединение в каждую сторону осуществляется через отдельную цепочку транзитных узлов. Иногда это наглядно прослеживается при быстрой отправке сообщений из одного окна терминала в другое и при долгой доставке в обратном направлении.
То, что показано в примере, как примитивный текстовый чат, по своей сути является прямым подключением двух абонентов через скрытую сеть. Подобное P2P (пир-ту-пир) соединение можно использовать для общения по самым различным протоколам без использования сервера-посредника и сохраняя конфиденциальность обеих сторон.
Когда один из собеседников прервет соединение, пользователь на другом конце также отключится от своей сессии. Манипуляции собеседника на другом конце провода не влияют на локальную сессию, но каждый раз к ней необходимо переподключаться с нового сокета, чтобы поймать новое входящее соединение. Можно сказать, каждое подключение является одноразовым. В случае примера с терминалами это означает, что для каждого соединения необходимо новое окно терминала с подключением к Сэму в режиме ожидания.
Это особенно важно иметь ввиду при практической реализации: необходимо создавать новое подключение к локальной сессии каждый раз, когда существующее приняло входящее соединение. Также возможно одновременное наличие нескольких ожидающих сокетов, что исключит отказ в соединении для пользователя, для которого мы не успели создать новое ожидающее соединение.
Резюме
Данная статья демонстрирует основные принципы работы, которую ваше приложение может выполнять непосредственно, либо используя обертки этих же команд в виде библиотеки. Если тема окажется востребованной, разберем SAM более подробно.
I2P — Проект Невидимый Интернет
Всем доброго времени суток!
С недавних пор организации по защите авторских прав и «отделы К» многих стран начали вести весьма агрессивную политику против анонимности в сети и пиратства. Особо показательны истории с torrents.ru и ifolder.ru.
Подробнее об интернет-цензуре можно почитать в Википедии.
Чтобы оградить пользователя и хостера от «вредного» влияния государства и частных компаний была создана сеть I2P. Что же это такое и как подключиться к I2P — читаем под катом.
Итак, введу в курс дела
I2P — анонимная зашифрованная сеть. Она была представлена в 2003 сообществом разработчиков, выступающих за сетевую безопасность и анонимность.
По типу реализации является оверлейной сетью и находится на 6 уровне модели OSI.
Подключаемся!
Способ I: Посложнее и получше:
В папке установки клиента в папке scripts есть файл i2pProxy.pac.
В настройках браузера ищем строку для ввода адреса автоконфигурации прокси-сервера:
Firefox:
Opera:
Способ II: Попроще, но похуже
В настройках браузера ставим адрес прокси-сервера: 127.0.0.1 порт 4444.
Способ хуже тем, что если вы захотите вернуться в обычный интернет, вам придётся вернуть эту настройку.
Jenyay’s blog
Приложение к сайту «Софт, исходники и фото»
I2P. Что это такое и как им пользоваться
Как вы знаете, нашим депутатам недавно кто-то рассказал про интернет, и они принялись наводить в нем порядок. По крайней мере так они считают. Несмотря на всю их гениальность, единственное, что они могут это — запрещать, поэтому в последнее время стала уместна фраза «дайте мне другой интернет», тем более, что такой другой интернет по сути уже есть — I2P. Чтобы получить к нему доступ, не нужно искать каких-то секретных провайдеров, все работает поверх обычного «большого» интернета, и чиновники до него пока еще не добрались. Правда, обычных пользователей там тоже заметно меньше.
Что-то же такое I2P? По сути это такая же многофункциональная сеть, как и привычный интернет. Ответить на этот вопрос трудно, так же, как одной фразой ответить на вопрос, что такое интернет. Название I2P происходит от фразы «Invisible Internet Project» — «Проект Невидимый Интернет». В I2P есть свои сайты, блоги, в том числе и микроблоги, форумы, чаты, есть даже торрент-трекеры и средства P2P-файлового обмена наподобие eMule. Но у I2P есть принципиальное отличие от подобных сервисов в обычном интернете — это анонимность, безопасность и распределенность.
Но прежде, чем говорить о I2P, коротко поговорим о том, что нас не устраивает в привычном интернете.
В чем проблема Интернета
Если очень грубо, то как работает обычный сайт в интернете? Есть сервер с определенным IP-адресом, где расположен сайт, к нему подключаются пользователи, которые также имеют свои IP-адреса. Общение происходит между этими двумя IP-адресами. Пакеты между ними передаются через множество промежуточных серверов, но все это происходит в открытом виде, каждый промежуточный сервер знает, кому предназначен тот или иной пакет. Перехватить и обработать чужие пакеты не представляет никакой проблемы (не будем пока говорить о безопасном протоколе HTTPS).
Возвращаемся к нашему серверу. Так как его адрес гарантировано известен, то для ввода цензуры достаточно заставить провайдеров заблокировать его IP, чтобы в некоторой стране доступ к сайту на этом сервере был закрыт. На самом деле это самый простой и самый дурацкий способ блокировки. Дурацкий, потому что на одном сервере часто работают несколько сайтов, и, заблокировав таким образом очень экстремистский сайт Васи Пупкина, одновременно будет заблокирован ни в чем неповинный сайт Клавдии Васькиной о приготовлении пирожков с ежевикой. Но, к сожалению, у нас цензура работает именно таким образом.
Другой способ блокировки, который наши чиновники уже испробовали в свое время на сайте torrents.ru (ныне http://rutracker.org) — это отбор доменного имени. Как вы знаете, есть регистраторы доменных имен, которые связывают адрес сайта (torrents.ru) с некоторым IP-адресом сервера. Заставив регистратора прекратить поддерживать некий домен, вы не сможете зайти на сайт, введя его имя, хотя сможете зайти на него, зная его IP-адрес.
Итак, у привычного интернета следующие основные проблемы:
Третья проблема частично решается, но все-равно сервер может следить за пользователем по его IP. В I2P решены все три проблемы.
Как работает I2P
I2P представляет собой защищенный протокол обмена данными, работающий поверх привычного протокола TCP/IP (на самом деле в первую очередь используется протокол UDP, а если его использовать не удается, то TCP). Первая его задача — сделать так, чтобы нельзя было бы вычислить IP-адрес сервера, на котором работает сайт. Вторая задача — избавиться от централизованного хранения доменных имен, в роли DNS-серверов выступают множество серверов. И третья задача — полностью шифровать пакеты данных при передаче их от пользователя к серверу и обратно, сделав бессмысленным перехват пакетов. Благодаря этому приложениям на стороне пользователя больше нет смысла заниматься шифрованием, оно уже реализовано протоколом I2P. По ходу дела решается еще одна задача — анонимизация. Используя I2P можно выходить в обычный интернет под чужими IP-адресами, таким образом обходя блокировки сайтов в отдельно взятой стране.
Принцип работы протокола I2P следующий. Пусть пользователю нужно обратиться к некоему серверу. Пока оставим в стороне вопрос о том, как пользователь нашел сервер, пока скажу только, что для идентификации не используются IP-адреса, вместо них используются сложные идентификаторы. Первое, что нужно сделать пользователю — это создать туннель от себя до сервера. Под туннелем понимается цепочка промежуточных серверов, через которые будут пересылаться пакеты от пользователя к конечному серверу. В качестве таких промежуточных серверов могут выступать (и, как правило, выступают) другие пользователи. Ничего не напоминает? Правильно, это похоже на работу Tor. Но в I2P есть кардинальное отличие.
Напомню, что Tor использует так называемый луковую маршрутизацию, когда каждое промежуточное звено снимает один слой шифрования, в результате последнее звено общается с конечным сервером открытым текстом, что является как потенциальной опасностью для пользователя, так и возможный источник проблем для конечного узла, если через него делают что-то противозаконное.
Протокол I2P работает по-другому, он использует чесночную маршрутизацию. В этом случае каждый пакет, который нужно передать (аналог — зубчик чеснока), шифруется, а затем упаковывается в большой пакет (чесночину), которая содержит еще несколько таких зубчиков-пакетов для передачи к разным узлам. Таким образом, когда пользователь получает чесночину, извлекает из нее зубчик-пакет, предназначенный для него самого, а остальные зубчики передает дальше. Так как все зубчики зашифрованы, то только тот, кому предназначен зубчик, знает, что с ним делать дальше. Промежуточные узлы не знают, что с тем или иным пакетом будет происходить дальше, на следующем узле, и является ли он конечным. Благодаря этому, используя только перехват и анализ пакетов очень трудно (хочется написать «невозможно», но будем осторожны) определить физическое расположение сервера, а сервер, в свою очередь, ничего не знает о пользователе, который к нему обращается.
Перехват осложняется еще и благодаря тому, что каждый пользователь меняет туннель (цепочка, по которой передаются данные) через определенный промежуток времени (по умолчанию 10 минут).
Таким образом решается первая и третья из описанных проблем (анонимность серверов и пользователя, а так же шифрование трафика).
Теперь рассмотрим, как решается проблема с доменными именами. В I2P нет единых доменных регистраторов, каждый пользователь может самостоятельно зарегистрировать себе домен вида http://bla-bla-bla.i2p. Можно использовать и поддомены. Как же происходит поиск сервера по его имени? Если вы хоть раз создавали сайт или настраивали локальный сервер, то наверняка знаете о таком файле, как hosts, в котором прописаны все локальные адреса. Подобным образом работает маршрутизация в I2P.
У каждого пользователя есть несколько файлов, в которых прописаны соответствия доменов адресам в сети I2P (не IP-адреса). Это так называемая адресная книга. Также у каждого пользователя есть список подписок — адреса серверов, с которых периодически происходит обновление адресов. Подписка — это просто текстовый файл, в котором перечислены адреса серверов, с которых загружаются ссылки на сервера по их именам. По умолчанию там содержится один сервер — http://www.i2p2.i2p/hosts.txt. С этих серверов адреса попадают в так называемую маршрутизаторную адресную книгу.
Я опущу некоторые подробности работы с именами, скажу только, что есть несколько адресных книг, в том числе приватная, с которой может работать только данный пользователь, а также публикуемая адресная книга, адресами из которых пользователь делится с другими пользователями (в случае, если он настроит сервер для раздачи доменных имен). Как раз благодаря этой публикуемой адресной книге работникам цензуры нет смысла заставлять убирать адреса с одного сервера (который еще надо найти), так как через какое-то время пользователи все-равно смогут найти нужный адрес на других серверах благодаря распределенной сети. По сути это та же самая DHT, которая используется для поиска источников при скачивании торрентов без использования серверов, а также используется в eMule.
Вот, например, как выглядит одна из записей адресной книги (файла
plugins.i2p=4GdwNoyPq-tlATiocmygKgZv1gJ1Gr1XtZRQ1T-5RozH54aPDKuVp6E9eTdZm3PyJ
Для наглядности эту запись я разбил на несколько строчек, но в реальности это все одна строка. Как я уже говорил, сейчас каждый может зарегистрировать себе свой домен в зоне I2P, при этом не надо ничего нигде утверждать, проходить какую-либо бюрократическую процедуру. Тут неизбежно возникнет проблема с тем, что несколько человек могут зарегистрировать один и тот же домен, и оба они будут правильные с точки зрения протокола. Решается ли эта проблема на уровне протокола I2P, я пока не могу сказать, но в сети есть уже несколько серверов — каталогов доменных имен. Скорее всего в будущем борьба развернется за регистрацию в них. Поговаривают, что это может стать одним из способов заработка на этой сети, когда домен создается свободно, а вот прописывается в каталогах уже за деньги (не исключено, что как абонентская плата).
Но в таком случае интересно, как будет решаться проблема конкуренции таких каталогов, ведь может оказаться так, что в одном каталоге домен зарегистрирован на один сервер, а в другом — на другой. Тут, честно признаюсь, я пока до конца не разобрался, буду рад, если кто подскажет. А то получается раздолье для потенциальных фишинговых сайтов. Но зато таким образом, доменные имена устойчивы к цензуре.
В завершение этого раздела надо сделать одно уточнение, чтобы вы не ждали от I2P слишком многого. Считается (справедливо), что это распределенная сеть. Однако, в первую очередь распределены адреса. Сайты все-равно работают на каком-то одном конкретном сервере (в отличие от распределенной сети BitTorrent, где распределено само содержимое файлов). Этот сервер можно закрыть, но его очень тяжело найти (узнать его IP). Также очень трудно идентифицировать пользователя, который работал в тот или иной момент с сервером. Еще раз повторю, что сервер тоже не знает, никаких IP-адресов пользователя, только его идентификатор в сети I2P, который периодически меняется. Но для надежности этот идентификатор пользователь не должен никому показывать (сам он его узнать может).
Использование I2P
Установка
Теперь давайте посмотрим, как пользоваться протоколом I2P. Для работы с ним нужно установить пакет программ (в том числе роутер), инсталлятор которых можно скачать с официального сайта. Правда, здесь есть одна особенность. Программы для работы с I2P написаны на Java, поэтому им для работы требуется виртуальная машина Java. Процесс установки программ я описывать не буду, потому что там все как обычно, запускаем инсталлятор двойным кликом, потом Next-Next-Next (даже под Linux) и все готово.
После того, как программы установлены, нужно настроить браузер для работы через I2P. Настройка сводится к прописыванию прокси-серверов. Заходим в настройки браузера, туда, где настраивается сеть. И прописываем следующие прокси:
Теперь запускаем программу-роутер для работы с I2P. Под Windows для этого будут созданы специальные ярлыки, под Linux это можно сделать с помощью команды
Скрипт i2prouter расположен в папке, куда были установлены все программы, относящиеся к I2P, по умолчанию это
/i2p. Я бы посоветовал добавить эту папку в переменную окружения PATH, чтобы при каждом запуске не заходить в папку i2p.
Как только запустится роутер, откроется браузер на странице http://127.0.0.1:7657/home.
На этой странице при первом запуске вам будет рекомендовано установить скорость вашего интернет-соединения в настройках по адресу http://127.0.0.1:7657/config.jsp. Это действительно лучше сделать сразу для оптимизации работы сети.
Как вы уже, наверное, поняли, вся настройка и управление работой сети I2P осуществляется через веб-интерфейс, хотя есть возможность все настраивать через обычные текстовые конфиги. Настроек очень много, среди них используются много специфических терминов, которые, во многом знакомые любителям BitTorrent и других P2P-сетей. Мы постараемся обойтись без этой терминологии.
Программы I2P используют достаточно много портов, и ваш фаервол не должен их блокировать. Состояние I2P-сети вы можете проверить все по тому же адресу http://127.0.0.1:7657, статус сети описан в левой панели. Надо сказать, что определение статуса сети не очень надежное.
Если вы только что запустили роутер, нужно подождать некоторое время (хотя бы минут 5), чтобы он получше интегрировался в сеть — нашел побольше пиров (узлов, через которые можно передавать трафик).
Как вы возможно уже обратили внимание, веб-интерфейс полностью русифицирован, причем довольно качественно. Надо отметить, что русскоязычное сообщество сети I2P является одним из наиболее крупных, что вызывает гордость. 🙂
Теперь, после настройки, проверим, как все это работает.
Web и I2P
До сих пор я говорил о том, что в сети I2P есть свои сайты и вскользь упомянул, что эту же сеть можно использовать как анонимайзер для обычного интернета. Но для начала, чтобы убедиться, что мы все настроили правильно, именно в таком режиме мы проверим работу I2P.
В браузере, настроенном для работы через I2P, вы можете зайти на любой сайт. Да, открывать он будет заметно дольше, но если он откроется нормально, то можете быть уверены, что ваш реальный IP-адрес не будет засвечен на сервере. Для надежности вы можете проверить, под каким IP-адресом вы видны серверу, например, с помощью сайта http://hideme.ru/ip/.
Вы получите примерно следующий результат:
Обратите внимание на хост. Похоже, что это сейчас хосты вида xxx.blue.kundencontroller.de (где xxx — будущий ваш IP-адрес) — это единственный путь для выхода в наружный интернет. Поэтому заблокировать такой анонимайзер не составит труда, некоторые сайты их добровольно блокируют у себя на сервере. Так что пока Tor для этих целей надежнее. В терминах I2P сервер, предназначенный для анонимного выхода в «большой» интернет, называют outproxy (по умолчанию используется сервер false.i2p).
http://id3nt.i2p/— сервис микроблогов![]() | http://forum.rus.i2p/— русскоязычный форум про I2P![]() |
Однако, если запрошенного адреса нет в вашей адресной книге, то прежде чем вы попадете на сайт, вы должны будете найти запрашиваемый сервер в сети I2P. Например, если мы в адресной строке браузера набираем http://justme.i2p, и этого сайта нет в вашей адресной книге, браузер покажет следующее сообщение:
В самом низу предлагаются две ссылки для поиска сервера по имени, нажимаем на любую из них, разницы по качеству поиска имен между этими двумя сервисами я не заметил. Если нужный домен найден, будет показано следующее сообщение:
Здесь предлагается сохранить путь в адресной книге, чтобы в следующий сайт открывался сразу, без обращения к поисковому сервису.
У нас на выбор есть четыре варианта действий:
Чем эти адресные книги отличаются, вы можете прочитать по адресу http://127.0.0.1:7657/dns. Не будем вдаваться в подробности различий адресной книги роутера (обычно в нее рекомендуется добавлять новые адреса) и основной адресной (master) книги. Отличие этих двух адресных книг от приватной заключается в том, что вы не делитесь известными вам адресами из приватной книги с другими пользователями I2P. На самом деле по умолчанию вы ни с кем не делитесь своей адресной книгой, для этого надо еще настроить сервер, но мы сейчас этим заниматься не будем.
После того, как вы выбрали, что делать с новым адресом, в идеале должен открыться I2P-сайт. К сожалению, это не происходит не всегда. Но в данном случае нам повезло, сайт работает стабильно, и роутер успел хорошо интегрироваться в сеть. Поэтому в результате мы увидем домашнюю страницу чьего-то сайта:
Можем пройтись по ссылкам и найти там, например, список сайтов, где можно скачать музыку:
В разделе с теорией я уже говорил, что адреса также обновляются из подписок. По умолчанию в списке подписок присутствует только один адрес, который обновляется не очень часто. Однако в интернете можно найти еще некоторое количество серверов с подписками.
Добавить новые подписки можно через веб-интерфейс, если по адресу http://127.0.0.1:7657/dns и выбрать раздел «Подписки», или можно сразу открыть адрес http://127.0.0.1:7657/susidns/subscriptions.
В завершение этого раздела приведу несколько полезных ссылок, откуда можно начинать осваивать мир I2P.
Описание работы с торрент-трекером и iMule выходит за рамки этой статьи.
Почта в I2P
Сразу после регистрации нужно подождать 5 минут прежде, чем пытаться зайти в новый почтовый ящик. Это связано с тем, что регистрация новых ящиков происходит не мгновенно, а по расписанию каждые 5 минут.
Чтобы проверить, что регистрация прошла успешно, откройте ссылку http://127.0.0.1:7657/susimail/susimail — это веб-интерфейс для доступа к почте. На самом деле этот интерфейс ужасен — выглядит он в стиле 90-ых годов прошлого века, да еще в нем есть проблемы с письмами на русском языке. Но не волнуйтесь, позже вы сможете настроить любимый почтовый клиент. А вот как выглядит веб-интерфейс:

Как я говорил, веб-интерфейс ужасен, поэтому давайте настроим почтовый клиент для работы с почтой из I2P. Настройки его довольно простые.
Настройки сервера входящей почты. Имя сервера — 127.0.0.1, порт — 7660, имя пользователя — имя ящика без @mail.i2p. Нужно отключить использование SSL.
Настройки сервера исходящей почты. Имя сервера — 127.0.0.1, порт — 7659, имя пользователя — имя ящика без @mail.i2p. Нужно отключить использование SSL.
Собственно, все. Для наглядности ниже приведены скриншоты настроек в Thunderbird.

Пусть вас не смущает, что используется не безопасное соединение, а при аутентификации пароль передается в явном виде. В сети I2P, как я уже говорил в разделе с теорией, программам нет смысла заниматься шифрованием передаваемых данных, так как шифрование встроено в сам протокол передачи данных сети I2P.
В результате почтовый клиент будет работать с почтой I2P, как с обычным ящиком.
И в завершение о грустном. На данный момент работа через I2P происходит очень медленно и ненадежно. Лично у меня сайты открываются через раз, приходится часто обновлять страницу. Правда, иногда, сайты начинают открываться довольно шустро. Судя по всему это зависит от проложенного туннеля. Собственно, это проблема всех распределенных сетей, если в ней не много участников.
На этом давайте остановимся, а то пост получился и так слишком большой. Надеюсь, что мне удалось объяснить на пальцах суть работы I2P, а также как им пользоваться. Хочется верить, что этот проект не останется игрушкой для очень узкого круга пользователей, и он станет хотя бы чуть более известным, и одновременно надежным.
PS. Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.

















