Порядок назначения IP адресов
Лабораторная работа 1
ПРИНЦИПЫ АДРЕСАЦИИ КОМПЬЮТЕРОВ В СЕТИ TCP/IP
ЦЕЛЬ РАБОТЫ
Изучение принципов адресации сетевых интерфейсов компьютеров глобальной сети Интернет. Приобретение навыков адресации сетевых интерфейсов компьютера по протоколам канального и сетевого уровней;
Теоретическая часть
IP адрес состоит из двух логических частей - номера сети и номера узла в сети.
Для того чтобы более рационально определиться с величиной сети, и при том разграничить, какая часть IP-адреса относится к номеру сети, а какая - к номеру узла условились использовать систему классов. Система классов использует значения первых бит адреса. Таким образом, достаточно легко выяснить к какому классу относится IP-адрес.
Классы IP-адресов
- Если адрес начинается с 0, то сеть относят к классу А.
Номер сети класса А занимает один байт, остальные 3 байта отводятся для номеров узла в этой сети.
Таким образом, сети класса А имеют номера в диапазоне от 1 до 126. (Номер 0 не используется, а номер 127 зарезервирован для специальных целей, о чем будет сказано ниже.)
Поэтому самих сетей класса А может быть немного, но зато количество узлов в них может достигать 224, то есть - 16 777 216 узлов. Например, IP-адрес 102.56.187.5 обозначает сеть с номером 102 и хост с номером 56.187.5.
- Если первые два бита адреса равны 10, то сеть относится к классу В (то есть, если первый октет IP-адреса находится в диапазоне от 128 до 191).
В сетях класса В и под номер сети и под номер узла одинаково отводится по 16 бит, то есть по 2 байта. Например, IP-адрес 154.2.91.240 обозначает сеть с номером 154.2 и хост с номером 91.240.
Таким образом, сеть класса В является сетью средних размеров с максимальным числом узлов 216, что составляет 65 536 узлов.
- Если адрес начинается с последовательности 110, то это сеть класса С (то есть, если значение первого октета в IP-адресе находится в диапазоне от 192 до 223).
В этом случае под номер сети отводится 24 бита, а под номер узла - 8 бит.
Сети класса С имеют небольшое узлов 28, то есть 256.
Надо отметить, что именно сети класса С являются наиболее распространенными.
- Если адрес начинается с последовательности 1110, то он является адресом класса D и обозначает особый, групповой адрес - multicast.
Если в пакете в качестве адреса назначения указан адрес класса D, то такой пакет должны получить все узлы, которым присвоен данный адрес. Но об этом мы еще поговорим ниже.
- Если адрес начинается с последовательности 11110, то это значит, что данный адрес относится к классу Е.
Адреса этого класса зарезервированы для будущих применений.
Итак, давайте в отдельной таблице приведем диапазоны номеров сетей и максимальное число узлов, соответствующих каждому классу сетей.
Класс | Первые биты | Наименьший адрес сети | Наибольший адрес сети | Максимальное количество узлов |
A | 1.0.0.0 | 126.0.0.0 | 224 | |
B | 128.0.0.0 | 191.255.0.0 | 216 | |
C | 192.0.1.0 | 223.255.255.0 | 28 | |
D | 224.0.0.0 | 239.255.255.255 | Multicast | |
E | 240.0.0.0 | 247.255.255.255 | зарезервирован |
Таким образом, можно однозначно определить, что
Большие сети получают адреса класса А, средние - класса В, а маленькие - класса С. В зависимости от того к какому классу (А В С) принадлежит адрес, номер сети может быть представлен первыми 8, 16 или 24 разрядами, а номер хоста - последними 24, 16 или 8 разрядами.
Итак, запоминаем:+
Сетевой класс Диапазон значений первого байта (десятичный) A 1 to 126 B 128 to 191 C 192 to 223Особые IP-адреса
Как мы отмечали, существуют некоторые значения IP-адресов, которые зарезервированы заранее, то есть существуют IP-адреса, которые предназначены для особых целей:
1) Если весь IP-адрес состоит только из двоичных нулей, то он обозначает адрес того узла, который сгенерировал этот пакет;
0 0 0 0 ................................... 0 0 0 0 |
этот режим используется только в некоторых сообщениях протокола межсетевых управляющих сообщений ICMP.
2) Если в поле номера сети стоят только нули, то по умолчанию считается, что узел назначения принадлежит той же самой сети, что и узел, который отправил пакет.
0 0 0 0 .......0 Номер узла |
IP-адрес с нулевым номером хоста используется для адресации ко всей сети. Например, в сети класса С с номером 199.60.32 IP-адрес 199.60.32.0 обозначает сеть в целом.
3) Если все двоичные разряды IP-адреса равны 1, то пакет с таким адресом назначения должен рассылаться всем узлам, находящимся в той же сети, что и источник этого пакета.
1 1 1 1 .........................................1 1 |
Такая рассылка называется ограниченным широковещательным сообщением (limited broadcast) .
4) Если в поле номера узла назначения стоят только единицы, то пакет, имеющий такой адрес, рассылается всем узлам сети с заданным номером сети. Например, пакет с адресом 192.190.21.255 доставляется всем узлам сети 192.190.21.0.
Номер сети 1111................11 |
Такая рассылка называется широковещательным сообщением (broadcast).
При адресации хостов интерсети администратор должен обязательно учитывать все ограничения, которые вносятся особым назначением некоторых IP-адресов.
Таким образом, каждый администратор должен знать, что
ни номер сети, ни номер узла не может состоять только из одних двоичных единиц или только из одних двоичных нулей.
Отсюда следует, что максимальное количество узлов, приведенное в таблице для сетей каждого класса, на практике должно быть уменьшено на 2.
Например, в сетях класса С под номер узла отводится 8 бит, которые позволяют задавать 256 номеров: от 0 до 255. Однако на практике максимальное число узлов в сети класса С не может превышать 254, так как адреса 0 и 255 имеют специальное назначение.
Особый смысл имеет IP-адрес, первый октет которого равен 127.
Этот адрес зарезервирован для тестирования программ и взаимодействия процессов в пределах одной машины. Когда программа посылает данные по IP-адресу 127.0.0.1, то образуется как бы "петля". Данные не передаются по сети, а возвращаются модулям верхнего уровня, как только что принятые.
Поэтому в IP-сети запрещается присваивать машинам IP-адреса, начинающиеся со 127!
Этот адрес имеет название loopback.
Подытожим и уточним
Для сети класса A ...(один байт под адрес сети, три байта под номер хоста) 10.0.0.0 сеть класса А, потому что все хостовые биты равны 0. 10.0.1.0 адрес хоста в этой сети 10.255.255.255 широковещательный адрес этой сети, поскольку все сетевые биты установлены в 1Для сети класса B...(два байта под адрес сети, два байта под номер хоста) 172.17.0.0 сеть класса B 172.17.0.1 адрес хоста в этой сети 172.17.255.255 сетевой широковещательный адресДля сети класса C...(три байта под адрес сети, один байт под номер хоста) 192.168.3.0 адрес сети класса C 192.168.3.42 хостовый адрес в этой сети 192.168.3.255 сетевой широковещательный адресЕдва ли не все доступные сетевые IP адреса принадлежат классу C.
Маски в IP адресации
Очевидно, что определение номеров сети по первым байтам адреса также не вполне гибкий механизм для адресации. А что если использовать какой-либо другой признак, с помощью которого можно было бы более гибко устанавливать границу между номером сети и номером узла?
В качестве такого признака сейчас получили широкое распространение маски. Итак, давайте подробнее познакомимся, что такое маска и как она "работает".
Маска - это тоже 32-разрядное число, она имеет такой же вид, как и IP-адрес. Маска используется в паре с IP-адресом, но не совпадает с ним.
Принцип отделения номера сети и номера узла сети с использованием маски состоит в следующем:
Двоичная запись маски содержит единицы в тех разрядах, которые в IP-адресе должны представляться как номер сети и нули в тех разрядах, которые представляются как номер хоста.
Каждый класс IP-адресов (А, В и С) имеет свою маску, используемую по умолчанию. В маске по умолчанию:
- разряды во всех позициях, которые используются в IP-адресе для задания номера сети, заполняются единицами,
- а разряды во всех позициях, которые используются для задания номера хоста, заполняются нулями.
Таким образом, для стандартных классов сетей маски имеют следующие значения:
класс А - 11111111. 00000000. 00000000. 00000000 (255.0.0.0) ;
класс В - 11111111. 11111111. 00000000. 00000000 (255.255.0.0) ;
класс С - 11111111.11111111.11111111.00000000 (255.255.255.0) .
Таким образом, очень легко, снабжая каждый IP-адрес маской, отказаться от понятий классов адресов и тем самым сделать более гибкой систему IP адресации.
Рассмотрим пример:
Если адресу 185.23.44.206 назначить маску 255.255.255.0, то смотрим, что единицы в маске заданы в трех байтах - значит номер сети будет 185.23.44.0, а не 185.23.0.0, как это определено правилами системы классов.
Очень важное замечание!:
В масках можно указывать количество единиц в последовательности, которая определяет границу номера сети, не обязательно кратное 8, чтобы повторять деление адреса на байты.
Опять рассмотрим это на примере: для IP-адреса 129.64.134.5 назначим маску 255.255.128.0 то есть в двоичном виде:
IP-адрес 129.64.134.5 - 10000001. 01000000.10000110. 00000101
Маска 255.255.128.0 - 11111111.11111111.10000000. 00000000
Если определять номер сети в этом IP адресе "по-старому", то есть игнорируя маску, в соответствии с системой классов определить, что адрес 129.64.134.5 относится к классу В, а значит, номером сети являются первые 2 байта - 129.64.0.0, а номером узла - 0.0.134.5.
Если же использовать для определения границы номера сети маску, то 17 последовательных единиц в маске, "наложенные" на IP-адрес, определяют номер сети в двоичном выражении число:
10000001. 01000000. 10000000. 00000000 или в десятичной форме записи
- номер сети 129.64.128.0, а номер узла 0.0.6.5.
Механизм масок очень широко распространен в IP-маршрутизации, причем маски могут использоваться для самых разных целей.
С их помощью администратор может структурировать свою сеть, не требуя от поставщика услуг дополнительных номеров сетей!
Порядок назначения IP адресов
Номера сетей могут назначаться либо централизованно, если сеть является частью Internet, либо произвольно, если сеть работает автономно.
Номера узлов и в том и в другом случае администратор назначает самостоятельно по своему усмотрению, не выходя, разумеется, из разрешенного для этого класса сети диапазона.
Главную роль в централизованном распределении IP-адресов до некоторого времени играла организация InterNIC (Network Information Center), однако с ростом сети задача распределения адресов стала слишком сложной. InterNIC делегировала часть своих функций другим организациям и крупным поставщикам услуг Internet - провайдерам. В частности распределением IP-адресов для подключения к сети Internet теперь занимаются провайдеры.
Давайте рассмотрим такую ситуацию:
Какие IP-адреса может использовать администратор, если провайдер услуг Internet не назначил ему никакого адреса?
Если, к примеру, мы точно знаем, что сеть, которую мы администрируем никогда в будущем не будет подключаться к Internet (работает в "автономном режиме"), тогда мы можем использовать любые IP-адреса, соблюдая правила их назначения, о которых шла речь выше. Для простоты можно использовать адреса класса С: в этом случае не придется вычислять значение маски подсети и вычислять адрес для каждого хоста. В этом случае мы должны будем просто назначить каждому сегменту нашей локальной сети его собственный сетевой номер класса С.
Однако если у нас есть хотя бы небольшая вероятность того, что когда-либо в будущем наша сеть может быть подключена к Internet, не следует использовать такие IP-адреса! Они могут привести к конфликту с другими адресами в Internet. Чтобы избежать таких конфликтов, нужно использовать IP-адреса, зарезервированные для частных сетей. Для этой цели зарезервированы специально несколько блоков IP-адресов, которые называются автономными.
Автономные IP адреса
Автономные адреса зарезервированы для использования частными сетями. Они обычно используются организациями, которые имеют свою частную большую сеть - intranet (локальные сети с архитектурой и логикой Internet), но и маленькие сети часто находят их полезными.
Эти адреса не обрабатываются маршрутизаторами Internet ни при каких условиях!
Эти адреса выбраны из разных классов. Таким образом, можно выбрать автономный адрес класса А, В или С, причем в последнем случае количество возможных адресов сетей составляет 256.
Класс | От IP-адреса | До IP-адреса | Всего адресов в диапазоне |
A | 10.0.0.0 | 10.255.255.255 | 16 777 216 |
B | 172.16.0.0 | 172.31.255.255 | 65 536 |
C | 192.168.0.0 | 192.168.255.255 |
Маршрутизаторы в Internet запрограммированы так, чтобы не транслировать сообщения, направляемые с зарезервированных адресов или на них.
Самое важное: разбиение на подсети - это локальная настройка, она не видна "снаружи".