IP-адреса

Как упоминалось в предыдущей главе, адреса, используемые в соответствии с IP, представляют собой 32-битные числа. Каждой машине в данной сети должен быть назначен уникальный адрес.

В локальной сети, которая не использует TCP/IP для связи с другими сетями, вы можете назначить эти номера согласно своим предпочтениям. Однако для участков интернета номера назначаются NIC.

Для удобства чтения IP-адреса разбивают на четыре 8-битных числа, называемых октетами. Например, quark.physics.groucho.edu имеет IP-адрес 0x954C0C04, который записывается как 149.76.12.4. Этот формат часто называется "dotted quad notation".

Еще одна причина такой записи заключается в том, что IP-адреса разделяются на номер сети, который записан в первых октетах, и номер хоста, который является остальной частью. Обращаясь к NIC за адресами, вы получаете не адрес для каждого отдельного хоста, а сетевой номер, что позволяет назначать любые IP-адреса из соответствующего диапазона.

В зависимости от размера сети, часть хоста может быть меньше или больше. Существуют различные классы сетей, определяющие разное разделение IP-адресов. Класс A включает сети от 1.0.0.0 до 127.0.0.0. Сетевой номер содержится в первом октете, что предусматривает 24-разрядную часть хоста, сеть примерно из 1.6 миллиона хостов. Класс B содержит сети от 128.0.0.0 до 191.255.0.0; сетевой номер находится в первых двух октетах. Это предполагает 16320 сетей с 65024 хостами каждая.

Класс C охватывает сети от 192.0.0.0 до 223.255.255.0, с сетевым номером, содержащимся в первых трех октетах. Это предполагает почти 2 миллиона сетей по 254 хоста в каждой.

Классы D, E и F, с адресами в диапазоне от 224.0.0.0 до 254.0.0.0, являются экспериментальными или зарезервированы для будущего использования и не определяют конкретную сеть.

Возвращаясь к примеру из предыдущей главы, адрес 149.76.12.4, принадлежащий quark, относится к хосту 12.4 в сети 149.76.0.0 класса B.

Вы могли заметить, что в вышеупомянутом списке для каждого октета в части хоста не все значения возможны. Это связано с тем, что адреса хостов со всеми октетами равными 0 или 255 зарезервированы для специальных целей. Адрес, в котором все биты части хоста равны нулю, относится ко всей сети, а адрес, где все биты равны 1, называется широковещательным адресом. Он относится ко всем хостам в указанной сети. Так, 149.76.255.255 - это не адрес реального хоста, он относится ко всем хостам сети 149.76.0.0.

Есть также два специальных адреса: 0.0.0.0, называемый маршрутом по умолчанию, и 127.0.0.0, который является кольцевым адресом. Маршрут по умолчанию используется при маршрутизации IP-дейтаграмм, которые мы рассмотрим ниже.

Сеть 127.0.0.0 зарезервирована для работы IP внутри хоста. Обычно адрес 127.0.0.1 назначается специальному интерфейсу на вашем хосте, называемому интерфейсом обратной связи (loopback). Любой IP-пакет, переданный ему от TCP или UDP, будет возвращен обратно, как если бы он только что прибыл из какой-то сети. Это позволяет тестировать сетевое программное обеспечение без использования "реальной" сети. Также это полезно, когда вы хотите использовать сетевое программное обеспечение на автономном хосте. Например, многие участки UUCP не имеют IP-связи вообще, но все же хотят управлять системой новостей INN. Однако для корректной работы под Linux, INN требует наличия интерфейса loopback.

Этот интерфейс loopback играет важную роль в сетевой диагностике. С его помощью можно проверять работу сетевого стека на локальной машине без взаимодействия с внешним миром. Если вы можете пинговать 127.0.0.1, это значит, что ваш сетевой стек корректно функционирует на вашем компьютере.

Также стоит упомянуть, что диапазон адресов 127.0.0.0/8 (то есть от 127.0.0.1 до 127.255.255.255) полностью зарезервирован для loopback-адресов. Но, как правило, используется только 127.0.0.1.

Для тех, кто работает с сетевыми настройками или диагностикой сети, понимание принципов работы IP-адресации, классов сетей и особенностей зарезервированных адресов является ключевым. Это помогает в правильной настройке сетевых устройств, маршрутизации и решении проблем с сетью.

IP-адресация - это фундаментальный аспект сетевого взаимодействия. Благодаря ей устройства в интернете могут взаимодействовать друг с другом, передавая информацию точно и быстро. По мере развития технологий и увеличения числа подключенных устройств к сети, понимание принципов IP-адресации становится еще более важным для специалистов в области IT.