Pull to refresh

Свободный DNS для свободного Интернета

Reading time 3 min
Views 11K
В качестве альтернатив Интернету сейчас существует несколько проектов, один из них — cjdns (Hyperboria).
Одна из больших проблем в этой сети — отсутствие хорошей замены существующей DNS. Чем не подходит существующая система? Например, зависимостью от «внешних сил» и функционированием в «обычном Интернете». Я предлагаю достаточно хороший вариант построения новой системы доменных имен.

Небольшое предисловие


Я недавно поставил себе cjdns (Гиперборею) и хотел было уже полазить по внутренним ресурсам, посмотреть «как там люди живут», но не тут-то было. В документации указан один IP DNS-сервера, и при этом написано, что он уже не поддерживается, и на данный момент нет готовой системы доменных имен для cjdns. Тогда я немного поскорбил, попинговал некоторые узлы и решил, что в таком виде сетью пользоваться невозможно. Но, так как мне нравится идея этой сети, я решил отдать на обдумывание/решение этой проблемы несколько часов работы моего и так забитого мозга.

Предъявляем требования


То, что я хочу вам предложить, я решил основать на некоторых простых принципах:
  • Система должна быть распределенной (не иметь единой точки отказа)
  • Система должна быть простой и открытой
  • Система должна быть легкой для перехода со «старого» DNS
  • Система должна использовать тот же протокол (он, конечно, плох и не защищен, но браузеры никто переписывать не кинется)

Но как этого добиться? Конечно, можно придумать с десяток DNS-серверов, запущенных по всему миру, и десяток админов, вручную вводящих домены и айпишники в некую базу. Но что будет, если кто-то пропишет у себя для домена facebook.com свой айпишник? Или что будет, если Вася и Петя захотят «зарегистрировать» себе один и тот же домен? Будет плохо, не мне вам рассказывать об этом.

Тут возникает еще два обязательных требования:
  • Надо сделать так, чтобы за домен чем-то платили (чтобы при старте системы не были «зарегистрированы» все домены сразу)
  • Надо сделать так, чтобы оплата шла не простому админу DNS-сервера


Упрощенная схема


  1. Есть набор DNS-серверов, синхронизирующихся между собой
  2. Есть несколько «регистраторов» доменов, отсылающих информацию в сеть DNS-серверов

И тут вы скажете… Да, чем же она отличается, мать твою? Объясняю.

На том же ГитХабе размещается код DNS-сервера, который умеет соединяться с другими такими же и обмениваться информацией. Все такие сервера равнозначны, но каждый из них содержит у себя в конфиге адреса нескольких «корневых» для этого сервера серверов. Простите за каламбурчик. Этот сервер «подписывается» на обновления на корневом сервере, а тот в ленивом режиме рассылает изменения на подписавшихся.

Кто кому будет платить за домены? Я, конечно, могу поставить коробочку и сказать «кладите сюда баксы, я для вас буду домены регать», но мало кто на это согласится. А платить нужно будет официальным фондам. Например, фонд борьбы с раком, фонд борьбы со СПИДом, фонд разработки свободного ПО, фонд борьбы с поиска внеземных цивилизаций и несколько других. Теперь, для того, чтобы зарегистрировать домен не нужно будет кормить неких странных регистраторов, а можно будет честно перевести денег в выбранный вами фонд, и за это получить нужный домен. А от повальной регистрации доменов самим фондом нас должна спасти его репутация, коей он должен дорожить.

Как фонд будет регистрировать домен? Фонд, которому сообщество разрешило регистрировать домены, скачивает ПО с того же ГитХаба, с помощью которого генерирует себе пару ключей (публичный, приватный). Приватный ключ публикуется на сайте фонда и добавляется в DNS-сервера (посредством того же ГитХаба). Теперь, когда пользователь жертвует несколько баксов в какой-нибудь фонд, этот фонд автоматически шифрует желаемый домен, с дополнительной информацией, своим закрытым ключом, и рассылает этот бандл нескольким DNS-серверам нового поколения. Через некоторое время все DNS-сервера знают о новом домене.

Немного о ценообразовании


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

Однобуквенные домены пока будут зарезервированы, и никому отдаваться не будут.

Двухбуквенные первый год будут продаваться за 10000 долларов за штуку. В дальнейшем, каждый год они будут дешеветь на одну десятую от начальной цены — 9000, 8000, и так далее, пока не дойдет до 1000, далее они будут дешеветь по 100 долларов в год. Дойдя до минимальной стоимости домена, они остановятся.

Трехбуквенные, по аналогии с двухбуквенными, будут продаваться за 1000 баксов в год на начальном этапе и дешеветь на сотню в год.

Четырехбуквенные начинают со ста баксов и доходят до минимальной цены с шагом в 10 баксов.

А пятибуквенные и больше, всегда стоят по минимальной цене — 20 долларов в год.
Only registered users can participate in poll. Log in, please.
Как вам такой вариант управления системой доменных имен?
28.87% Хороший вариант, следует начать реализацию 28
10.31% Неплохой вариант, но есть серьезный минус (напишу в коментариях) 10
60.82% Вариант так себе, не взлетит (напишу в комментариях почему) 59
97 users voted. 67 users abstained.
Tags:
Hubs:
+1
Comments 13
Comments Comments 13

Articles