Структура интернета
Вы никогда не интересовались вопросом, где находится главный сервер интернета? Или, скажем, кто является хозяином интернета? Сейчас, наверное, большинство читателей рассмеется и скажет, что никакого хозяина у интернета быть не может, так как интернет — это просто объединение множества компьютеров и других сетевых устройств.
Просто, да не совсем просто. В каком-то смысле, хозяева у интернета есть. Ведь все это объединение компьютеров — это не просто бесформенный муравейник; на самом деле, интернет имеет жесткую иерархическую структуру, наличие которой и позволяет вам легко связываться с компьютерами, находящимися на другом конце земного шара. Кто же эти «хозяева»? Как получается, что интернет выполняет свои задачи? Что нужно сделать, чтобы парализовать работу интернета? Этим темам и посвящена сегодняшняя статья.
IP-адреса
Одной из важнейших структур в интернете является IANA — Internet Assigned Numbers Authority — «Администрация адресного пространства Интернет». Эта некоммерческая американская организация занимается раздачей IP-адресов (если вы плохо представляете, что такое IP-адреса, очень рекомендую ознакомиться со статьей по ссылке). У каждого компьютера в интернете есть IP-адрес, набор из четырех чисел от 0 до 255; но вы не можете просто так прописать у своего компьютера произвольный IP-адрес. То есть прописать-то его вам ничего не помешает, но интернет после этого работать не будет. Почему? Потому что структура IP-адресов иерархична — сейчас попробую объяснить.
В настройках сетевого подключения обычно прописывается не только IP-адрес, но и так называемая маска. Вы, например, могли встречаться с набором чисел 255.255.255.0 Эта маска определяет вашу подсеть — если у вас, допустим, IP-адрес 212.193.1.150 и такая маска, то подсетью будут адреса вида 212.193.1.*, где * — произвольное число. В случае же маски 255.255.0.0 подсетью будут адреса вида 212.193.*.* Бывают и более дробящие маски — например, в случае маски 255.255.255.128 вашей подсетью будет 212.193.1.X, где X может меняться от 128 до 255.
Зачем я рассказываю про маски и подсети? А затем, что ваше соединение с интернетом идет через один из IP-адресов вашей подсети, так называемый шлюз. И если на этот шлюз придут данные из локальной сети с адреса, не попадающего в описанную на шлюзе подсеть, то он просто проигнорирует такой пакет. Так и выстраивается иерархичность. Если организации выдан некоторый блок IP-адресов с какой-то маской, то она может тоже выдавать IP-адреса или блоки адресов своим подчиненным (или провайдер может выдавать блоки более мелким провайдерам), но эти блоки будут являться лишь подблоками основного блока. Поэтому по IP-адресу можно проследить цепочку — кто и кому этот адрес выдавал. Но чтобы блоки начали распределяться, нужен главный хозяин — кто-то, кто заведует пулом всех IP-адресов. Этим хозяином как раз и является IANA.
Информацию о блоках IP-адресов можно всегда посмотреть по адресу http://www.iana.org/assignments/ipv4-address-space/ipv4-address- space.xml. Если мы внимательно изучим эту таблицу, то поймем, что огромные блоки адресов принадлежат конкретным организациям. Например, все адреса, начинающиеся на 15, принадлежат компании Hewlett-Packard — так сложилось еще до возникновения IANA. Свободных блоков становится все меньше — по приблизительным расчетам они закончатся осенью 2011 года. Именно поэтому IANA планирует перевод интернета на новую версию протокола IP — IPv6.
Доменные имена
Но IP-адресами дело не заканчивается — даже если интернет прекрасно функционирует и пакеты доходят до целевых IP-адресов, мы должны не забывать о том, что мы практически всегда используем не IP-адреса, желая попасть на какой-либо сайт, а нормальные имена типа it.sander.su. Как я уже писал ранее, за преобразование таких имен в IP-адреса, отвечают службы DNS, сейчас же мы обсудим, кто все-таки управляет раздачей доменных имен. Опять-таки, вы не можете просто так себе присвоить произвольное доменное имя по той простой причине, что никто не узнает о том, что вы его себе присвоили. А все потому, что DNS-сервера также соблюдают строгую иерархию. Если DNS-сервер посетителя интернета не знает, как разрешить доменное имя (например, sander.su), то он обратится не к кому-либо, а к доменному серверу, отвечающему за зону su. А откуда он возьмет его адрес, если он его не знает заранее? А для этого он обратится к одному из 13 так называемых корневых DNS серверов. А вот их адреса уже постоянны и прописаны во всех операционных системах.
А дальше все опять-таки иерархично. Доменные зоны верхнего уровня — это, в большинстве случаев, коды стран. Естественно, в каждой стране есть своя организация, ответственная за соответствующую зону верхнего уровня. И уже эта организация определяет порядок раздачи доменных имен в своей стране. Правда, есть и зоны, не связанные со странами — например, edu, com и, теперь уже, su
Что же нужно предпринять чтобы нарушить работу интернета, чтобы DNS имена перестали разрешаться в IP-адреса? Правильно, нарушить функционирование корневых DNS серверов. Интернет «пропадет», конечно, не сразу, но проблемы начнутся сразу же. Между прочим, попытки атак на эти сервера производятся постоянно, например, обычные DDOS атаки, но об этом — в другой раз. Альтернативно можно атаковать какую-нибудь конкретную доменную зону верхнего уровня.
Что еще интересно, в дело хранения информации о доменных именах интернета включилась такая структура как Google. Он хоть и не распределяет доменные имена, но пытается хранить информацию о всех имеющихся. Адрес DNS Google очень просто запомнить: 8.8.8.8. Я его использую, когда имеются проблемы с DNS интернет-провайдера.