Интернет-инфраструктура
Магистраль (опорная сеть, магистральная линия) Интернета состоит из множества крупных сетей, которые соединяются друг с другом. Эти крупные сети называют поставщиками сетевых услуг (Network Service Providers – NSP). Например, крупными поставщиками в РФ являются Ростелеком, МТС, Метросеть, ТрансТелеКом, и другие. Эти сети равноправно взаимодействуют друг с другом для обмена пакетами. Каждый поставщик должен подключаться к трем точкам доступа к сети (Network Access Points – NAP). В точках доступа к сети пакеты могут переходить из магистрали одной точки в магистраль другой. Точки доступа к сети также соединяются в городских очках доступа к сети (Metropolitan Area Exchanges – MAE). MAE служат той же цели, что и NAP, но находятся в частной собственности. NAP были первоначальными точками подключения к Интернету. И NAP, и MAE называются точками обмена интернет-трафиком (Internet Exchange Points – IX). Поставщики сети также продают трафик более мелким сетям, таким как Интернет-провайдеры и еще более мелкие поставщики. Ниже приведен рисунок, показывающий эту иерархическую инфраструктуру.
Это схематичное и не полное изображение кусочка Интернета. Рисунок 4 предназначен только для демонстрации того, как поставщики сетевых услуг могут взаимодействовать друг с другом и более мелкими Интернет-провайдерами. Ни один из физических компонентов сети не показан на Рисунке 4, в отличие от Рисунка 3. Это связано с тем, что магистральная инфраструктура отдельного Интернет-поставщика сама по себе представляет собой сложный рисунок. Большинство поставщиков сетевых услуг публикуют карты их сетевой инфраструктуры у себя на сайтах, и их легко найти. Нарисовать настоящую карту Интернета было бы почти невозможно из-за его размера, сложности и постоянно меняющейся структуры.
Иерархия интернет-маршрутизации
Как же пакеты находят свой путь через Интернет? Каждое подключенное к Интернету устройство знает, где находятся другие? Пакеты и правда просто "транслируются" на каждое устройство в Интернете? Ответ на оба предыдущих вопроса - "нет". Ни один девайс не знает, где находятся другие, и пакеты не отправляются на каждый из них. Информация, необходимая для доставки пакетов к месту назначения, содержится в таблицах маршрутизации, которые хранятся в подключенных к Интернету маршрутизаторах.
Маршрутизаторы - это коммутаторы пакетов. Маршрутизатор обычно подключается между сетями для распределения пакетов между ними. Каждый маршрутизатор знает о своих подсетях и о том, какие IP-адреса они используют. Маршрутизатор обычно не знает, какие IP-адреса находятся "над" ним. Посмотрите на Рисунок 5 ниже. Черные ящики, соединяющие магистрали, - это маршрутизаторы. Более крупные магистрали поставщиков сетевых услуг в верхней части соединены в точках доступа к сети. Под ними находятся несколько подсетей, и еще больше подсетей ниже. Внизу находятся две локальные сети с подключенными компьютерами.
Когда пакет поступает на маршрутизатор, маршрутизатор проверяет IP-адрес, заданный на уровне IP-протокола на исходном компьютере. Маршрутизатор проверяет свою таблицу маршрутизации. Если он находит сеть, содержащую IP-адрес, то пакет отправляется в эту сеть. Если такая сеть не найдена, маршрутизатор отправляет пакет по дефолтному маршруту, обычно вверх по иерархии магистрали к следующему маршрутизатору. Хорошо, если следующий маршрутизатор знает, куда отправить пакет. Если нет, пакет снова направляется вверх, пока не достигнет магистрали поставщика сетевых услуг. Маршрутизаторы, подключенные к магистралям поставщика, содержат самые большие таблицы маршрутизации, и здесь пакет будет перенаправлен в правильную магистраль, где он начнет свое путешествие "вниз" по все меньшим и меньшим сетям, пока не найдет пункт назначения.
Доменные имена и разрешение адресов
Но что делать, если вы не знаете IP-адрес компьютера, к которому хотите подключиться? Что делать, если вам нужно получить доступ к веб-серверу www.anothercomputer.com ? Как ваш веб-браузер узнает, где в Интернете находится этот компьютер? Ответ – через Службу доменных имен (Domain Name Service – DNS). DNS - это распределенная база данных, которая отслеживает имена компьютеров и соответствующие им IP-адреса в Интернете.
Многие компьютеры, подключенные к Интернету, содержат часть базы данных DNS и программное обеспечение, которое позволяет другим получить к ней доступ. Эти компьютеры называются DNS-серверами. Ни один DNS-сервер не содержит всю базу данных; они содержат только ее часть. Если DNS-сервер не содержит доменного имени, запрошенного другим компьютером, он перенаправляет запрашивающий компьютер на другой DNS-сервер.
Служба доменных имен структурирована как иерархия, аналогичная иерархии IP-маршрутизации. Компьютер, запрашивающий разрешение имени, будет перенаправлен "вверх" по иерархии, пока не будет найден DNS-сервер, который может разрешить доменное имя в запросе. На Рисунке 6 показана часть иерархии. В верхней части дерева находятся корни домена. Некоторые из более старых и распространенных доменов расположены ближе к верху. Тут не показано множество DNS-серверов по всему миру, которые формируют остальную часть иерархии.
Когда подключение к Интернету установлено (например, в локальной сети), один основной и один или несколько дополнительных DNS-серверов обычно являются частью подключения. Таким образом, любые интернет-приложения, которым требуется разрешение доменных имен, смогут функционировать правильно. Например, когда вы вводите веб-адрес в свой веб-браузер, браузер сначала подключается к вашему основному DNS-серверу. После получения IP-адреса для введенного вами доменного имени браузер затем подключается к целевому компьютеру и запрашивает нужную вам веб-страницу.
*Практика: Отключаем DNS в Windows
Если вы используете Windows и подключены к Интернету, вы можете просмотреть свои DNS-серверы и даже отключить их.
Если вы используете коммутируемую сеть:
Откройте окно коммутируемой сети (его можно найти в Проводнике Windows под Дисками (C:, D:) и над Сетевым окружением). Щелкните правой кнопкой мыши на Интернет-соединение и выберите пункт Свойства. В нижней части окна свойств подключения нажмите на кнопку Настройки TCP/IP.
Если у вас постоянное подключение к Интернету:
Щелкните правой кнопкой мыши на Сетевое окружение и выберите пункт Свойства. Щелкните Свойства TCP/IP. Выберите вкладку Настройки DNS вверху.
Должны отобразиться IP-адреса ваших DNS-серверов. Здесь можно отключить DNS или установить для DNS-серверов значение 0.0.0.0. (Сначала запишите IP-адреса ваших DNS-серверов. Вероятно, вам также придется перезапустить Windows.) Теперь введите адрес в свой веб-браузер. Браузер не сможет разрешить доменное имя, и вы, вероятно, получите неприятное уведомление в диалоговом окне, сообщающее, что DNS-сервер не найден. Однако, если вы введете соответствующий IP-адрес вместо имени домена, браузер сможет получить нужную веб-страницу. (Используйте ping, чтобы получить IP-адрес перед отключением DNS.)