Что такое IP-адрес и почему их перестало хватать
Каждое устройство в сети носит адрес, без которого интернет не знал бы, куда нести твоё видео с котиками. Разбираемся, как устроен этот адрес и почему четыре миллиарда таких номеров вдруг закончились.
Представь, что интернет — это гигантская почта, а каждое устройство в нём — дом с почтовым адресом. Без адреса письмо никуда не дойдёт: ни сообщение в мессенджере, ни картинка, ни видео. Этот адрес называется IP. И вот что странно — однажды человечество обнаружило, что адреса заканчиваются. Как такое вообще возможно?
Зачем устройству адрес
Когда ты открываешь сайт, твой компьютер не кричит в пустоту "эй, дайте мне страницу!". Он отправляет аккуратный запрос на конкретный адрес сервера, а сервер должен знать, куда вернуть ответ. Для этого у каждого участника сети есть свой IP-адрес — Internet Protocol address, то есть адрес по протоколу интернета.
Самый привычный вид адреса выглядит так: 192.168.0.1. Четыре числа через точки, и каждое — от 0 до 255. Это формат под названием IPv4, четвёртая версия протокола, которой мы пользуемся с начала 1980-х. По сути это просто способ записать число, понятное и человеку, и машине.
IP-адрес — это не имя устройства, а его местоположение в сети. Как номер дома: он говорит не кто ты, а где тебя искать.
Кстати, привычные адреса вроде codechick.io — это не IP, а доменные имена. Их придумали для людей, потому что запоминать буквы проще, чем цифры. Когда ты вводишь имя сайта, специальная служба DNS работает как телефонная книга: находит по имени нужный IP-адрес и подставляет его. Так что за каждым красивым доменом всё равно прячется набор чисел.
Почему чисел оказалось мало
Теперь — самое интересное. В формате IPv4 адрес состоит из четырёх чисел, и под него отведено ровно 32 бита — 32 ячейки, каждая из которых может быть нулём или единицей. Сколько всего комбинаций? Два в тридцать второй степени — это примерно 4,3 миллиарда адресов.
В 1981 году, когда придумывали IPv4, это казалось числом из разряда "никогда не кончится". Компьютеры были редкими и дорогими, стояли в университетах и крупных компаниях. Кто мог представить, что однажды интернет будет у каждого в кармане?
А потом случилось вот что:
- у людей появились смартфоны — и каждому нужен адрес;
- к сети подключились ноутбуки, планшеты, умные часы;
- пришёл интернет вещей: телевизоры, лампочки, холодильники, камеры, даже чайники;
- а ещё серверы, дата-центры и облака, где машин — миллионы.
Получилось, что устройств на планете стало больше, чем доступных адресов. 4,3 миллиарда — это меньше, чем людей на Земле, а у многих по два-три гаджета. Адреса начали распределять между регионами и провайдерами, и в 2011 году главный распорядитель выдал последние крупные блоки IPv4. Свободные номера попросту закончились.
Как выкрутились: один адрес на всех
Тут поможет аналогия. Представь большой офисный центр с одним телефонным номером на всё здание. Снаружи звонят на этот единственный номер, а внутри сидит секретарь, который соединяет звонок с нужным кабинетом по внутреннему добавочному. Снаружи кажется, что номер один — а на деле за ним сотни рабочих мест.
Именно так работает технология NAT (Network Address Translation, преобразование сетевых адресов). Твой домашний роутер — это и есть тот самый секретарь. У него один публичный IP-адрес, который видит весь интернет. А внутри квартиры телефон, ноутбук, телевизор и приставка получают свои локальные адреса вроде 192.168.0.5 — они работают только дома.
Когда твой телефон лезет в интернет, роутер подменяет его локальный адрес на свой публичный, запоминает, кто именно отправил запрос, и, когда приходит ответ, доставляет его нужному устройству. Так десятки гаджетов делят один-единственный внешний адрес. Благодаря NAT человечество растянуло запас IPv4 на много лет — но это всё равно костыль, а не решение.
Настоящее решение: IPv6
Чтобы покончить с дефицитом раз и навсегда, придумали новую версию протокола — IPv6. Вместо 32 бит в ней 128 бит, и записывается такой адрес уже не цифрами через точки, а группами символов через двоеточия, например: 2001:0db8:85a3::8a2e:0370:7334.
А теперь держись за стул. Сколько адресов даёт 128 бит? Около 340 ундециллионов — это число с 38 нулями. Если попытаться представить масштаб: адресов в IPv6 хватило бы, чтобы выдать персональный IP каждой песчинке на всех пляжах Земли, и ещё осталось бы с гигантским запасом. О том, что они когда-нибудь кончатся, можно не беспокоиться.
Переход на IPv6 идёт постепенно: старое оборудование и сайты должны научиться его понимать, и это занимает годы. Поэтому сегодня интернет живёт сразу в двух мирах — старый IPv4 с хитростью NAT и новый просторный IPv6 — и они спокойно работают бок о бок.
Что в итоге
IP-адрес — это координата устройства в сети, без которой данные просто не нашли бы дорогу. Старого формата IPv4 с его 4,3 миллиарда адресов перестало хватать, когда интернет оказался у каждого в кармане и даже в холодильнике. Спасает фокус с NAT, который прячет десятки устройств за одним адресом, а настоящее будущее — за IPv6 с практически бесконечным запасом номеров.
Так что в следующий раз, когда страница откроется за долю секунды, вспомни: где-то невидимый "секретарь"-роутер только что подменил адрес, нашёл по имени сервер и доставил ответ ровно тебе. Маленькая магия чисел, на которой держится весь интернет.