Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Вячеслав Мавроди - 400 идей бесплатно для Вас 131. Пиринговый DNS, или Freedom Net



-- Г-голубчики, - сказал Федор Симеонович озадаченно, разобравшись
в почерках. -- Это же п-проблема Бен Б-бецалеля.
 К-калиостро же доказал,что она н-не имеет р-решения.
     -- Мы сами знаем,  что она  не  имеет  решения,  --  сказал  Хунта,
немедленно ощетиниваясь. -- Мы хотим знать, как ее решать.
(Аркадий и Борис Стругацкие. Понедельник начинается в субботу)




131. Пиринговый DNS, или  Freedom Net
25.11.2004
Основные положения

Для организации альтернативных DNS-суффиксов использовать пиринговые сети. Любой пользователь может внести свой суффикс и он станет прозрачно доступным без дополнительных плагинов к браузеру через сотни тысяч компьютеров пользователей Р2Р-сетей.
Также предлагается услуга скрытый DNS: Ваш компьютер/сеть будет свободно находиться всеми другими пользователями Интернета, при этом в DNS-службах RIPN Ваш DNS зарегистрирован не будет.

Реализация идеи

Технически схема сервиса выглядит так:
  1. Таблицы DNS физически находятся в пиринговых сетях в виде конкретных DNS-файлов, известных управляющему серверу Freedom Net (далее FreeNet – Фринет).
  2. Обращаясь к конкретному домену вида Vasya.porn, пользователь на самом деле попадает на сервер Фринет (основной маршрутизатор), либо на его зеркала, расположенные на нескольких бесплатных серверах (или платных) в разных точках планеты («звезда» 003-го). Т.е. на этом этапе мы имеем полную аналогию с работой маршрутизаторов RIPN.
  3. Сервер Фринет и его зеркала не хранят сами таблицы маршрутизации с конкретными IP-адресами пользователей. Они хранят лишь таблицы соответствия введенному доменному имени имен DNS-файлов Фринет в пиринговой сети. Конкретные же  данные по доменам находятся в DNS-файлах. Где именно расположены эти DNS-файлы сервер Фринет не знает.
  4. Получив запрос на доменное имя Vasya.porn, сервер Фринет отправляет обращение в пиринговую сеть на поиск этого DNS-файла по его имени.
  5. Когда Фринет-серверу возвращается ответ пиринговой сети с указанием адреса местоположения данного DNS-файла, сервер посылает данному DNS-файлу запрос-команду с указанием нужного домена.
  6. DNS-файл, представляющий собой php-скрипт (либо иной скрипт), в ответ на запрос сервера возвращает ему значение IP-адреса для данного домена, взяв это значение из своей таблицы маршрутизации.
  7. Либо, как вариант, - сервер в команде DNS-файлу также указывает и IP-адрес пользователя, от кого пришел запрос и, если нужно, параметры запроса (или весь TCP/IP пакет запроса целиком). Тогда DNS-файл может не передавать данные обратно Фринет-серверу, а – передать данные от имени Фринет-сервера (как продолжение сеанса) напрямую на компьютер пользователя, инициировавшего запрос. Точный IP-адрес сервера DNS-файл знает, поэтому притвориться Фринет-сервером ему не составит труда…
  8. Браузер пользователя получает такую же DNS-инфу, какую он получил бы от DNS-серверов RIPN при посещении «нормального» домена, после чего происходит стандартная процедура соединения.

Дополнения

Чтобы система стабильно работала в обычных пиринговых сетях, где файлы хранятся на компьютерах пользователей, нужно чтобы пользователи закачивали себе на компы эти самые DNS-файлы. Чего ни один нормальный юзер делать добровольно никогда не будет. Поэтому единственный вариант – стеганографирование DNS-файлов внутрь популярных аудио- видеофайлов, а также порно- и прочих картинок. Либо какое-то простое прикрепление DNS-файлов к другим файлам (я таких механизмов не знаю). Т.е. внутрь того контекста, который пользуется наибольшей популярностью у юзеров.
С учетом того, что DNS-файлы представляют собой скрипты, я пока не готов предложить механизм реализации подобной схемы – непонятно как можно БЫСТРО выдрать инфу из таких файлов без их перекачки на Фридом-сервер и открытия программой стеганографии… Если есть какой-то путь – буду рад его узнать. Если в DNS-маршрутизации можно обойтись какими-то иными механизмами, кроме скриптов или выделенных серверов, - тоже было бы интересно, т.к. моих знаний о полной схеме маршрутизации явно недостаточно…
  • Поэтому мы пока не будем заморачиваться на действующих пиринговых сетях, а посмотрим несколько шире на само определение «что такое пиринговая сеть». В самом общем моем смысле – это децентрализованная сеть между двумя клиентами. В нашем случае один клиент – это пользователь, желающий зайти на сайт Vasya.porn , а второй клиент – это децентрализованный DNS-маршрутизатор. Как их свести между собой так, чтобы для клиента процесс протекал незаметно (прозрачно) и никак не отличался от привычного юзанья Инета?
  • Пока не будем заморачиваться полностью распределенной пиринговой сетью, без центральных серверов. Построим простую «полупиринговую» сеть с несколькими центральными управляющими (т.е. не хранящими сами файлы сети) серверами Фринет (основной в офисе + 3 зеркала). А вместо действующих пиринговых сетей используем «звезду» 003-го. В этой «звезде» регистрацию новых клонов и «маток» сделаем полуавтоматической: когда робот доходит до момента распознавания картинки (момент, на котором 003-й остановился на сегодня) – помогать ему будет человек-оператор. (При условии, что ему не поможет статья из журнала «Хакер», где предлагается механизм распознавания таких картинок роботом).
  • Для начала операторами, помогающими роботу будут наши люди. В дальнейшем, если это потребуется, я предложу механизмы подключения к этой работе «широких масс» юзеров, пока на этом заострять внимание не надо, как именно это будет работать. Делаем просто в расчете на то, что «кто-то» если надо роботу поможет…
Резюме: нам надо сделать «альтернативную» официальной RIPN’овской DNS-сеть из клонов и «зеркал» ВЖ-звезды. Задействовав PR-клоны, или зеркала ВЖ как альтернативные DNS-серверы, на которых  хранятся таблицы маршрутизации: ведь их не надо даже переписывать, только дополнять новыми доменами и хост-именами.
И вполне можно раздать кучу адресов в виде просто «Богатырь» или «Кремль.ру».


! В 2005 году будет новый домен .post, где будут почтовые службы (надо туда ТМ прописать…)


В избранное