На сегодняшний день примерно каждый второй житель планеты Земля является пользователем Интернета [2]. Большая часть из них даже не задумывается, насколько сложной является данная глобальная сеть. Интернет объединяет в себе множество компьютерных сетей для хранения, обработки и передачи данных, и построен он на базе стека TCP/IP. Протокол TCP отвечает за управление передачей данных, а протокол IP — за объединение отдельных компьютерных сетей (его также называют межсетевым протоколом). С протоколом IP связано одно крайне важное понятие — IP-адресация.
Система адресации стека TCP/IP является глобальной, то есть она не зависит от способов адресации узлов в отдельных сетях, решая задачу объединения сетей. Эта система однозначным образом позволяет идентифицировать любой интерфейс в сети Интернет, уникально нумеруя каждый узел сети. Данный номер и является сетевым адресом, называемым IP-адресом [1]. Он состоит из двух логических частей — номера сети и номера узла в сети, однако четкой границы между ними нет. Все зависит от способа, по которому из IP-адреса выделяются номер сети и номер узла. Самый простой из них заключается в использовании фиксированной границы (например, 24 бита отводятся под номер сети, а 8 бит отводятся под номер узла в сети). Передвижение границы вправо увеличивает число сетей, а передвижение границы влево уменьшает их число. Но и в том, и в другом случае размер всех сетей будет одинаковым, что не позволяет гибко управлять сетью. Другой подход основан на использовании маски, с помощью которой можно гибко установить границу между номером сети и номером узла в сети. В данном случае размер сети произволен, и задается он выбранным значением маски. Еще одним способом является использование классов адресов, что является совокупностью двух описанных выше способов. Классы адресов позволяют задавать сети, размеры которых хоть и не являются произвольными, как при использовании масок, но и не являются одинаковыми, как при использовании фиксированной границы. Существует всего пять классов адресов: A, B, C, D и E. Первые три используются для адресации сетей, а последние два имеют специальное назначение. При отправлении пакета в составной сети в его заголовок помещается IP-адрес узла назначения. Используя определенное правило, каждый маршрутизатор извлекает номер сети назначения, по которому находит IP-адрес следующего маршрутизатора. Когда сеть назначения достигнута, извлекается номер узла, по которому определяется, где именно находится узел назначения.
В сентябре 1981 года была описана четвертая версия протокола IP (IPv4). Тогда Интернет только зарождался, и о нехватке IP-адресов речь и не шла, ведь предусмотренное количество в 4 миллиарда 294 миллиона 967 тысяч 294 адреса считалось не просто достаточным, а неисчерпаемым (такое количество IP-адресов обусловлено тем, что их длина равна 32 битам, а общее количество — 232). Однако ситуация не настолько радужная, так как IP-адреса назначаются не только конечным узлам, но и различным устройствам, образующим инфраструктуру Интернета [3], таким как маршрутизаторы и сервера.
Стоит отметить, что в версии IPv4 [4] применяются средства, которые направлены на снижение количества используемых IP-адресов. Первый вклад в этот процесс внесла технология бесклассовой междоменной маршрутизации CIDR, суть которой заключается в том, что каждому регистратору или поставщику услуг выдается непрерывный диапазон IP-адресов. Это позволяет лучше организовать сеть, правильнее распределив IP-адреса. Хотя стоит сказать, что данная технология, в первую очередь, была направлена на усовершенствование процедуры маршрутизации, однако она также помогла и в вопросе использования IP-адресов.
Для рассмотрения следующего способа необходимо дать определение «белых» и «серых» IP-адресов. «Белые» IP-адреса являются публичными, используются для выхода в сеть Интернет, а также они уникальны. «Серые» же IP-адреса используются в локальных сетях. С их помощью нельзя выйти в Интернет, они уникальны только в пределах определенной локальной сети и работать с их помощью можно только в пределах этой локальной сети. К «серым» IP-адресам относятся три диапазона адресов [1]:
1) От 10.0.0.0 до 10.255.255.255 с восьмибитной маской — всего 16 миллионов 777 тысяч 216 адресов;
2) От 172.16.0.0 до 172.31.255.255 с двенадцатибитной маской — всего 1 миллион 40 тысяч 400 адресов;
3) От 192.168.0.0 до 192.168.255.255 с шестандцатибитной маской — всего 65 тысяч 25 адресов.
Проблему невозможности доступа в Интернет с использованием «серого» IP-адреса решает технология NAT [7], которая отвечает за преобразование сетевых адресов. Существуют две наиболее популярные разновидности NAT: SourceNAT и DestinationNAT. Первая заменяет адрес источника (также могут заменяться номера портов) при отправлении пакета и адрес назначения при получении ответа. Благодаря этому большая локальная сеть, например, состоящая даже из 65 тысяч локальных устройств, может иметь всего один IP-адрес. Именно эта особенность существенно экономит число IP-адресов, так как адреса в подобной локальной сети являются «серыми». Пример сети, в которой для доступа в сеть Интернет используется технология SourceNAT, представлен на рисунке 1. Вторая же разновидность технологии NAT, называемая DestinationNAT, позволяет по IP-адресу маршрутизатора обратиться к серверу, расположенному в локальной сети. Сделать это без технологии DestinationNAT невозможно.
Рис. 1. Вариант сети, в которой используется SourceNAT
Еще одним способом, позволяющим уменьшить скорость исчерпывания IP-адресов, является использование прокси-сервера. Он аналогичен по принципу действия технологии преобразования сетевых адресов NAT, однако обладает куда большими возможностями для контроля использования Интернета, такими, как аутентификация пользователей и фильтрация контента, что не может предоставить NAT. При использовании прокси-сервера клиент запрашивает какой-либо ресурс, расположенный на другом сервере, а уже прокси-сервер получает у него ресурс и предоставляет его клиенту. Прокси-сервер помимо анонимности пользователя предоставляет еще и надежную защиту от некоторых видов сетевых атак.
Также для уменьшения числа используемых IP-адресов используется виртуальный хостинг. Это такой вид хостинга, для которого множество сайтов располагается на одном сервере. Это существенно сокращает число задействованных IP-адресов, так как теперь каждому сайту не ставится в соответствие отдельный IP-адрес.
Даже несмотря на все предпринимаемые меры, технический прогресс и бурный рост пользователей Интернета сделали момент, когда IP-адреса протокола версии IPv4 закончатся, реальным. 3 февраля 2011 года агентство IANA (организация, управляющая распределением пространства IP-адресов) выдала последние пять блоков с восьмибитной маской (по 16 миллионов 777 тысяч 216 адресов в каждом). Тогда же была высказана гипотеза, что IP-адреса будут исчерпаны в течение пяти лет [6]. На деле же в сентябре 2015 года у североамериканского регионального регистратора закончились IP-адреса, у остальных, кроме африканского регионального регистратора, IP-адреса должны закончиться в 2017 году. Этот факт вынуждает искать новые варианты распределения IP-адресов.
Наиболее правильным решением является серьезная переработка протокола IP. Его модернизация должна быть посвящена выполнению следующих необходимых целей [1]:
1) Создание масштабируемой схемы адресации;
2) Сокращение объема работ, выполняемых маршрутизаторами;
3) Предоставление гарантий качества транспортных услуг;
4) Обеспечение защиты данных, передаваемых по сети.
Подобная версия протокола IP была создана в 1996 году и называется IPv6 [5] (пятая версия протокола IP была экспериментальной версией протокола реального времени для передачи аудио и видео). Несмотря на двадцатилетний возраст, шестая версия протокола IP все еще не обрела большой популярности и занимает долю в несколько процентов в общемировом сетевом трафике. Основная ключевая особенность IPv6 связана с созданием масштабируемой системы адресации, так как теперь IP-адрес состоит не из 32 бит, а из 128 бит, то есть размер адреса вырос в четыре раза. Это означает, что число всевозможных IP-адресов увеличилось в 296 раз и стало равным 2128. Такого колоссального количества адресов более чем хватит на все население Земли. Однако главная цель новой системы адресации состоит не только в увеличении количества IP-адресов, а также в повышении эффективности работы стека TCP/IP в целом. Это достигается за счет того, что теперь IP-адрес имеет четыре уровня вместо двух, первые три из которых отвечают за адрес сети, а последний — за адрес узла. Благодаря этому происходит много более эффективное использование технологии CIDR, что позволяет также значительно снизить расходы на маршрутизацию. Нельзя также не упомянуть и про то, что наличие такого большого числа IP-адресов делает бессмысленной операцию деления сети на подсети с использованием маски, но использование маски для объединения сетей, наоборот, становится крайне важным. Эта особенность считается тем самым фактором, который позволит наиболее эффективно использовать адресное пространство в шестой версии протокола IP.
Таким образом, можно сделать вывод, что проблема нехватки IP-адресов реальна, однако только с точки зрения четвертой версии протокола IP (IPv4), для которой по прогнозам уже в следующем году не останется IP-адресов. Даже разработанные и применяемые средства и технологии, уменьшающие скорость исчерпывания (технология межклассовой междоменной маршрутизации CIDR, внутрисетевая адресация с использованием «серых» IP-адресов, технология преобразования сетевых адресов NAT, прокси-сервера, виртуальные хостинги), не смогли помочь в решении этой проблемы. Однако создание шестой версии протокола IP (IPv6), которая оперирует уже 2128 числом адресов, с лихвой решает проблему нехватки IP-адресов. Именно за IPv6 стоит будущее сетевых технологий, и это будущее с каждым днем только приближается.
Литература:
- Олифер, В. Г. Компьютерные сети / В. Г. Олифер, Н. А. Олифер. — СПб.: Издательский дом «Питер», 2006. — 958 с.
- Международный союз электросвязи, пресс-релиз. // Электронный ресурс. URL: http://www.itu.int/en/ITU-D/Statistics/Pages/facts/default.aspx (дата обращения: 22.06.2016).
- Аренда IP-адресов — решение проблемы нехватки. // Тенденция. URL: https://www.tendence.ru/articles/ip-addr-lease?mod=ip-addr&category=services (дата обращения: 22.06.2016).
- Стандарт RFC 791. // Электронный ресурс. URL: https://tools.ietf.org/html/rfc791 (дата обращения: 22.06.2016).
- Стандарт RFC 2460. // Электронный ресурс. URL: https://tools.ietf.org/html/rfc2460 (дата обращения: 22.06.2016).
- Хьюстон, Джеф. Исчерпывание адресов IPv4 в Азиатско-Тихоокеанском сетевом информационном центре. // Электронный ресурс. URL: http://www.potaroo.net/ispcol/2015–08/last8.html (дата обращения: 22.06.2016).
- Пролетарский А. Технологии защиты информации в компьютерных сетях. // Электронный ресурс. URL: http://www.intuit.ru/studies/courses/16655/1300/lecture/25510 (дата обращения: 22.06.2016).