Пользователь
0,0
рейтинг
2 июня 2013 в 20:39

Разработка → Hyperboria: Интернет 2.0



Hyperboria — это Open Source реализация проекта Mesh сетей, аналог всем известного и желанного проекта Netsukuku, который, к сожалению, умер.

Другими словами, Hyperboria это самоорганизующаяся децентрализованная сеть, которая сама строит маршруты между узлами.
Или проще говоря — это то, чем интернет должен был стать, свободным, не цензурируемым, быстрым и автоматически масштабируемым.


Короткое введение в Mesh сети, для тех кто с ними не знаком




Что это ?


Это одноранговая сеть, которая работает в двух режимах:
1) Через интернет создавая оверлейную сеть (Которая работает в десятки раз быстрее чем Tor и I2P)
2) Между роутерами напрямую.

Как это работает ?


Как я уже упоминал, сеть работает в двух режимах, но базовые принципы работы едины для обоих режимов.

Для доступа в сеть требуется установить ПО которое выполняет роль роутера — CJDNS

В процессе установки будут созданы ваши публичные и приватные ключи, создано тунельное устройство для которого будет сгенерирован iPv6 адрес.

Затем, для подключения к сети вы должны:
1) При подключении через обычный интернет — найти уже существующий узел сети и узнать его адрес и ключ
2) При подключении роутер-роутер — все произойдет самостоятельно.

После подключения вы получите доступ ко всей сети, ваш трафик будет зашифрован, его нельзя будет как расшифровать так и цензурировать.

Цель сети


Создать малые островки сетевой свободы на основе роутер-роутер и объединить их между собой через интернет каналы.

Из-за того, что сеть не имеет доступа в обычный интернет, пользователи предоставляющие свой канал не будут боятся получить повестку в полицию за взлом банка через его роутер.

Таким образом сеть сможет расти и охватывать новые пространства.

IPv6


В сети вам генерируется IPv6 адрес, который относится к приватной части IPv6 адресов, а значит не будут происходить коллизии между настоящим IPv6.

Кроме того, любое приложение сможет работать в сети Hyperboria если оно поддерживает работы через IPv6.
После установки нужного ПО трафик автоматически перенаправляется в данную сеть, что позволяет избежать дополнительную настойку программ.

Анонимность & Приватность


Сеть Hyperboria приватная — ваш трафик не может быть расшифрован ни кем кроме узла которому он должен быть доставлен.
Сеть НЕ анонимная, целью создания стояло сделать не клон I2P/Tor а сделать новый интернет, таким образом, с помощью трассировки можно узнать цепочку нодов и выяснить ваш IPv4 адрес, очевидно, что при подключении типа роутер-роутер данная проблема отпадет и сеть станет так же анонимной.

Маршрутизация трафика


Маршрутизация трафика обеспечивается с помощью системы аналогичной Kademilia DHT, точнее говоря каталог маршрутов постоянно обновляется из-за того, что конфигурация сети может поменяться, таким образом, сеть поддерживает оптимальную нагрузку через все ноды и выбирает самый короткий путь для трафика.

DNS


В данный момент идет разработка системы которая смогла бы заменить DNS, сделав его децентрализованным, рассматриваются варианты использования Namecoin или аналогичных служб, сейчас преобразования доменных имен осуществляется с помощью существующей DNS службы обычного интернета (прописывание АААА адреса)

Проект жив? или он мертв как и Netsukuku


Проект более чем жив, у него существует:
Статья в английской Wiki
Краткое описание на GitHub
Свой Wikipedia
WhitePaper
Сайт сети Hyperboria
Прямое общение с разработчиками происходит через IRC
Сеть функционирует в следующих городах: New Zealand, Seattle, Philly, Dallas, Chicago, Ireland, Phoenix, New York, Vancouver, Denver, Minneapolis.

Поддерживаемые платформы



ПО для создания сети прекрасно работает на всех UNIX-like платформах, Linux, Mac.
Совсем недавно начался сбор денег в поддержку портирования на Windows, деньги уже практически собраны, кроме того, те кто оплатили $125 получат роутер который из коробки работает в данной сети.

Как установить ?



Затем отредактируйте /etc/cjdroute.conf введя адрес пира который уже подключен к сети.
Для всех остальных ОС инструкции можно найти здесь.

Официальная инструкция по настройке на любом железе

Вывод


Пожалуй это первая Mesh сеть которая действительно умеет все о чем было заявлено, которая не умирает из-за отсутствия разработчика, которая обладает живым community.

Сейчас сеть напоминает интернет 90 годов, в ней нет рекламы, сайты в основном делаются только для «Для своих» тут вам и бесплатный файловых хостинг без рекламы, хостинг wordpress блогов, местный поисковик и так далее.

В окончании, хочется сказать следующее, когда я, как наверно и многие, читали спецификации Netsukuku, надеясь что появится рабочий образец, что бы моно было его протестировать и посмотреть работу, я несказанно обрадовался узнав об этой сети, которая выполняет все функции умершей Netsukuku.

Будьте осторожны, при присутствии в сети вы становитесь доступными напрямую без NAT по вашему IPv6 адресу !


Если данное направление будет вам интересно, о чем покажет голосование, я планирую перевести whitepaper, разобрать принципы работы сети (маршрутизация), рассмотреть аспекты анонимности и так далее.


Еще о Hyperboria:


Hyperboria: Интернет 2.0
Hyperboria: Как все устроено
Форум о сети
Интересна ли вам Mesh сеть Hyperboria?

Проголосовало 2870 человек. Воздержалось 339 человек.

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

Shift @shifttstas
карма
52,0
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (55)

  • +5
    А вот здесь можно посмотреть карту сети:
  • 0
    А смысл писать про неё, если подключаться не через кого?
    • +2
      Разработчики предлагают использовать их IRC для подключения к сети, тех кого заинтересует подключение — напишите в Личные сообщения — дам адрес для подключения.

      В дальнейшем, в следующей статье сделаю тестовый хабра-сервер
      • 0
        От публичных пиров отказались для децентрализации
        • +2
          Слово «пиров» прочитал с ударением на «о». Пора поужинать.
          • +1
            пировать!
  • +8
    Уж простите, но когда вы называете гиперборею «первой» меня уж слишком сильно коробит — freenet появился задолго до неё и на текущий момент обладает куда более оттестированным и богатым функционалом. И, пожалуйста, давайте обойдёмся без этой желтизны вроде «Интернет 2.0» хотя бы на хабре.
    • +2
      Лучше переименовать в «Netsukuku 2.0».
    • +8
      Суть заключается в том, что freenet tore i2p — созданы для другого, первая в плане mesh сеть, freenet — p2p а не mesh
  • +1
    (Которая работает в десятки раз быстрее чем Tor и I2P)

    Мне вот что интересно. Всякие гуглы гонятся за загрузкой страницы за миллисекунды и говорят, что пара секунд на загрузку основной части страницы (http+js+css, но без мультимедии) — это катастрофа.

    Сколько времени займет открытие новой ссылки в децентрализованной сети? Рассматриваем «сейчас» и «рост в 10 раз без смены архитектуры».
    Поясню. У меня utorrent в среднем держит с полсотни активных раздач по самым разным трекерам. Число пиров немалое. Но новый magnet link может секунд 20 искать описание файлов и первого пира. И это на популярные раздачи, с тысячами сидов.
    • +6
      Это не p2p, это просто сеть с очень сложной маршрутизацией (на этапе уже установленного соединения).
      Так что оно будет выглядеть, как интернет через hdspa, например.

      Там вполне себе работает traceroute6 и ping6, например.
      • 0
        Плохое сравнение. Классический интернет построен на централизованном, но распределенном DNS (грубо говоря, клиент заранее знает, у кого спросить адрес; сервер заранее знает, кому переслать запрос, если он сам не может его разрешить, и в вершине пирамиды централизованные рут хинты) и распределенный BGP (каждый роутер заранее знает, в какую сторону передать пакет по такому-то адресу, и содержит таблицы в сотни мегабайт весом). В случае DHT никто ничего заранее не знает. Я не вижу способов сделать время отклика предсказуемым как в классической схеме организации интернета.

        точнее говоря каталог маршрутов постоянно обновляется из-за того, что конфигурация сети может поменяться

        Модель push или pull?
        • 0
          Как Вам не стыдно службу доменных имен считать фундаментом Интернета. Ведь дети могут прочитать! Попробуйте ARPANET и основы маршрутизации загуглить.
          • 0
            Предлагаю сценарий: по какой-то магической причине DNS в глобальном масштабе перестал работать. Совсем. Расскажите, что произойдет дальше.

            Не совсем глобальные аварии случались.
    • +1
      Я делал обзор cкорости работы I2P сети, она работает относительно быстро после того, как найдутся пиры, эта же сеть работает очень быстро изначально, из-за того, что не используется луковичный принцип маршрутизации
      • 0
        она работает относительно быстро после того, как найдутся пиры

        Во-о-от. "как найдутся пиры". Я и спрашиваю — сколько времени может занять переход по новой ссылке, когда пир заранее неизвестен? Если строится не анонимайзер вида TOR/I2P, а конкурент текущего интернета (хоть даже использующий этот интернет в качестве транспорта), данный вопрос имеет первостепенное значение. Кому охота сидеть на выделенке и при этом по минуте ждать открытия страницы?
        • +2
          Путь выше всегда известен ноде выше, так же как и в текущем интернете, только если сейчас маршрутизацию настраивают в ручную, то в этой сети этим занимается роутер в автоматическом режиме, обмениваясь ей по DHT
          • +1
            Сейчас маршрутизация в в интернете настраивается автоматически (если мы говорим о распространении маршрутов по BGP). Ну да, еще можно ее немного руками подкорректировать ради оптимизации использования полосы. Вы, видимо, рассматриваете только конечные компьютеры, а меня больше интересуют промежуточные узлы, у которых несколько соседей, способных передать сообщение дальше по цепочке. Как реализовано распространение маршрутной информации? Вариант «каждый узел шлет сообщение наверх» исключен — сеть вроде одноранговая.

            Содержит ли каждый узел полную таблицу маршрутизации? Каким образом распространяется информация об изменениях — push или pull?
            • +2
              В данный момент пытаюсь вникнуть в это, я указывал выше что whitepaper еще не переводил, планировал в следующей статье рассмотреть это, почитать можно на английском вот тут github.com/cjdelisle/cjdns/blob/master/rfcs/Whitepaper.md#the-router

              Как я понимаю, при первом запросе к узлу, анализ топологии производится по всем соединениям и по результатам строится маршрут который существует и рассылается соседним нодам по dht, в случае изменения топологии маршрут строится вновь, механизм можно рассматривать как кэш DNS записей который через некоторое время обновляется
              • +3
                Читаю эту документацию. Вижу EIGRP. Тут и тот самый feasibility condition, и query/reply между соседями с почему-то нулевым TTL и нулевыми портами. Вот смотрю я на это и не понимаю — то ли им никто не объяснял, что такое TTL и что такое порты, то ли они решили изобрести велосипед с квадратными колесами «потому что мы можем». Ну серьезно — почему не TTL 1 и не какие-нибудь нормальные номера портов как это делают все порядочные протоколы маршрутизации, пакеты которых не должны роутиться?

                И как человек, имеющий опыт работы с EIGRP, могу сказать, что подобная архитектура архепаршивейше работает в «хаотичных» сетях (под хаотичностью понимаю что-то кроме full mesh или hub-and-spoke). И оно не работает там, где десятки/сотни тысяч маршрутов. Сама архитектура не работает. В таких условиях нельзя слать query, все роутеры захлебнутся.

                Прочитав по диагонали, не увидел триггера на получение маршрутной информации. Верю — вполне может быть, что триггером будет первый запрос. От такого подхода на магистралях «большого интернета» отказались уже очень давно.

                В общем, предвижу полный коллапс по достижении определенных масштабов.
                • +1
                  Задам вопрос разработчику если вы сможете помочь мне его правильно сформулировать
                  • +3
                    Да легко.
                    1) It seems to have an architecture similar to that of Cisco's EIGRP. How do you plan handling scaling issues in a randomly meshed network? Have you tested the design on thousands of routers? Won't they just collapse under theit own weight?
                    2) Are your routing protocol queries really triggered by data plane packets?
                    3) Why TTL 0 and UDP ports 0? Every other routing protocol designed to communicate only with directly connected neighbors uses TTL 1, an ephemeral source port and a fixed destination port. Machines aren't meant to ever send packets with a zero TTL, that's just wrong. Same for ports.
              • +2
                Кстати. Есть такой протокол — LISP. Сейчас он худо-бедно приближается к финальной версии. Суть в чем-то схожа — оверлей поверх интернета, IP адрес узла (EID) больше не идентифицирует его положение в сети, для этого добавляется отдельный инкапсулирующий IP адрес (RLOC), принадлежащий соседнему роутеру. В итоге это теоретически позволит, грубо говоря, прыгнуть смартфоном с wi-fi на 3G, сохранив IP адрес и не разорвав существующие соединения. Теоретически.

                На практике возникает важнейшая задача маппинга EID в RLOC, по аналогии с DNS, но со своей спецификой. Ух сколько копий было сломано в спорах «как это сделать»… DHT тоже обсуждали. Но пришли к выводу, что такая модель работать не будет. Та самая проблема «первого пакета». Хотя вроде и такие реализации есть, но лишь экспериментальные.

                В общем, у меня возникает ощущение, что авторы сами не очень понимают, что делают. Допустим, они грамотно разобрались с высокоуровневыми вещами вроде криптографии и т.д., но вот тот самый L3 рано или поздно очень больно по ним ударит. Популярность их проекта, рост числа всяких meshbox'ов ознаменует его смерть. Очень сложно менять архитектуру, когда решение уже в продакшне. Вспомните безумно болезненный переход на IPv6. Так вот, перед ними возникнет менее масштабная, но более трудная проблема. Рано или поздно им придется нарушить свои принципы и внести в сеть немного централизации, чтобы она продолжала работать, чтобы половина гуляющих по сети пакетов не была query/reply, и чтобы процессоры роутеров не были перманентно перегружены пересчетом таблицы маршрутизации.

                Если я правильно понял, что они там наворотили.
                • 0
                  чтобы половина гуляющих по сети пакетов не была query/reply, и чтобы процессоры роутеров не были перманентно перегружены пересчетом таблицы маршрутизации

                  Дурацкий вопрос: а нет надежды, что это скомпенсируется растущей мощностью железа / пропускной способностью сети? Интернет тоже с 1200 бауд начинался…
                  • 0
                    там рост экспоненциальный будет. Не угонятся.
                • +2
                  Получен развернутый ответ от разработчика, в следующей статье будет опубликован перевод, если есть вопросы еще — задавайте спрошу
                  • +1
                    Ну в принципе я не особо возражаю против английского текста :) Можете в личку сбросить.
                    • +1
                      Отправил
          • +1
            Так ведь в том то и дело, что почти всегда будет нужна информация о ноде не на «пути выше», а о той, у которой есть данные о интересующем нас адресе. Так что, учитывая, что всё всё равно зиждится на DHT-like, особго прироста в поиске пиров можно не ждать.
            Другое дело, что тут (судя по всему) пир ищется только для роутинга от нас и до интересующего адреса, причём единоразово в пределах одного адреса, а не для того, чтобы найти очередной чанк. Так что как нашли — соединение до этого ресура можно ожидать стабильное.
  • +2
    Так и не понял чем этот интернет 2.0 лучше интернета 1.0. Анонимности нет -> как только будет популярность — маски будут брать за жопу. А без популярности смысл в этой гипербореи не больше чем в фидо — игрушка для пары гиков.
    • +3
      Не цензурируемость, анонимность будет достигаться как только сеть подключена не через обычный интернет а через mesh, кроме того, что бы вас вычислить, в любом случае нужно придти к всей цепочки пользователей через которые маршрутизируется трафик, отличие от луковичной маршрутизации в том, что маршруты не меняются, но они тоже как бы есть.
      • +2
        не цензурируемость и будущая анонимность пропадут как только эта сеть получит популярность. Что мешает государствам наложить ограничения на использование этих mesh-роутеров? Буде основа в виде ограничений на крипто-алгоритмы и крипто-оборудование есть в законодательстве большинства стран. Плюс всегда можно сказать что через эту сеть общаются террористы с педофилами.
      • 0
        Как физически обеспечивается соединение роутер-роутер? Вайфай же? Т.е. радиосвязь? Маршруты фиксированы? То есть у каждого роутера «соседи» постоянны? Тогда что мешает дяденькам в штатском последовательно пеленговать «линки» в этих островках свободы?
  • +2
    Внезапно вспомнилась книга Little Brother автора Cory Doctorow
    • 0
      Только хотел написать, заискался названием книги — а уж Вы написали :)

      Рассказ, конечно, как и многое у Доктороу, слишком фантастичен, чтобы его не хотелось примерить на реальность. А примерив, не хотелось бы избавиться от крупных, с собаку, мурашек, насколько описываемые в нем вещи он обыденно-возможны.
  • +1
    Неплохой компромисс между скоростью и защищенностью, причем поверх этой сети можно и любимый ip2 пустить.
  • 0
    Про секцию DNS немного не понял.

    Что такое ААА адрес: это какой-то новый тип записей или прямая запись для адреса IPv6 (которая AAAA)?
    • 0
      Прямая обычная AAA запись
      • 0
        Спасибо за статью. но всё же, не сбивайте народ с толку, т.к. 4 буквы A, а не 3.
        • 0
          Исправил
  • 0
    Вы в статье трижды умомянули Netsukuku в контексте того что она мертва. Хотелось бы узнать подробности. На основании чего сделано такое предположение? Да, я согласен, ребята капитально положили на связи с общественностью и на документацию проекта, но в мейлинг листе идет активность и в общем-то разработка не прекращалась.
    • 0
      Рабочего прототипа данной сети нет, на основе даты последнего релиза сделан вывод что она умерла
  • 0
    Какие системные требования для запуска на аппаратных роутерах? Планируется ли заслать пакеты в реп OpenWRT или поднять собственный реп для роутеров?
    • 0
      Роутер будет на базе OpenWRT и разработка системы для роутера будет сделана в месте с командой разработчиков от этого роутера (на это пойдет часть денег от донейта) так что конечно будет
      • 0
        То есть системные требования пока не определены? Можете назвать хотя бы приблизительную цифру по требованиям к ОЗУ?
        • 0
          4 МБ на настольном ПК
  • 0
    Простите, у меня вопрос, допустима ли атака «злоумышленик посередине» в этой сети. Если я например заведу узел, где буду отдавать свои ключи и буду перекодировать трафик.
    • 0
      Если [даже открытый] ключ перехватят и подменят, то атака возможна в любой сети.
      Но MITM-атака — это не неизбежное зло, она преодолима. Есть способы защиты:
      1) передавать ключи при встрече
      2) шифровать на пароле, а пароль сообщать по другому каналу связи
      3) устраивать сверку (например по телефону) контрольной суммы ключа.
    • 0
      Ключи шифрования нужны только для подключения к вам, шифрование внутри сети осуществляется с помощью IPSEC так что MITM невозможен
  • 0
    Актуальная основа для Pandora, для которой желательна прямая связь между узлами!

    Я очень надеялся на развитие Netsukuku, но… кстати, кто знает, что случилось с разработчиками? Что-то странное происходит с людьми, разрабатывающими децентрализованные сети… Как бы со мной не случился какой-нибудь случайный случай (Галактика в опасности!).
  • 0
    Анонимность/шифрование данных не предоставляется же?
    • 0
      Конечно есть шифрование, своё и IPSEC
  • +3
    В Archlinux есть пакеты в АУРе со сборкой из GIT!!! ))
    А значит, вечерком в Тольятти поднимется новая нода, мужики)
    • +1
      Это хорошо, надо на своей пишке поставить тоже =)
    • 0
      У меня сегфолтится при старте сервиса. А у вас?

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.