IP – адресация
В сетях, использующих стек протоколов TCP/IP, связь между хостами и серверами достаточно прозрачна. Причиной этого факта является то, что каждый узел имеет как минимум один уникальный 32-разрядный IP-адрес. Маршрутизатор считывает адрес назначения из IP-пакета и, в зависимости от этого адреса, решает, куда направлять этот пакет.
Все хосты сети должны иметь собственные уникальные адреса. IP-адрес представляет собой четыре десятичных числа (в диапазоне от 0 до 255), разделенных точкой. Этот адрес также может быть представлен в двоичном или шестнадцатеричном виде. Примером правильного IP-адреса может быть такой: 172.16.121.1.
Каждый IP-адрес однозначно определяет хост сети. Часть IP-адреса определяет собственно сеть, а часть - конкретный узел сети.
Каждая часть адреса представляется в двоичном виде как октет, т.е. группа из восьми разрядов. Минимальное значение, которое может иметь октет, равно восьми двоичным нулям, что эквивалентно десятичному нулю. Максимальное значение октета равно восьми двоичным единицам, что эквивалентно десятичному числу 255.
Схема IP-адресации (распределения адресов между узлами сети) является ядром процесса маршрутизации IP-пакетов в межсетевых соединениях.
172. | 16. | 122. | |
Сеть | Подсеть | Узел | |
Адрес хоста |
Рисунок 6.1
Компонента IP-адреса, обозначающая адрес сети, должна быть одинакова у всех компьютеров данной сети, и должна отличаться от такой компоненты у компьютеров других сетей. Компонента IP-адреса, обозначающая узел, должна быть уникальна внутри одной подсети, однако может совпадать с такой же компонентой узла, установленного в другой подсети.
Например, предположим, что сеть имеет адрес 172.16. Предположим также, что администратор этой сети дал некоторому узлу номер 122.204. Тогда полный адрес этого хоста будет 172.16.122.204. Этот адрес уникален в глобальной сети, т.к. только одна сеть может иметь адрес 172.16, и только один узел данной сети может иметь адрес 122.204.
Существует пять классов IP-адресов. Эти классы обозначаются буквами A, B, C, D и E. Самые старшие биты адреса определяют класс сети. Класс адреса определяет, какая часть IP-адреса является адресом сети, а какая часть - адрес узла. Чтобы определить класс сетевого адреса, маршрутизаторы проверяют старшие биты первого октета IP-адреса. Это называется правилом первого октета.
Таблица 6.1
Класс IP-адреса | 1 байт 0 1 2 3 4..7 | 2 байт 8… 15 | 3 байт 16... 23 | 4 байт 24… 31 | Число сетей | Число узлов | Размер сети |
A | 0 Сеть(w) | Узел (xyz) | большая | ||||
B | 1 0 Сеть (wx) | Узел (yz) | средняя | ||||
C | 1 1 0 Сеть (wxy) | Узел (z) | малая | ||||
D | 1 1 1 0 | Групповой адрес | |||||
E | 1 1 1 1 0 | Резерв |
В сетевых адресах класса A (также известных как /8) первый октет содержит всю сетевую компоненту адреса. Остальные три октета составляют адрес узла. Первый бит первого октета сетевого адреса класса A должен быть установлен в 0. Хотя этот октет может принимать 128 различных значений (27), сетевой адрес класса A, равный 00000000 не разрешен. Таким образом, существует только 127 адресов класса A. В дальнейшем это количество было уменьшено до 126, т.к. адрес 127.0.0.0 был зарезервирован с целью обращения хостов к самим себе (loopback calls). Оставшиеся три октета адреса класса A зарезервированы под адрес узла. Однако адреса узлов 00000000.00000000.00000000 (0.0.0) и 11111111.11111111.11111111 (255.255.255) запрещены в сетях любого класса. Поэтому каждая сеть класса A может содержать 16777214 узлов (2 в степени 24 и минус 2). Сетевые адреса класса А предоставляются только очень большим сетям. В настоящее время адреса класса А уже полностью распределены и свободных нет.
Сетевые адреса класса B (также известные как /16) в качестве сетевой компоненты используют два первых октета IP-адреса. Первые два бита сетевого адреса класса B всегда установлены в 10. Из шести оставшихся битов первого октета и восьми бит второго октета можно образовать 16384 сетевых адреса класса B (2 в степени 14).
Значение первого октета адреса класса B должно лежать между 128 и 191, или в двоичной форме - между 10000000 и 10111111. Оставшиеся два октета адреса класса B позволяют каждой сети этого класса содержать до 65534 узлов.
В сетевых адресах класса С (также известных как /24) первые три октета отведены под адрес сети. Первые три бита старшего октета адреса должны быть установлены в 110. Т.е. значение старшего октета сетевого адреса класса С должно лежать в диапазоне 192 - 223 (в десятичном виде), или в диапазоне 11000000 - 11011111 (в двоичном). Таким образом, из пяти оставшихся бит первого октета, а также полных второго и третьего октета можно определить 2097152 сетевых адреса класса С.
Адрес узла в сети класса С определяет последний октет IP-адреса. Т.е. сеть класса С может содержать до 254 узлов.
В дополнение к адресам, присвоенным сетям классов A, B и C, существуют несколько специальных адресов, не принадлежащих ни одной сети. Эти адреса сведены в классы D и E. Не существует сетей таких классов, есть только адреса классов D и E.
Значение первого октета адреса класса D находятся в диапазоне от 224 до 239. Первые четыре бита старшего октета всегда равны 1110. Адреса класса D используются для передачи так называемых групповых сообщений (multicast packets), т.е. сообщений, посылаемых не конкретному узлу, а нескольким одновременно. Многие протоколы используют такие сообщения. Примером такого протокола может быть протокол передачи управляющих сообщений ICMP (Internet Control Message Protocol). Любой хост, желая определить адреса маршрутизаторов, подключенных к его локальному сегменту, посылает сообщение, направляя его на адрес 224.0.0.2. Маршрутизаторы, получив такое сообщение, отправляют ответ на этот запрос, сообщая свой нормальный IP-адрес.
Адреса в диапазоне от 240.0.0.0 до 255.255.255.255 принадлежат классу E. Первые четыре бита адресов этого класса установлены в 1111. Эти адреса зарезервированы для внесения дальнейших усовершенствований в схему IP-адресации.
У маршрутизатора есть интерфейсы к каждой подсети, к которой он подключен. Все сетевые интерфейсы маршрутизатора должны быть сконфигурированы с ненулевыми IP-адресами и масками подсети. Узлы некоторой подсети, подключенной к маршрутизатору, должны посылать сообщения на IP-адрес интерфейса маршрутизатора, установленного для данной подсети.
Например, пусть есть подсеть Ethernet0, для которой интерфейс маршрутизатора сконфигурирован с адресом 172.16.2.1. Этот адрес является адресом маршрутизатора для любого узла, посылающего данные из сети 172.16.0.0. Этот интерфейс будет перенаправлять данные либо в сеть 172.16.0.0, либо из нее. И пусть есть подсеть Ethernet1, для которой интерфейс маршрутизатора сконфигурирован с адресом 10.6.24.2.
В некоторых случаях сетевые интерфейсы маршрутизаторов могут иметь несколько IP-адресов. Предположим, вы хотите добавить еще одну подсеть. В этом случае вы должны некоторому интерфейсу маршрутизатора присвоить еще один IP-адрес (такой адрес называется вторичным адресом - secondary address). Таким образом вы добьетесь увеличения числа IP-адресов. Связь между двумя подсетями осуществляется через маршрутизатор, даже если эти подсети совместно используют один и тот же провод.
IP-адреса с нулевой компонентой узла (например, для сети класса B - 172.16.0.0) называется базовым адресом сети. Такой адрес с неопределенной компонентой узла использовался в ранних реализациях TCP/IP для передачи широковещательных сообщений (broadcast messages).
Сетевой адрес, состоящий из одних единиц (или в десятичном виде - 255.255.255.255) относится ко всем сетям и всем хостам. Этот адрес зарезервирован в TCP/IP для посылки сообщений всей сети одновременно. Адрес маршрутизатора по умолчанию содержит все нули (0.0.0.0).
Для увеличения числа IP – адресов, принят протокол IpV6, в котором существенно расширена длина адреса до 128 бит. В этом протоколе используется три следующих вида адресов: индивидуальные, адреса набора интерфейса (anycast), которые соответстуют уже группе рабочих станций, имеющие одинаковые адресный префикс, т.е. находящиеся в одной сети и групповые. В IpV6 нет широковещятельных адресов, поэтому допускается использование в адресе всех нулей и всех единиц, если заранее не сделано исключение. Индивидуальный адрес отличается от группового значением старшего октета. Значение FFH идентифицирует групповой адрес.
Существуют три стандартные формы для представления IpV6 адресов в виде текстовых строк.
1. Основная формаимеет вид х:х:х:х:х:х:х:х, где "х" шестнадцате-ричные 16-битовые числа. При этом разрешается не писать начальные нули в каждом из конкретных полей, но в каждом поле должна быть, по крайней мере, одна цифра (за исключением случая, описанного в пункте 2).
Например: caf4:defc:ba98:4758:fbdc:632f:4d7e:f3c2 или
2175:0:0:0:6:400:df0C:851b.
2.Специальная формапринята по причине того, что при записи некоторых типов IPv6 адресов, они часто содержат длинные последовательности нулевых бит. Для того чтобы сделать запись адресов, содержащих нулевые биты, более удобной, имеется специальный синтаксис для удаления лишних нулей. Применение записи вида "::" указывает на наличие групп из 16 нулевых битов. Комбинация "::" может появляться только при записи адреса. Последовательность "::" разрешается также использовать для удаления из записи начальных или завершающих нулей в адресе. Например: вместо последовательности ff0l:0:0:0:0:0:0:43 можно применять ff0l::43.
3.Альтернативная формазаписи, которая более удобна при работе с IPv4 и IPv6; она имеет вид x:x:x:x:x:x:d.d.d.d, где V шестнадцатиричные 16-битовые коды адреса, a d десятичные 8-битовые, составляющие младшую часть адреса (стандартное IPv4 представление). Например: 0:0:0:0:0:0:172.3.47.12 или 0:0:0:0:0:facd:64.137.35.44.
Таблицы маршрутизации содержат правила преобразования адресов сетей, включая адреса подсетей, если они есть. Эти таблицы обычно не содержат информацию об адресах хостов. Однако, они содержат физические (аппаратные) адреса для пересылки пакетов определенным хостам сети. Эти физические адреса получаются с помощью протокола ARP.
Часто данные через Интернет пересылают, основываясь на имени человека или названии организации. Для пользователей сети более удобным является присвоение названий определенным IP-адресам. Например, IP-адресу 172.16.121.1 может быть присвоено название компании.
Типичный адрес класса B состоит из адреса сети и адреса узла. Адресом сети являются первые два октета IP-адреса (172.16). Третий и четвертый октеты определяют адрес узла (121.1). Если определена подсеть, то ее адрес занимает часть адресного пространства узла.
Если вместо IP-адресов используются имена, то перед передачей данных эти имена должны быть преобразованы в соответствующие IP-адреса (например, имя company.com должно быть преобразовано в 172.16.121.1). Компания с сетью класса B имеет IP-адрес, первые два октета которого представляют собой адрес сети.
Большинство приложений могут использовать как имя хоста, так и его IP-адрес. Например, обе команды telnet 172.16.121.1 и telnet company.com установят удаленную терминальную сессию с требуемым хостом.
Хотя использование имен хостов вместо их IP-адресов существенно упрощает жизнь пользователям, они создают проблемы маршрутизаторам, которые оперируют только IP-адресами. Поэтому когда пользователь указывает имя хоста, это имя нужно преобразовать в соответствующий ему IP-адрес.
Наиболее часто используются следующие три метода преобразования IP-адресов:
· таблицы хостов и таблицы сетей;
· система доменных имен (Domain Name System - DNS);
· служба сетевой информации (Network Information Service - NIS).
Таблица хостов представляет собой файл в кодировке ASCII, содержащий список имен удаленных хостов, известных локальному компьютеру. Каждое имя хранится с соответствующим ему IP-адресом. Например:
172.16.4.2 ta tahiti ta.novell.com
172.16.4.2 osd-frog
Таблицы хостов обычно хранят IP-адреса наиболее часто используемых хостов, но использование таких таблиц неудобно в глобальных сетях, таких как Internet.
Таблица сетей подобна таблице хостов. Только в ней вместо имен хостов хранятся имена, адреса и названия известных сетей.
IP-адреса в таблице хостов всегда имеют четыре числа для однозначной идентификации сети и узла. Таблицы сетей не содержат адреса отдельных хостов, поэтому IP-адреса, входящие в эти таблицы, состоят либо из одного, либо из двух чисел (в зависимости от класса сети).
К Интернет подключено слишком много компьютеров, чтобы поместить их в одну таблицу хостов. Поэтому вместо нее в Интернет для преобразования имен серверов в IP-адреса широко используется так называемая служба доменных имен (DNS). Эта служба разделяет Internet на домены, которые упорядочиваются иерархически, начиная с корневого домена.
Каждый домен должен иметь сервер имен - компьютер, который будет преобразовывать имена внутри домена. Сервера имен ведут базы данных адресов хостов, подключенных к этому домену. DNS-сервер может получить любой IP-адрес в Интернет с помощью посылки запроса другим DNS-серверам.
Дата добавления: 2015-02-16; просмотров: 1856;