На программном уровне взаимодействие между участниками сети осуществляется через так называемые стеки протоколов. Самым распространенным стеком протоколов является TCP/IP, который используется как в локальных сетях, так и сети Internet.
Адресация машин, использующих стек TCP/IP осуществляется на базе IP-адресов.
IP-адрес (aй-пи адрес, Internet Protocol Address) — уникальный идентификатор (адрес) устройства, подключённого к локальной сети или интернету.
IP-адрес представляет собой 32-битовое (по версии IPv4) или 128-битовое (по версии IPv6) двоичное число. Удобной формой записи IP-адреса (IPv4) является запись в виде четырёх десятичных чисел (от 0 до 255), разделённых точками, например, 192.168.0.1. (или 128.10.2.30 — традиционная десятичная форма представления адреса, а 10000000 00001010 00000010 00011110 — двоичная форма представления этого же адреса).
IP-адреса представляют собой основной тип адресов, на основании которых сетевой уровень протокола IP передаёт пакеты между сетями. IP-адрес назначается либо статически (администратором), либо динамически (управляется некоторым выделенным сервером; чаще всего по протоколу DHCP) во время конфигурирования сетевых настроек.
IP-адрес состоит из двух частей: номера сети и номера узла. В случае изолированной сети её адрес может быть выбран администратором из специально зарезервированных для таких сетей блоков адресов (192.168.0.0/16, 172.16.0.0/12 или 10.0.0.0/8).
Номер сети может быть выбран администратором произвольно, либо назначен по рекомендации специального подразделения Internet (Internet Network Information Center, InterNIC), если сеть должна работать как составная часть Internet. Обычно поставщики услуг Internet получают диапазоны адресов у подразделений InterNIC, а затем распределяют их между своими абонентами.
Рассмотрим более подробно то, как интерпретируются IP-адреса.
IP-адреса: классы, подсети и узлы
Некоторое время назад Интернет было разделено на три основных класса сетей: класс А, класс В и класс С (классовая адресация). Сети класса А имели то свойство, что первый октет (восемь битов) IP-адреса определял собственно сеть, а оставшиеся биты использовались организацией, которая управляла сетью,для того, чтобы различать узлы сети. Большинство организаций, управляющих сетями класса А, разделяли их на подсети, добавляя к схеме адресации еще один уровень иерархии. В сетях класса В два первых октета использовались для определения сети, а оставшиеся два - для определения отдельных узлов, а в сетях класса С для определения сети отводилось три октета и лишь один для определения узлов (см. рис. 8).
К сожалению, эта система мелких, средних и крупных сетей не всегда была удобна. Многие организации были достаточно велики, чтобы выйти за пределы сети класса С, которая могла содержать максимум 254 узла, но недостаточно велики, чтобы занять целый класс В, сеть которого могла вместить 65534 узла. Но многие из этих организаций получили все-таки сети класса В в свое распоряжение. Как следствие, свободные сети класса В были занесены в красную книгу.
Для решения этой проблемы и создания сетей, которые имели бы соответствующий требованиям размер, была разработана бесклассовая междоменная маршрутизация (Classless Inter-Domain Routing, или CIDR (произносится как «сайдр»). Как видно из названия, CIDR избавляется от классов А, В и С. В системе CIDR для идентификации сети может использоваться не фиксированное число октетов (один, два или три), но любое число битов IP адреса. Так, к примеру, если организации нужно адресное пространство примерно в четыре раза большее, чем адресное пространство сети класса В, власть предержащие могут определить длину идентификатора сети в 14 битов, таким образом, оставляя 18 битов (в четыре раза больше узлов, чем в сети класса В) на используемое адресное пространство.
Совершенно естественно, что пришествие CIDR сделало «классовую» терминологию устаревшей, хотя она до сих пор довольно часто используется в разговорах. Итак, чтобы обозначить конкретную CIDR-сеть, следует указать конкретное значение старших битов, присваиваемое организации в записи через точку, а также число битов, определяющих сеть. Две части записи разделяются символом «слеш». 15/8 – прежняя сеть класса А, которая «начинается» с восьмибитной последовательности 00001111. Прежняя сеть класса В 128.32.0.0 теперь идентифицируется как 128.32/16. А сеть 192.168.0.128/25 состоит из 128 IP-адресов, начиная с адреса 192.168.0.128 и заканчивая адресом 192.168.0.255.
Маска подсети может задаваться аналогично записи IP-адреса. Например, запись 192.168.128.1/24 и эквивалентна маске подсети 255.255.255.0.
Формально выделение сети и номера узла на основе ip-адреса и маски сети осуществляется как:
NET = IP & MASK,
HOST = IP & (~MASK), где все компоненты 32-х битные числа, «&» – операция логического умножения, а «~» – инверсия бит.
Особые ip -адреса. К особым адресам относят:
· 127.0.0.0/8 – для компьютера обозначает «самого себя»
· Адреса, в которых номер узла обозначен числом, в битовой записи которого установлены все биты. Например, 192.168.192.255/24
· Некоторые другие.