Адресация хостов, сетей и подсетей с использованием IP

Севастопольский национальный университет

Ядерной энергии и промышленности

Практическое занятие № 5

Время: 4 часов Место проведения: компьютерный класс

Тема: Изучение протокола IP и технологии маршрутизации

ЦЕЛЬ: Изучить технологию маршрутизации и принцип работы системного программного обеспечения на сетевом уровня модели взаимодействия открытых систем.

План практического занятия:

1. Теоретическая часть

1.1. Адресация хостов, сетей и подсетей с использованием IP

1.2. Маршрутизация IP-дейтаграмм

1.3. Формат заголовка IP-пакета

2. Практическая часть

В результате проведения практического занятия студенты должны

Знать:

­– теорию о маршрутизаторах, уровнях сетевой модели;

– принцип работы сетевого уровня модели OSI.

г. Севастополь


Теоретическая часть

Адресация хостов, сетей и подсетей с использованием IP

Протокол Интернета (Internet Protocol – IP), описываемый стандартом RFC 791 (RFC – Request For Comment – запрос комментариев – система стандартов протоколов Интернета), представляет собой системное программное обеспечение, работающее на сетевом уровне модели взаимодействия открытых систем (подразумевается 4-я версия протокола IP). Основное назначение IP передача пакетов (для IP они называются дейтаграммами – datagram) между рабочими станциями (для IP они называются хостами – host), находящимися в одной или разных IP-сетях или IP-подсетях (IP-network/IP-subnetwork). Для адресации отправителей и получателей дейтаграмм IP использует четырехбайтовый адрес, значение каждого байта которого записывается в десятичной системе в виде X.X.X.X, где Х=0-255. В отличие от МАС-адресации, не предусматривающей выделение группы МАС-адресов и назначение ей общего адреса, протоколы сетевого уровня выполняют такую группировку. Достигается это благодаря тому, что IP-адрес состоит из двух частей сетевой (старшие биты IP-адреса) и хостовой (младшие биты
IP-адреса). Например, в адресе 192.168.1. 1 можно выделить сетевую часть три старшие цифры 192.168.1 адреса и хостовую часть одну младшую цифру 1 адреса, этот адрес принадлежит IP-сети с диапазоном адресов 192.168.1. 0 - 192.168.1. 255. В качестве адреса всей сети используется первый из адресов этой сети, то есть 192.168.1.0 для приведенного примера, и он не может назначаться сетевым интерфейсам в качестве их адреса. В результате такого подхода становится возможной адресация групп компьютеров – сетей и подсетей, что позволяет с помощью маршрутизаторов (Router) – устройств, соединяющих сети/подсети в единую составную сеть (internetworking), реализовать технологию маршрутизации дейтаграмм между сетями/подсетями. Под маршрутизацией следует понимать определение маршрутизаторами оптимального пути передачи дейтаграммы по направлению к ее получателю на основе информации об адресах сетей/подсетей и пересылку дейтаграммы по этому пути. На рис. 3.1 приведен пример составной сети, состоящей из четырех IP-сетей, организованных на коммутаторах Ethernet, которые объединены с помощью двух маршрутизаторов (сеть между маршрутизаторами является пятой IP-сетью). Рядом с коммутаторами и возле связи между маршрутизаторами указаны IP-адреса сетей и так называемые маски подсети (Subnet Mask), позволяющие делить IP-сети на IP-подсети. В состав сетей входят не только сетевые интерфейсы хостов, подсоединенных к коммутатору, но и сетевой интерфейс маршрутизатора, через который он подключен к данной сети, на рис. 3.1 такие интерфейсы маршрутизаторов помечены стрелками. Эти интерфейсы маршрутизаторов называются шлюзами (Gateway), дейтаграммы проходят через шлюз только в случае, если они адресованы получателям, находящимся в другой сети/подсети (то есть в случае, когда IP-адреса сети/подсети отправителя и сети/подсети получателя различаются). IP-адрес шлюза указывается при конфигурировании сетевых интерфейсов всех хостов сети/подсети.

Кроме адресации интерфейсов хостов, сетей/подсетей и маршрутизации, IP может выполнять фрагментацию/дефрагментацию дейтаграмм при передаче их между сетями с различными максимально допустимыми значениями длины поля данных кадров канального уровня – так называемой максимальной единицы передачи (Maximum Transfer Unit, MTU). На практике фрагментация/дефрагментация может происходить, когда маршрутизатор объединяет сети с разной технологией канального уровня, например, при объединении сетей Ethernet и Token Ring. (Технология маркерного кольцаToken Ring разработки IBM характеризуется кольцевой топологией сети и детерминированным алгоритмом обработки кадров, для Token Ring характерно отличное от Ethernet значение MTU). При этом фрагментацию/дефрагментацию могут осуществлять как маршрутизаторы, так и хосты.

Рис. 3.1. Пример составной IP-сети

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

Поскольку размер адреса протокола IP 4-й версии составляет 4 байта=32 бита, то пространство адресов составляет 232»4,3 млрд. адресов. Из этого адресного пространства пользователям выделяются блоки смежных адресов – IP-сети (IP-подсети) и отдельные адреса. Выделение адресов координирует Международная организация Internet Assigned Numbers Authority (IANA) через пять организаций региональных интернет-регистраторов: African Network Information Centre (AfriNIC), American Registry for Internet Numbers (ARIN), Asia-Pacific Network Information Centre (APNIC), Latin American and Caribbean Internet Addresses Registry (LACNIC), Reseaux IP Europeens Network Coordination Centre (RIPE NCC) (рис. 3.2). Эти организации выделяют блоки IP-адресов локальным интернет-регистраторам (провайдерам услуг Интернет). Последние выделяют из своих блоков субблоки IP-адресов и отдельные IP-адреса конечным пользователям. Поскольку каждый из Региональных Интернет-провайдеров и Локальных Интернет-провайдеров обладает неперекрывающимися блоками IP-адресов, обеспечивается уникальность IP-адреса в глобальном масштабе.

Поскольку для разных пользователей существует потребность в сетях различного масштаба, в протоколе IP предусмотрена классификация IP-сетей. Предусмотрено пять классов IP-адресов: основные классы А, В, С и дополнительные классы D и Е. Идентификация класса сети, к которому принадлежит IP-адрес, выполняется по старшему байту адреса (рис. 3.3), распределение адресного пространства IP v4 между провайдерами и организациями с датой их распределения можно увидеть по адресу http://www.iana.org/assignments/ipv4-address-space/ipv4-address-space.xml.

Рис. 3.2. Региональные Интернет-регистраторы

Класс 1 байт 2 байт 3 байт 4 байт 1 дес. число Примечание
A   № сети № хоста 0 – 127 128 сетей по 16 777 216 адресов
B     № сети № хоста 128 – 191 16,384 сетей по 65,536 адресов
C       № сети № хоста 192 – 223 2,097,152 сетей по 256 адресов
D           224 – 239 Multicast
E             220 – 247 резерв
                     

Рис. 3.3. Классы IP-адресов

Класс А определяет самые крупные сети, 2, 3 и 4 байт IP-адреса этого класса содержат адрес хоста в сети (максимальное количество адресов в такой сети равно 224» 16,8 млн). Сети класса А принадлежат региональным интернет-провайдерам, крупным компаниям и организациям (в основном американским, что связано с историей развития Интернета, именно их распределение указано в ipv4-address-space.xml по приведенному выше адресу). Признаком IP-адреса класса А является равный нулю старший бит старшего байта адреса, семь младших бит определяют адрес сети. Таким образом, десятичное значение старшего байта IP-адреса класса А лежит в диапазоне от 0 до 127 (максимальное количество сетей класса А равно 128).

Класс B определяет средние по масштабу сети, 3 и 4 байт IP-адреса этого класса содержат адрес хоста в сети (максимальное количество адресов в такой сети равно 216»65,6 тыс.). Сети класса В принадлежат в основном локальным интернет-провайдерам (провайдерам услуг Интернета) и крупным компаниям и организациям. Признаком IP-адреса класса B являются биты 10 в старших разрядах старшего байта адреса, шесть младших бит старшего байта (первого) и все биты второго байта определяют адрес сети. Таким образом, десятичное значение старшего байта IP-адреса класса B лежит в диапазоне от 128 до 191 (максимальное количество сетей класса В равно 214»16,4 тыс.).

Класс C определяет сети минимального масштаба, только 4 байт (младший) IP-адреса этого класса содержит адрес хоста в сети (максимальное количество адресов в такой сети равно 28 » 256 адресов). Сети класса С принадлежат в основном провайдерам услуг Интернета, различным компаниям и организациям. Признаком IP-адреса класса C являются биты 110 в старших разрядах старшего байта адреса, пять младших бит старшего байта (первого), все биты второго байта и все биты третьего байта определяют адрес сети. Таким образом, десятичное значение старшего байта IP-адреса класса С лежит в диапазоне от 192 до 223 (максимальное количество сетей класса С равно 222» 2,1 млн.).

Существует возможность выяснить, кто является владельцем сети, в которую входит произвольный IP-адрес, а также координаты администратора этой сети, выполнив запрос к базе данных регионального или локального регистратора. Для европейских адресов это можно сделать на сайте RIPE NCC http://www.db.ripe.net/whois (рис. 3.4).

Рис. 3.4. Пример поиска информации о блоке IP-сетей,

в который входит запрашиваемый IP-адрес

Класс D служит для обозначения групп IP-адресов, представляющих собой так называемые мультикастовые группы (Multicast Group), использующиеся технологией рассылки одного и того же потока дейтаграмм нескольким получателям одновременно. При этом вплоть до шлюза сети получателя этот поток не дублируется, а в качестве IP-адреса получателя в дейтаграммах указывается адрес мультикастовой группы. Признаком IP-адреса класса D являются биты 1110 в старших разрядах старшего байта адреса, четыре младших бит старшего байта (первого) и все биты второго, третьего и четвертого байтов определяют адрес мультикастовой группы. Таким образом, десятичное значение старшего байта IP-адреса класса D лежит в диапазоне от 224 до 239 (максимальное количество мульткастовых групп равно 228» 268 млн.).

Класс E характеризуется адресом, старшие биты старшего байта которого равны 11110, десятичное значение старшего байта IP-адреса класса E лежит в диапазоне от 240 до 247, адреса этого класса зарезервированы для будущих применений.

Оставшиеся адреса с десятичным значением старшего байта от 248 до 255 также зарезервированы.

В адресном пространстве IP v4 также зарезервированы следующие адреса под специальные нужды:

– 0.0.0.0 – адрес хоста, сгенерировавшего пакет (используется только в некоторых сообщениях протокола управляющих сообщений Интернета – ICMP);

– 255.255.255.255 – пакет с таким IP-адресом получателя рассылается всем хостам, находящимся в той же сети, что и отправитель этого пакета – ограниченное широковещательное сообщение (Limited Broadcast);

– в поле номера сети IP-адреса получателя все биты равны нулю – хост-получатель принадлежит той же сети, что и хост-отправитель (например, 0.0.0.Х, Х=1-224);

– в поле номера хоста IP-адреса получателя все биты равны нулю – такой адрес является адресом сети с заданным в поле номера сети адресом (например, Х.Х.Х.0, Х=1-224);

– в поле номера хоста IP-адреса получателя все биты равны единице – пакет рассылается всем хостам сети с заданным в поле номера сети адресом – широковещательное сообщение (например, Х.Х.Х.255, Х=1-224);

– старший байт IP-адреса = 127 – кольцевой адрес (Loopback Address) – петля (обычно используется адрес 127.0.0.1) – используется для тестирования программ и взаимодействия процессов в пределах одного хоста;

– блоки адресов, зарезервированные для локальных сетей (без выхода в Интернет или использующих сетевую трансляцию адресов) – одна сеть класса А 10.0.0.0-10.255.255.255, 16 сетей класса В 172.16.0.0-172.31.255.255, 256 сетей класса С 192.168.0.0 - 192.168.255.255.

Любой маршрутизатор, работающий в Интернет, не будет передавать пакеты с адресами из диапазонов адресов для локальных сетей. В то же время такие адреса удобны, поскольку они могут присваиваться хостам локальных сетей их администраторами без согласования с провайдерами услуг Интернет. Для выхода в Интернет с этих адресов используется технология сетевой трансляции адресов (Network Address TranslationNAT), подменяющая локальный IP-адрес отправителя на разрешенный для передачи в Интернет адрес, полученный от провайдера. Таким образом, достигается существенная экономия адресов (и средств, оплачиваемых провайдерам за их аренду), однако все хосты с локальными адресами в Интернете видны как один хост с разрешенным для работы в Интернете адресом, что не позволяет размещать на внутренних хостах общедоступные для пользователей Интернета сервисы. Последнее обстоятельство одновременно является преимуществом с точки зрения безопасности: внутренние хосты с локальными адресами не видны из Интернета.

Недостатком выделения IP-адресов по классовой схеме является невозможность экономного выделения групп IP-адресов. Действительно, если в небольшой компании всего несколько компьютеров (например, 6), то она вынуждена арендовать сеть класса С как сеть минимально возможного масштаба. Однако при этом, даже, если компания увеличит парк компьютеров вдвое, более 240 адресов (с учетом зарезервированных под специальные нужды) останутся неиспользованными. Поэтому в настоящее время классовая схема адресации вытеснена бесклассовой схемой, согласно которой выделение блоков IP-адресов (так называемых IP-подсетей (IPsubnetwork)) основано на использовании маски подсети (Subnet Mask).

Маска подсети – это двоичное число с количеством разрядов, равным количеству разрядов IP-адреса, используемое вместе с IP-адресом. Маска содержит единицы в тех разрядах IP-адреса, которые должны интерпретироваться как номер подсети. Поскольку номер подсети является цельной частью адреса, единицы в маске также должны представлять непрерывную последовательность битов в старшей части адреса. Непрерывная последовательность нулей в младшей части адреса определяет количество битов, используемых для нумерации хостов в подсети. Таким образом, количество адресов в IP-подсети N=2m, где m – количество нулевых битов в маске подсети (заметим, что речь идет именно об IP-адресах, включающих и специальные адреса, а не только об адресах хостов).

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

маршрутов к подсетям на внешних маршрутизаторах.

На рис. 3.5 приведены возможные маски подсети для сети класса С и количество доступных адресов в подсети для каждой из них. Количество адресов для нумерации хостов на два меньше, поскольку первый адрес – это адрес самой подсети, а последний адрес – широковещательный адрес этой подсети. Кроме того, один из доступных адресов хостов (часто первый или последний) обычно назначают интерфейсу маршрутизаторашлюза, соединяющего данную подсеть с другими сетями.

Маска (дес) Маска (двоичн) Хостов Подсетей Примечание
255.255.255.255 11111111.11111111.11111111.11111111 все нет  
255.0.0.0 11111111.00000000.00000000.00000000     Класс A
255.255.0.0 11111111.11111111.00000000.00000000     Класс B
255.255.255.0 11111111.11111111.11111111.00000000     Класс C
Деление на подсети с количеством хостов менее 254
255.255.255.254 11111111.11111111.11111111.11111110 0 (2 адреса)   не имеют смысла
255.255.255.252 11111111.11111111.11111111.11111100 2 (4 адреса)    
255.255.255.248 11111111.11111111.11111111.11111000 6 (8 адр.)    
255.255.255.240 11111111.11111111.11111111.11110000 14 (16 адр.)    
255.255.255.224 11111111.11111111.11111111.11100000 30 (32 адр.)    
255.255.255.192 11111111.11111111.11111111.11000000 62 (64 адр.)    
255.255.255.128 11111111.11111111.11111111.10000000 126 (128 адр.)    

Рис. 3.5. Маскирование IP-адресов

С использованием технологии создания подсетей для небольшой компании с 6 компьютерами вместо 256 адресов сети класса С с помощью маски подсети 255.255.255.240 могут быть выделены 16 адресов, из которых для нумерации хостов и шлюза останутся 14. Отметим, что использование 255.255.255.248 маски обеспечит только 6 адресов, которых хватит на нумерацию хостов, но IP-адреса для шлюза этой сети уже не хватит.

На рис. 3.6 приведен пример планирования подсетей для четырех подразделений организации, в которых находится 77, 50, 29 и 15 компьютеров, соответственно.

Для каждой подсети приведены ее адрес, маска подсети, широковещательный адрес, адрес, зарезервированный для шлюза, диапазон адресов хостов и диапазон резервных адресов (для будущих подключений). Этот пример иллюстрирует гибкость выделения адресов с помощью масок подсети в пределах одной сети класса С.

Рис. 3.6. Пример планирования IP-адресов для четырех подсетей

Механизм масок широко используется в технологии IP-маршрутизации. При получении маршрутизатором IP пакета из IP-адреса получателя определяется адрес подсети назначения путем логического умножения (операция AND) IP-адреса получателя на маску подсети, например:

192.168.3.5 AND 255.255.255.240 =  
11000000 10101000 00000011 00000101  
AND 11111111 11111111 11111111 11110000  
= 11000000 10101000 00000011 00000000 = 192.168.3.0
     

Полученный номер подсети используется для нахождения маршрута (т.е. адреса следующего маршрутизатора по пути к хосту-получателю) с помощью таблицы маршрутизации маршрутизатора.

При планировании подсетей адресное пространство каждой следующей смежной подсети не может быть больше адресного пространства предыдущей. Пример неправильного планирования подсетей приведен на рис. 3.7: вначале выделены адреса для подсети с меньшим числом компьютеров (подсеть из 8 адресов 192.168.1.0 - 192.168.1.7, маска 255.255.255. 248), а затем – для смежной с ней большей подсети (подсеть из 16 адресов 192.168.1.8-192.168.1.23, маска 255.255.255. 240).

Рис. 3.7. Пример неправильного планирования

IP-адресного пространства с помощью масок

При логическом умножении IP-адресов из диапазона 192.168.1.9 - 192.168.1.15 большей подсети на маску этой подсети получается то же значение IP-адреса подсети (192.168.1.0), что и для первой меньшей подсети (192.168.1.0). А при логическом умножении IP-адресов из диапазона 192.168.1.16 - 192.168.1.23 большей подсети на маску этой подсети получается значение IP-адреса несуществующей подсети (192.168.1.16). Такое планирование приведет к неправильной маршрутизации пакетов, при которой пакеты, предназначенные первой половине компьютеров второй подсети, будут маршрутизироваться в первую подсеть (192.168.1.0), а пакеты, предназначенные второй половине компьютеров второй подсети, будут маршрутизироваться в несуществующую подсеть (с адресом 192.168.1.16) – фактически они будут направляться компьютеру с таким адресом.

Для правильного планирования подсетей в приведенном примере (рис. 3.8) необходимо выделение 16-адресной подсети спланировать на границе 16-адресного блока, например, выделить ей блок 192.168.1.16 - 192.168.1.31.

Оставшийся незанятым блок адресов 192.168.1.8 - 192.168.1.15 можно выделить третьей подсети с таким количеством хостов или оставить пустым. Результат умножения любого из адресов подсети на маску приводит к получению для всех адресов всех подсетей IP-адреса данной подсети. Маршрутизация будет работать правильно. Фактически, при планировании подсетей количеством адресов предыдущей подсети задаются границы следующей смежной подсети, которые не должны пересекаться адресным полем следующей подсети. Для того, чтобы избежать ошибочного планирования, рекомендуется в начале адресного пространства размещать более крупные подсети, а затем более мелкие по мере уменьшения необходимого им количества адресов.

Рис. 3.8. Пример правильного планирования

IP-адресного пространства с помощью масок

Механизм масок в настоящее время используется не только для разбиения классовых сетей на подсети, но и для выделения сетей произвольного размера с помощью маски с любым необходимым количеством нулевых битов, определяющих размер сети, в любом месте адресного пространства. Такая технология получила название бесклассовой междоменной маршрутизации (Classless InterDomain Routing – CIDR), она позволяет гибко распределять адресное пространство и упрощать маршрутизацию. Технология CIDR предлагает описывать маску подсети добавленным к адресу сети суффиксом, в котором указано количество единичных битов маски. Например, запись 192.168.0.0/22 определяет так называемую суперсеть с маской 11111111.11111111.11111100.00000000 = 255.255.252.0 с диапазоном адресов 192.168.3.0 - 192.168.3.255, эквивалентную четырем смежным сетям класса С. Такая сеть может быть выделена на бесклассовой основе организации, которой необходимо до 1024 адресов (вместо выделения сети класса В с 65536 адресами с использованием классов).


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: