Основы IP-адресации
Первым обязательным параметром в свойствах протокола TCP/IP любого компьютера является его IP-адрес. IP-адрес — это уникальная 32-разрядная последовательность двоичных цифр, с помощью которой компьютер однозначно идентифицируется в IP-сети. (Напомним, что на канальном уровне в роли таких же уникальных адресов компьютеров выступают MAC-адреса сетевых адаптеров, невозможность совпадения которых контролируется изготовителями на стадии производства.) Мы будем обсуждать наиболее распространенная версию 4 протокола IP, или IPv4. Однако уже создана следующая версия протокола IP версии 6 (IPv6), в которой IP-адрес представляется в виде 128-битной последовательности двоичных цифр. Эта версия протокола IP пока еще не получила широкого распространения, хотя и поддерживается многими современными маршрутизаторами и операционными системами (например, Windows XP или Windows Server 2003).
Для удобства работы с IP-адресами 32-разрядную последовательность обычно разделяют на 4 части по 8 битов (на октеты), каждый октет переводят в десятичное число и при записи разделяют эти числа точками. В таком виде (это представление называется «десятичные числа с точками», или, по-английски, «dotted-decimal notation») IP-адреса занимают гораздо меньше места и намного легче запоминаются. Чтобы быстро осуществлять подобное преобразование в уме (что сетевым администраторам требуется нередко, а калькулятор не всегда под рукой), полезно запомнить следующую таблицу. В ней приведены десятичные значения степеней числа 2 с показателем, равным порядковому номеру бита в октете (напомним нумерация битов производится справа налево и начинается с нуля):
Запомнив такую таблицу, несложно в уме преобразовывать октеты в десятичные числа и обратно. Десятичное число легко вычисляется как сумма цифр, соответствующих ненулевым битам в октете, например: 10101101 ® 128 · 1 + 64 · 0 + 32 · 1 + 16 · 0 + 8 · 1 + 4 · 1 + 2 · 0 + 1 · 1 = 173. Несколько сложнее перевести десятичное представление в двоичное, но при некоторой тренировке это также не представляет проблем. Например: 201 ® 128 · 1 + 64 · 1 + 32 · 0 + 16 · 0 + 8 · 1 + 4 · 0 + 2 · 0 + 1 · 1 = 11001001. Однако одного только IP-адреса компьютеру для работы в сети TCP/IP недостаточно. Вторым обязательным параметром, без которого протокол TCP/IP работать не будет, является маска подсети. Маска подсети — это 32-разрядное число, состоящее из идущих вначале единиц, а затем — нулей, например (в десятичном представлении) 255.255.255.0 или 255.255.240.0. Маска подсети играет исключительно важную роль в IP-адресации и маршрутизации. Чтобы понять значение этого параметра, вспомним, что сеть ARPANet строилась как набор соединенных друг с другом гетерогенных сетей. Для правильного взаимодействия в такой сложной сети каждый участник должен уметь определять, какие IP-адреса принадлежат его локальной сети, а какие удаленным сетям. Здесь и используется маска подсети, с помощью которой производится разделение любого IP-адреса на две части: идентификатор сети (Net ID) и идентификатор узла (Host ID). Такое разделение делается очень просто: там, где в маске подсети стоят единицы, находится идентификатор сети, а где стоят нули идентификатор узла. Например, в IP-адресе 192.168.5.200 при использовании маски подсети 255.255.255.0 идентификатором сети будет число 192.168.5.0, а идентификатором узла число 200. Стоит нам поменять маску подсети, скажем, на число 255.255.0.0, как и идентификатор узла, и идентификатор сети изменятся на 192.168.0.0 и 5.200, соответственно, и от этого, как мы дальше увидим, иначе будет вести себя компьютер при посылке IP-пакетов.
|