Изменения

Перейти к: навигация, поиск

IP

16 434 байта добавлено, 17:00, 1 декабря 2016
Нет описания правки
* Адрес получателя (''Destination address'')
** 128 бии. IPv6 адрес получателя.
 
== IP-адрес ==
 
{{Определение
|definition=IP-адрес — уникальный сетевой адрес узла в компьютерной сети, построенной по протоколу IP.
}}
 
=== IPv4-адрес ===
 
IPv4 использует 32-битные адреса, ограничивающие адресное пространство 4 294 967 296 (2<sup>32</sup>) возможными уникальными адресами. У каждого хоста и маршрутизатора в Интеренете есть IP-адрес. IP-адрес не имеет отношения к хосту. Он имеет отношение к сетевому интерфейсу, поэтому иногда хост или маршрутизатор могут иметь несколько IP-адресов.
 
IP-адреса имеют иерархическую организацию. Первая часть имеет переменную длину и задает сеть, а последняя указывает на хост.
 
Обычно IP-адреса записываются в виде 4 десятичных чисел, каждое в диапозоне от 0 до 255, разделенными точками ('''dot-decimal notation'''). Каждая часть представляет один байт адреса. Например, шестнадцатиричный адрес 80D00297 записывается как 128.208.2.151.
 
{{Определение
|definition=Префикс — непрерывный блок пространства IP-адресов, соответствующий сети, в которой сетевая часть совпадает для всех хостов.
}}
 
Префикс задается наименьшим IP-адресом в блоке и размером блока. Размер определяется числом битов в сетевой части, оставшиеся биты в части хоста могут варьироваться. Таким образом, размер является степенью двойки. Он записывается после префикса IP-адреса в виде слэша и длины сетевой части в битах. В предыдущем примере префикс содержит 2<sup>8</sup> адресов и поэтому для сетевой части отводится 24 бита. Записывается так: 128.208.2.0/24.
 
=== Сетевые адреса, адреса интерфейсов и широковещательные адреса ===
 
IP адрес может означать одно из трех:
 
* Адрес IP сети (группа IP устройств, имеющих доступ к общей среде передаче - например, все устройства в сегменте Ethernet). Сетевой адрес всегда имеет биты интерфейса (хоста) адресного пространства установленными в 0 (если сеть не разбита на подсети);
* Широковещательный адрес IP сети (адрес для 'разговора' со всеми устройствами в IP сети). Широковещательные адреса для сети всегда имеют интерфейсные (хостовые) биты адресного пространства установленными в 1 (если сеть не разбита на подсети).
* Адрес интерфейса (например Ethernet-адаптер или PPP интерфейс хоста, маршрутизатора, сервера печать итд). Эти адреса могут иметь любые значения хостовых битов, исключая все нули или все единицы - чтобы не путать с адресами сетей и широковещательными адресами.
 
=== Маска подсети ===
 
Длина префикса не выводится из IP-адреса, поэтому протоколу маршрутизации вынуждены передавать префиксы на маршрутизаторы. Иногда префиксы задаются с помощью указания длины.
 
{{Определение
|definition=Маска подсети — двоичная маска, соответствующая длине префикса, в которой единицы указывают на сетевую часть.
}}
 
То есть маска подсети определяет как будут локально интерпретироваться IP адреса в сегменте IP сети, что для нас весьма важно, поскольку определяет процесс разбивки на подсети.
 
Стандартная маска подсети - все сетевые биты в адресе установлены в '1' и все хостовые биты установлены в '0'.
Выполненение операции И между маской и IP-адресом позволяет выделить сетевую часть.
 
О маске подсети нужно помнить три вещи:
* Маска подсети предназначена только для локальной интерпретации локальных IP адресов (где локальный значит - в том же сетевом сегменте);
* Маска подсети - не IP адрес - она используется для локальной модификации интерпретации IP адреса.
 
=== Бесклассовая междоменная маршрутизация ===
 
Изначально использовалась классовая адресация (INET), но со второй половины 90-х годов XX века она была вытеснена бесклассовой адресацией (CIDR), при которой количество адресов в сети определяется маской подсети.
 
Таблицы маршрутизации со временем сильно растут, и с этим нужно что-то делать. Маршрутизатор может узнавать о расположении IP-адресов по префиксам различной длины. Но вместо того чтобы разделять сеть на подсети, мы объединим несколько коротких префиксов в один длинный. Этот процесс называется '''агрегацией маршрута (route aggregation)'''. Длинный префикс, полученный в результате, иногда называют '''суперсетью (supernet)''', в противоположность подсетям с разделением блоков адресов.
 
При агрегации IP-адреса содержатся в префиксах различной длины. Один и тот же IP-адрес может рассматриваться одним маршрутизатором как часть блока /22 (содержащего 2<sup>10</sup> адресов), а другим — как часть более крупного блока /20 (содержащего 2<sup>12</sup> адресов). Это зависит от того, какой информацией обладает маршрутизатор. Такой метод называется '''CIDR (Classless InterDomain Routing — бесклассовая междоменная маршрутизация)'''.
 
'''Приведем пример:'''
 
Пусть есть 3 университета: Кембриджский, Оксфордский и Эдинбургский.
 
Допустим, у нас есть блок из 8192 адресов, начиная с 194.24.0.0.
 
* Допустим также, что Кембриджскому университету требуется 2048 адресов и ему выделяются адреса от 194.24.0.0 до 194.24.7.255, а также маска 255.255.248.0. Это будет префикс /21.
 
* Затем Оксфордский университет запрашивает 4096 адресов. Так как блок из 4096 адресов должен располагаться на границе, кратной 4096, то ему не могут быть выделены адреса, начинающиеся с 194.24.8.0. Вместо этого он получает адреса от 194.24.16.0 до 194.24.31.255 вместе с маской 255.255.240.0. Это будет префикс /20.
 
* Наконец, Эдинбургский университет просит выделить ему 1024 адреса и получает адреса от 194.24.8.0 до 194.24.11.255 и маску 255.255.252.0. Это будет префикс /22.
 
После этого всем маршрутизаторам, находящимся в свободной от умолчаний зоне, сообщаются IP-адреса трех новых сетей. Маршрутизаторы, находящиеся рядом с этими университетами, возможно, захотят отправлять пакеты на эти префиксы по разным исходящим линиям. Тогда они запишут эти адреса
в свои таблицы маршрутизации.
 
Теперь посмотрим на эту троицу университетов с точки зрения отдаленного маршрутизатора в Нью-Йорке. Все IP-адреса, относящиеся к этим трем префиксам, должны отправляться из Нью-Йорка (или из США) в Лондон. Процесс маршрутизации в Лондоне узнает об этом и объединяет три префикса в одну агрегированную запись 194.24.0.0/19 и передает ее в Нью-Йорк.
 
Также префиксы могут пересекаться. Согласно правилу, пакеты передаются в направлении самого специализированного блока, или '''самого длинного совпадающего префикса (longest matching prefix)''', в котором находится меньше всего IP-адресов.
 
'''По сути CIDR работает так:'''
*Когда прибывает пакет, необходимо определить, относится ли данный адрес к данному префиксу; для этого просматривается таблица маршрутизации. Может оказаться, что по значению подойдет несколько записей. В этом случае используется самый длинный префикс. То есть если найдено совпадение для маски /20 и /24, то для выбора исходящей линии будет использоваться запись, соответствующая /24.
*Однако этот процесс был бы трудоемким, если бы таблица маршрутизации просматривалась запись за записью. Вместо этого был разработан сложный алгоритм для ускорения процесса поиска адреса в таблице (Ruiz-Sanchez и др., 2001).
*В маршрутизаторах, предполагающих коммерческое использование, применяются специальные чипы [[VLSI]], в которые данные алгоритмы встроены аппаратно.
 
=== Классы IP-сетей ===
 
Раньше использовали классовую адресацию.
 
Также, сколько бит используется сетевым ID и сколько бит доступно для идентификации хостов (интерфейсов) в этой сети, определяется сетевыми '''классами'''.
 
Всего 3 класса IP-адресов:
* '''Класс A'''. IP сетевых адресов использует левые 8 бит (самый левый байт) для указания сети, оставшиеся 24 бита (оставшиеся три байта) для идентификации интерфейса хоста в этой сети. Адреса класса A всегда имеют самый левый бит самого левого байта нулевым, то есть значения от 0 до 127 для первого байта в десятичной нотации. Таким образом доступно максимум 128 адресов сетей класса A, каждый из которых может содержать до 33,554,430 интерфейсов. Однако сети 0.0.0.0 (известная как маршрут по умолчанию) и 127.0.0.0 (loop back сеть) имеют специальное назначение и не доступны для использования в качестве идентификаторов сети. Поэтому доступно только 126 адресов сетей класса A.
* '''Класс B'''. IP сетевых адресов использует левые 16 бит (два левых байта) для идентификации сети, оставшиеся 16 бит (последние два байта) указывают хостовые интерфейсы. Адрес класса B всегда имеет самые левые два бита установленными в 1 0. Таким образом для номера сети остается 14 бит, что дает 32767 доступных сетей класса B. Первый байт адреса сети класса B может принимать значения от 128 до 191, и каждая из таких сетей может иметь до 32,766 доступных интерфейсов.
* '''Класс C'''. IP сетевых адресов использует левые 24 бит (три левых байта) для идентификации сети, оставшиеся 8 бит (последний байт) указывает хостовый интерфейс. Адрес класса С всегда имеет самые левые три бита установленными в 1 1 0. Таким образом для номера сети остается 14 бит, что дает 4,194,303 доступных сетей класса B. Первый байт адреса сети класса B может принимать значения от 192 до 255, и каждая из таких сетей может иметь до 254 доступных интерфейсов. Однако сети класса C с первым байтом больше, чем 223, зарезервированы и не используются.
 
Существует также специальные адреса, которые зарезервированы для 'несвязанных' сетей - это сети, которые используют IP, но не подключены к Internet. Вот эти адреса:
* Одна сеть класса A: 10.0.0.0
* 16 сетей класса B: 172.16.0.0 - 172.31.0.0
* 256 сетей класса С: 192.168.0.0 - 192.168.255.0
 
Стандартные маски подсети для трех классов сетей:
 
* A класс - маска подсети: 255.0.0.0
* B класс - маска подсети: 255.255.0.0
* C класс - маска подсети: 255.255.255.0
 
=== IPv6-адрес ===
 
Адрес в IPv6 представляется как восемь групп из четырех шестнадцатеричных чисел, разделенных двоеточиями.
При записи адреса используются следующие правила:
* Если одна и более групп, идущих подряд, равны 0000, то они опускаются и заменяются на двойное двоеточие.
* Незначащие старшие нули в группах опускаются.
* Для записи встроенного или отображенного IPv4 адреса последние две группы цифр заменяются на IPv4 адрес.
* При использовании IPv6 адреса в [[URL]] он помещается в квадратные скобки.
* Порт в [[URL]] пишется после закрывающей квадратной скобки.
===Типы IPv6 адресов===
** ''Solicited'' - запрошенные адреса. Остальные адреса, которые устройства могут использовать для прикладных задач.
* Групповой (''Anycast'') - для отправки пакета на "любой" индивидуальный адрес. Такой адрес может быть назначен нескольким устройствам. Пакет будет доставлен ближайшему устройству с этим адресом.
 
===Нотация===
Адрес в IPv6 представляется как восемь групп из четырех шестнадцатеричных чисел, разделенных двоеточиями.
При записи адреса используются следующие правила:
* Если одна и более групп, идущих подряд, равны 0000, то они опускаются и заменяются на двойное двоеточие.
* Незначащие старшие нули в группах опускаются.
* Для записи встроенного или отображенного IPv4 адреса последние две группы цифр заменяются на IPv4 адрес.
* При использовании IPv6 адреса в [[URL]] он помещается в квадратные скобки.
* Порт в [[URL]] пишется после закрывающей квадратной скобки.
210
правок

Навигация