Зачем нужен mac адрес если есть ip
пятница, сентября 21, 2012
Немного о сетевых адресах
![]() |
| Взаимодействие трех нижних уровней модели OSI |
7 коммент.:
Хорошо, спасибо. Но для полного понимания этой премудрости я бы как-то увязал с реальной жизнью. Ну, типа почтового адреса: страна-город-улица-дом.
Спасибо Вам за Ваши статьи.
Спасибо вам!
Данное сравнение я употребля в боле поздней статье http://www.netza.ru/2012/09/blog-post_6748.html =)
а 127.0.0.1 к чему относиться?
Все адреса на 127 это лупбеки (заворот, петля обратной связи). При запросе на них компьютер посылает данные сам на себя.
Спасибо за статью.
А почему нельзя обойтись только одним IP адресом?
Хороший вопрос. Нашел на него в сети хороший ответ от представителей компании Zyxel.
Идентификация по MAC-адресам нужна для упрощения работы и, как следствие,
удешевления сетевого оборудования, а именно коммутаторов 2-го уровня, в том
числе и DSLAM’ов провайдера.
Однако, построить интернет на таком оборудовании невозможно, поскольку
оно физически не способно хранить огромные таблицы уникальных
MAC-адресов. Поэтому применяется адресация IP, в которой узлы
сгруппированы в сети, и в таблицах межсетевых устройств
(маршрутизаторов) хранятся именно адреса групп, что уменьшает размер таблиц.
В целом, деление на локальные и глобальные сети имеет исторические и
экономические причины. Разработчики старых, поныне используемых
протоколов, таких как Ethernet и TCP/IP не могли предположить, какими
будут возможности современного оборудования. Разработчики оборудования,
в свою очередь, придерживаются старых стандартов из соображений обратной
совместимости.»
Разница между IP и MAC-адресами
Неподготовленный человек часто путает ip и mac адреса и не может чётко объяснить, где используются первые, а где вторые. На самом деле, они используются одновременно, но имеют разное назначение и смысл. Чтобы разобраться с этим, требуется вначале представлять себе структуру эталонной модели OSI. IP-адресация – это адресация третьего уровня, и сам по себе адрес является иерархическим, то есть часть адреса обозначает сеть адресата, а часть – идентификатор хоста внутри сети.
Например, если есть адрес 192.168.1.2 с маской 255.255.255.0, то надо понимать, что 192.168.1.0 – это сеть, а 2 – это хост внутри этой сети. На самом деле, с точки зрения маршрутизаторов не имеет значения эта последняя двойка. Самое главное – доставить пакет в нужную сеть, а последний маршрутизатор на этом пути уже будет смотреть, как найти хост с номером два.
MAC-адрес (адрес второго уровня), напротив, линейный, то есть отдельные компоненты адреса не имеют отдельного смысла (на самом деле, есть часть MAC-адреса, по которой можно определить производителя устройства, но в данном контексте это не имеет значения). Так вот, глядя на два MAC адреса можно сказать только одно: разные они или одинаковые. Нельзя понять, в одной они сети находятся или в разных.
Таким образом, если мы, например, знаем MAC-адрес удалённого сервера, то это нам никак не поможет узнать, как отправить на него пакет, в силу отсутствия в адресе информации о сети адресата. MAC-адреса используются для идентификации разных устройств в пределах одной локальной сети. Приведём пример типичного использования MAC-адресов: есть сеть, в ней несколько компьютеров подключены к общему хабу. Один компьютер отправляет сообщение другому компьютеру, указывая в заголовке второго уровня MAC-адрес получателя. Все участники в сети получают фрейм. Тот хост, чей адрес указан принимает содержимое, а остальные видят, что это не им, и уничтожают фрейм. В случае использования коммутатора вместо хаба, процедура примерно такая же за исключением того, что коммутатор проводит некоторую фильтрацию по MAC-адресам, которая в данном контексте нам не важна.
Итого, ip-адрес имеет стратегическое значение, указывая, куда глобально надо передать пакет, mac же имеет тактическое значение, в нём содержится информация, какому ближайшему устройству (из нашей же сети) нужно передать информацию.
Чтобы было понятнее, давайте рассмотрим пример: клиент находится в одной сети, а сервер – в другой. Между ними два маршрутизатора.
Для простоты будем считать, что во всех сетях маски подсети 255.255.255.0. Клиент отправляет запрос на сервер, в качестве шлюза по умолчанию, на нём прописан ip адрес ближайшего маршрутизатора – 192.168.1.1.
Обратный процесс отправки ответа выглядит аналогичным образом. То есть, на протяжении всего путешествия пакета по сети, IP адреса отправителя и получателя в нём не меняются, так как именно основываясь на IP адресе получателя маршрутизатор решает, куда дальше пересылать пакет. А вот MAC-адреса меняются при каждом переходе из одной сети в другую. Каждый маршрутизатор ставит в качестве адреса отправителя свой MAC-адрес (точнее адрес того своего интерфейса, который смотри в нужную сеть, того интерфейса, с которого непосредственно будет выходить фрейм), а в качестве MAC-адреса получателя ставится адрес ближайшего устройства в следующей сети, то есть, либо следующего маршрутизатора, либо, если сеть уже достигнута, то непосредственного адресата, для которого предназначается информация в пакете.
Стоит отметить, что коммутаторы и хабы не имеют ни MAC ни IP адресов и не занимаются переупаковкой. Они находятся внутри локальной сети и поэтому в приведённом примере их наличие никак не повлияло бы на процесс передачи информации. Главное в данном примере – это именно процесс прохождения маршрутизаторов. Отличное понимание приведённого примера является обязательным условием изучения дальнейшего материала и в частности понимания процесса маршрутизации.
unixforum.org
Форум для пользователей UNIX-подобных систем
Зачем нужны mac-адреса (mac adress)
Зачем нужны mac-адреса
Сообщение andreas90 » 07.04.2008 23:52
Re: Зачем нужны mac-адреса
Сообщение -sanches- » 08.04.2008 00:35
Re: Зачем нужны mac-адреса
Сообщение andreas90 » 08.04.2008 00:59
Я понимаю, что мой модем, получивши пакет, использует mac-адрес сетевой карты для того, чтобы мой компьютер получил пакет. Но зачем оборудованию провайдера нужен mac моего модема? Ведь оборудование провайдера может послать пакет по моему IP вообще не используя mac, ведь мой IP уникален.
Если у каждого сетевого оборудования есть mac, то почему тогда не использовать бы одни mac адреса без IP?
Re: Зачем нужны mac-адреса
Re: Зачем нужны mac-адреса
Сообщение ERetic » 08.04.2008 04:16
Видимо человеку надо понять следующее:
Если каждому модему присваивать ип, то представь как должны будут выглядеть сети и подсети, какое количество ип адресов нужно для всего этого(Каждый мобильник в мире тоже должен им обладать, и унитаз, подключенный к интернету). Сложность работы ДНС серверов(видимо нагрузки на харды буду сверхъестественными, зато какое поле для SSD(: ). Сразу отпадают broadcast пакеты(и видимо multicast тоже, что повлечет просто астрономический дифицит пропускной способности). или для всего этого начинают придумываться такие костыли, что проще пересесть на инвалидную каляску сразу.
Я верно понял ключ беседы?
Другое дело, что ARP штука весьма сама по себе не безопасная. Те кто подключается в локальных сетях к интернету не через VPN и PPPoE наверняка сталкивались с тем, что попадаются вирусы, которые генерируют в массовом коичестве arp-ответы. Обычно это замечается когда arp-таблица очищается и нашему компу хочется узнать какой например адрес у гейта в инете или днс сервера. В результате большого количества ложной фигни наша таблица заполняется неверно и инет пропадает или еще что-то подобное.
Re: Зачем нужны mac-адреса
Сообщение Megatron » 08.04.2008 05:48
+ движение пакетов внутри любых сетей очень часто выходит за рамки TCP/IP, как в такой ситуации быть?
Re: Зачем нужны mac-адреса
Сообщение VladimirP » 08.04.2008 06:49
Это просто разные уровни адресации.
Re: Зачем нужны mac-адреса
Сообщение mczim » 08.04.2008 13:32
Re: Зачем нужны mac-адреса
Сообщение ERetic » 08.04.2008 13:54
Re: Зачем нужны mac-адреса
Сообщение andreas90 » 08.04.2008 13:56
Я не могу полно ответить на ваш вопрос, так как не имею доступ к оборудованию провайдера и видел свитч только на фотографиях. В теории читал материал в книге Дугласа Э.Камера. Я думаю сегодня вечером или завтра я отвечу на ваш вопрос
Re: Зачем нужны mac-адреса
Сообщение nesk » 08.04.2008 14:04
На этот вопрос ответить легко )
мас-адреса не позволяют создавать логический объекты «сеть» или «подсесть»
ip адрес позволяет построить некий уровень абстракции «сеть» и «узел в сети» и соответственно таблицу маршрутизации между сетями.
PS 
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
Re: Зачем нужны mac-адреса
Сообщение Megatron » 08.04.2008 15:54
Зачем нужен домен, если у каждого сервера есть ип адрес??=)))
Re: Зачем нужны mac-адреса
Сообщение nesk » 08.04.2008 15:59
Зачем нужен домен, если у каждого сервера есть ип адрес??=)))
Внимание: У меня под рукой нет машины с Linux. Я не использую эту ОС. Ответы я даю либо по памяти, либо мне помогает гугл. Тщательно читайте маны по тем командам и конфигурационным файлам, которые я упоминаю.
Re: Зачем нужны mac-адреса
Сообщение headcrab » 08.04.2008 17:27
Re: Зачем нужны mac-адреса
Сообщение oneq » 08.04.2008 17:42
Re: Зачем нужны mac-адреса
Сообщение andreas90 » 08.04.2008 21:47
Не могу понять провокационный вопрос или нет. Коммутаторы не настраивал, кроме своего zyxel p660 htw.
В случае с технологией ADSL коммутаторы работают примерно так http://www.ipdslam.ru/equipment/support/do. ge(RFC1483).pdf
Обратите внимание, что IP адрес есть у каждой точки.
Re: Зачем нужны mac-адреса
Сообщение ptolemy » 08.04.2008 22:46
Правильный вопрос, так и надо! Во всем надо сомневаться.
Посмотрим теперь формат пакета IP (ссылка). Он значительно сложнее и задача его тоже сложнее. Он находится на следующем уровне.
Re: Зачем нужны mac-адреса
Сообщение andreas90 » 08.04.2008 23:01
Re: Зачем нужны mac-адреса
Сообщение ptolemy » 09.04.2008 12:01
В описаниях протоколов нет ответа на твой вопрос, да и не должно его там быть. Инженеры D-Link, Zyxel (и т.п.) вроде как тоже не должны знать ответа на этот вопрос, они практики, при всем к ним уважении. Ответ, как правило, знают люди уровня ведущего разработчика проекта сетевых систем и системного архитектора.
Чтобы понять суть вопроса, если интересно конечно, могу порекомендовать эти книжки. Специально для студентов ссылки собираю. В твоем случае тебе помогут Непейвода (2 экз.), Гради Буч и Турчин. Путь не быстрый, зато самый правильный, IMHO. Непейвода и Турчин есть в Интернет свободно, Буча можно поискать и при желании найти.
Re: Зачем нужны mac-адреса
Сообщение A_1 » 09.04.2008 21:44
Мне почему-то кажется, что задача MAC заключается в том, чтобы игнорировать чужой пакет, а вовсе не передать.
Re: Зачем нужны mac-адреса
Сообщение ptolemy » 09.04.2008 23:08
Re: Зачем нужны mac-адреса
Сообщение Denjs » 10.04.2008 00:20
Re: Зачем нужны mac-адреса
Сообщение Denjs » 10.04.2008 00:31
Re: Зачем нужны mac-адреса
Сообщение andreas90 » 10.04.2008 22:41
Инженеры компании Zyxel все-такие ответили. Вот официальный ответ (в кавычках)
«Добрый день,
Идентификация по MAC-адресам нужна для упрощения работы и, как следствие,
удешевления сетевого оборудования, а именно коммутаторов 2-го уровня, в том
числе и DSLAM’ов провайдера.
Однако, построить интернет на таком оборудовании невозможно, поскольку
оно физически не способно хранить огромные таблицы уникальных
MAC-адресов. Поэтому применяется адресация IP, в которой узлы
сгруппированы в сети, и в таблицах межсетевых устройств
(маршрутизаторов) хранятся именно адреса групп, что уменьшает размер таблиц.
В целом, деление на локальные и глобальные сети имеет исторические и
экономические причины. Разработчики старых, поныне используемых
протоколов, таких как Ethernet и TCP/IP не могли предположить, какими
будут возможности современного оборудования. Разработчики оборудования,
в свою очередь, придерживаются старых стандартов из соображений обратной
совместимости.»
А у adsl модема действительно нет мака, прошу простить мою безграмотность.
Разница между IP-адресом и MAC-адресом
Основное различие между IP-адресом и MAC-адресом состоит в том, что IP-адрес — это логический адрес, характеризующий местоположение вашего устройства в сети Интернет, тогда как MAC-адрес — это физический адрес, идентифицирующий фактическое устройство.
Каждый компьютер или устройство в Интернете имеет два типа адресов: его физический адрес и его интернет-адрес. Физический адрес, который также называется адресом управления доступом к среде или MAC-адресом, идентифицирует устройство для других устройств в той же локальной сети. Интернет-адрес или IP-адрес, определяет устройство во всей сети Интернет. Чтобы добраться до места назначения, сетевой пакет нуждается в обоих адресах. Любая часть интернет-программного обеспечения, такая как веб-браузер, направляет данные в пункт назначения в Интернете с использованием IP-адреса пункта назначения. Этот адрес вставляется в пакеты данных, которые посылает стек программного обеспечения. Люди редко используют номера адресов напрямую, вместо этого используют DNS-имена, которые приложение переводит в соответствующий номер. Интернет-маршрутизаторы перемещают пакеты из исходной сети в сеть назначения, а затем в локальную сеть, к которой подключено устройство назначения. Эта локальная сеть преобразует IP-адрес в MAC-адрес, добавляет MAC-адрес в поток данных и отправляет данные нужному устройству.
Содержание
Что такое IP-адрес?
IP-адрес — это адрес, который однозначно идентифицирует сетевое соединение. Он называется «логическим адресом», который предоставляется для подключения в сети. IP-адреса обычно предоставляются администратором сети или Интернет-провайдерами (ISP). Он может быть статическим (постоянным) или динамическим (временным) по своей природе. Динамический IP-адрес может постоянно меняться каждый раз, когда устройство подключается к различным сетям. IP-адреса доступны в двоичном виде и используется при маршрутизации, так как они конкретно определяют сетевое соединение. IP-адрес используется на сетевом уровне эталонных моделей OSI или TCP/IP.

Интернет-протокол (IP) контролирует взаимодействие устройств в Интернете и определяет поведение интернет-маршрутизаторов. Это соответствует сетевому уровню (3 уровень) эталонной модели OSI. Интернет изначально строился на IP версии 4 (IPv4) и сейчас находится на переходе к IPv6.
IPv4 (Интернет-протокол версии 4): Адрес IPv4 состоит из 32 битов, обычно записываемых в виде четырех десятичных чисел или точечно-десятичной записи. Пример записи адреса — 192.168.0.11. Поле заголовка IPv4 составляет 20 байтов, а биты контрольной суммы присутствуют в заголовке для контроля ошибок. Поддержка IPsec (для функции безопасности) является необязательной в IPv4. При адресации IPv4 также доступны дополнительные поля. IPv4 поддерживает размер пакета до 576 байтов. Адресация IPv4 может использоваться для многоадресной передачи и широковещательной рассылки пакетов данных. Устойчивый, быстрый рост числа подключенных к Интернету устройств привел к надвигающемуся исчерпанию адресного пространства IPv4, что является одной из нескольких причин развития IPv6.

IPv6 (Интернет-протокол версии 6): Адрес IPv6 состоит из 128 битов, причем первые 64 зарезервированы для идентификации сети, а вторые 64 предназначены для идентификации устройства в сети. Адрес записывается в виде восьми наборов из четырех шестнадцатеричных цифр, разделенных двоеточиями — например, FEDC: BA98: 7654: 3210: 0123: 4567: 89AB: CDEF. Существует множество соглашений, позволяющих сократить адрес IPv6 при его написании. Поле заголовка IPv6 составляет 40 байтов, но биты контрольной суммы отсутствуют в файле заголовка. Поддержка IPsec (для функции безопасности) является обязательной в IPv6. При адресации IPv6 также недоступны необязательные поля. Он поддерживает размер пакета до 1280 байт. Адресация IPv6 не может использоваться для трансляции.
Что такое MAC-адрес?

MAC — это 48-битный адрес, который содержит либо 6 групп по 2 шестнадцатеричных цифры, либо 3 группы по 4 шестнадцатеричных цифры. Эти шестнадцатеричные цифры могут быть разделены дефисами (-) или двоеточиями (:). Например: 23-AB-CD-EF-56-78, или 23AB:CDEF:5678. 48-битный MAC-адрес состоит из двух частей по 24 бита каждая. Первые 24 бита представляют OUI (уникальный идентификатор организации), а следующие 24 бита представляют конкретную информацию поставщика. MAC-адрес работает на канальном уровне эталонных моделей OSI или TCP/IP.
В нынешнюю эпоху Интернета большинство устройств физически подключены с помощью кабелей Ethernet или беспроводным способом с помощью Wi-Fi. Оба метода используют MAC-адреса для идентификации устройства в сети. Каждый сетевой адаптер, подключенный к устройству, будет иметь свой собственный MAC-адрес. Настольный ПК обычно имеет только один. В большинстве ноутбуков их будет два (один для кабеля Ethernet, другой для беспроводного). Сетевой коммутатор с 48 портами будет иметь MAC-адрес для каждого порта плюс базовый MAC-адрес (всего 49 адресов). Для успешного взаимодействия на уровне 2 крайне важно иметь уникальный MAC-адрес на каждом сетевом адаптере.
Даже если вы попытаетесь установить связь с компьютером в локальной сети, используя его IP-адрес, связь все равно будет установлена с использованием MAC-адресов, и именно тогда вступает в действие протокол разрешения адресов (ARP). Устройства в локальной сети обычно хранят таблицу ARP со списком MAC-адресов и IP-адресов других устройств в локальной сети. Когда вы попытаетесь пропинговать другой компьютер, используя его IP-адрес, он будет преобразован в MAC-адрес с помощью таблицы ARP, а затем пакеты будут отправлены по проводам. Сетевые устройства, отвечающие за доставку кадров в пункт назначения 2 уровня, называются коммутаторами. MAC-адреса используются только для связи в локальных сетях (ЛВС), поэтому, если вы хотите получить доступ к удаленной сети или Интернету, используется IP-адрес.
В чем разница между MAC-адресом и IP-адресом?
Заключение
IP-адреса и MAC-адреса необходимы компьютерам (и другим подключенным устройствам) для связи через Интернет. Хотя две схемы адресации отличаются друг от друга, они работают вместе, предоставляя необходимые услуги на разных уровнях сети. Отличие IP-адреса и MAC-адреса в том, что IP-адрес — это логический адрес, характеризующий местоположение устройства в сети Интернет, а MAC-адрес — это физический адрес, идентифицирующий фактическое устройство.
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
IP адрес
Оглавление: онлайн книга Компьютерные сети
6. Канальный уровень передачи данных
7. Маршрутизация данных
8. Служебный протокол ICMP
10. Настройка сетевых подключений в командной строке Linux
11. Определение проблем работы сети
12. Туннелизация
Точно также, как обычные почтовые адреса необходимы для доставки посылок и бумажных писем, сетевые узлы, участвующие в передаче данных, полагаются на стандартизированную адресную информацию. Поэтому распределение адресов для хостов и промежуточных устройств, их настройка и управление являются основополагающими для адекватной работы компьютерной сети.
Виды сетевых адресов
Сетевые устройства имеют MAC-адрес и IP адрес (за редким исключением – хабы не имеют ни того ни другого, поскольку являются устройствами физического уровня — они работают как ретрансляторы — данные пришедшие на один порт, пересылают на все остальные порты; свитчи имеют только MAC-адреса (хотя бывают модели и с IP)).
Зачем нужны два вида адресов MAC и IP
В первой части «Как работают компьютерные сети» мы увидели как происходит отправка и получение данных по компьютерной сети.
Для непосредственной отправки сетевого пакета с одного устройства на другое требуется MAC адрес. Передача данных возможна только с MAC адреса исходного пункта на MAC адрес пункта назначения — передача через промежуточный узел на основе MAC невозможна — в заголовках фрейма есть место только для адреса пункта назначения и исходного адреса. По этой причине каждый сетевой интерфейс обязательно имеет MAC адрес, который ещё называют аппаратным адресом — если нет MAC адреса, то этот интерфейс не может принимать участие в сетевом обмене данными. К тому же, если у устройства несколько сетевых интерфейсов (WAN порт, несколько LAN портов, две беспроводных сети на 2.5 и 5 ГГц), то у каждого из этих сетевых интерфейсов есть свой MAC адрес — иначе бы они просто не работали.
Предположим, в нашей небольшой локальной сети три устройства: компьютер_1 (192.168.0.89), компьютер_2 (192.168.0.101) и соединяющий их роутер (192.168.0.1), то есть схема сети такая:
192.168.0.89 → 192.168.0.1 ← 192.168.0.101
Предположим, нужно передать сетевой пакет с компьютер_1 на компьютер_2. Для связи с роутером, компьютер_1 будет использовать MAC адрес роутера. Роутер имеет несколько портов и может переправить полученный пакет по любому из них. Получив пакет для компьютер_2, исходя из IP адреса пункта назначения, роутер определит, на каком порту находится нужное устройство (или нужная сеть, если устройство подключено через дополнительные роутеры) и, указав MAC компьютера_2, отправит пакет для компьютер_2.
То есть без IP адреса роутеры не знали бы, куда нужно перенаправлять (маршрутизировать) сетевые пакеты, а без MAC адреса было бы вообще невозможно отправить пакеты с одного устройства на другое.
Уже было упомянуто, что MAC адрес называется аппаратным, то есть жёстко прописанным на уровне сетевой карты, а IP адрес является логическим и может быть легко изменён в настройках программного обеспечения используемых устройств.
В этом разделе мы рассмотрим IP адреса.
Виды IP адресов по постоянству: временные и постоянные
Сетевые адреса могут быть как временными (или динамичными) или постоянными (статичными). Временные адреса динамически назначаются станции и могут быть забраны и переназначены на другую станцию, если не используются в течении определённого периода времени (например, в течение 24 часов). Такие временные адреса обычно распределяются на пользовательские устройства с помощью DHCP. В то время как постоянный адрес настраивается вручную на компьютерной системе (сетевом устройстве). Обычно компьютерам, выполняющим роль серверов, и промежуточным устройствам (роутерам, например) даётся один или более постоянных IP адресов.
Приватность (публичные или приватные IP)
IP делятся на публичные и приватные адреса. Пакеты, содержащие публичные адреса, могут быть направлены на хост назначения в Интернете. В противоположность этому, приватные (частные) адреса, как следует из их названия, используются только внутри домашней или корпоративной сети. Другими словами, пакеты с приватными адресами могут быть доставлены к узлу назначения только если он размещён в границах той же самой корпоративной или домашней сети, но не за её пределами. Использование приватных адресов обеспечивает повышенную безопасность, поскольку внутренние узлы невидимы снаружи. Многие организации полагаются на частные IP-адреса для защиты своих внутренних сетей. Ещё одним плюсом приватных адресов является то, что они гибки при распределении адресов для внутренних хостов и промежуточных устройств.
IP-адрес является глобальным стандартом, необходимым чтобы сетевой узел мог обмениваться данными с любыми другими узлами. IP-адрес является логическим адресом, поскольку он физически не связан с узлом (в отличии от MAC-адреса, который является физическим адресом, то есть жёстко прописан в самом устройстве).
Одновременно используются два разных стандарта IP: IPv4 (версия 4) и IPv6 (также известный как IP следующего поколения или IPng). Адрес IPv4 состоит из 32 битов, которые преобразуются в комбинацию из 4 десятичных значений (например, 127.232.53.8). IP-адрес состоит из частей идентификатора сети и узла. Например, в 172.232.53.8, 172.232 и 53.8 могут представлять идентификаторы сети и хоста соответственно. Принятие более продвинутой адресации IPv6 с 128 битами для адреса растёт, и будущее явно принадлежит ей.
Кто управляет диапазонами IP (кто выдаёт IP адреса)
IP-адрес состоит из частей:
Идентификация сети указывает конкретную организацию (например, фирму, колледж, интернет-провайдера). Идентификация хоста назначается сетевому узлу. Сетевые адреса назначаются делегированным образом Управлением по присвоению номеров в Интернете (IANA) (http://www.iana.org/). Будучи ответственным за глобальную координацию пространства IP, IANA делегирует доступное пространство сетевых адресов региональным интернет-регистратурам (RIR). В настоящее время в мире существует пять RIR:
В прошлом запрос на блок IP-адресов напрямую отправлялся в реестр клиентской организацией. После получения, организация в течение длительного времени сохраняла право собственности на предоставленный блок IP. Все это изменилось, и теперь интернет-провайдеры (ISP) играют центральную роль в управлении пространством IP-адресов и его распределении среди запрашивающих организаций. Для этого крупные интернет-провайдеры (например, AT&T) получают блоки IP от RIR и делят их на более мелкие порции для распределения клиентам (например, мелкие интернет-провайдеры, коммерческие фирмы, школы). Тем временем частные лица и малые предприятия получают сетевой адрес от своих интернет-провайдеров. На рисунке показано делегирование нисходящего пространства IP. На веб-сайтах RIR, таких как http://ws.arin.net/, вы можете найти владельца определённого сетевого адреса.
Делегирование IP адресов:

Двоичное и десятичное написание IP адресов
IPv4 стандарт использует 32-битные адреса (например, 10000000.00000010.00000111.00001001) для уникальной идентификации сетевого узла. Такое длинное написание бинарных битов создаёт неудобство, поэтому обычно используется десятичный формат (например, 129.131.12.10), в котором каждая десятичная цифра отражает 8-битную комбинацию. В 32-битной структуре, всё адресное пространство IPv4 диапазона находится между 0.0.0.0 (все 0 в бинарной записи) и 255.255.255.255 (все 1 в бинарной записи).
Почему в IP адресах нельзя использовать цифры более 255
Каждый октет IP адреса не может быть больше 255. Данное число является максимальным восьми битным двоичным числом 11111111. То есть хотя октеты и обозначаются десятичными числами от 0 до 255, на самом деле в них двоичные числа, и максимальное двоичное число равно 255.
Именно двоичная природа IP адреса позволяет понять суть маски сети и правила выбора маршрута. По этой причине стоит уделить внимание двоичному написанию и полностью разобраться в нём.
Составим небольшую таблицу и будем к ней возвращаться по мере необходимости. В этой таблице показано десятичное значение двоичного бита, находящегося в позициях с 8 по 1), а также кумулятивное десятичное значение, когда стоит одна единица в самой левой части, затем две единицы в самой левой части, затем три единицы и так до конца – это будет нужно для работы с сетевыми масками.
Таблица преобразования двоичных и десятичных значений:
| Положение единицы двоичного числа (8-бит) | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
|---|---|---|---|---|---|---|---|---|
| Десятичное значение | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
| Совокупные десятичные значения (кумуляция слева направо) | 128 | 192 | 224 | 240 | 248 | 252 | 254 | 255 |
Структура IP адреса
IP адрес составляется по крайней мере из двух частей: идентификатор сети (или сетевой адрес) и идентификатор хоста (или адрес хоста).
В этой части термин «сеть» используется как идентификатор организации (например, компании, университета). Например, есть идентификатор сети организации 195.112.36.x, где x может быть значением идентификатора хоста, то адрес сети можно выразить как 195.112.36.0. Становится очевидным, что чем больше бит занято идентификатором сети, тем меньше бит доступно для идентификатора хостов.
Как правило, корпоративные сети разбиты на более маленькие сегменты подсетей. Подсети могут создаваться в соответствии с физическими (например, помещения, строения, этажи) и/или логическими (например, отдел или рабочие группы бизнеса, кафедры университета) границами организации. Сегментация сети на подсети требует, чтобы каждая подсеть могла быть уникально идентифицирована. Сетевой идентификатор не может быть изменён, поскольку он представляет официальный публичный адрес организации. Поэтому доступна возможность создания подсетей только разделяя поле идентификатора хоста на две части: одна для идентификаторов хостов и другая для идентификатора подсетей. Часто это разделение считается заимствованием бит из поля идентификатора хоста для создания идентификаторов сетей. Создание подсетей добавляет дальнейшую иерархию к структуре IP адреса.

Классовая адресация IP
Мы не будем рассматривать классовую адресацию IP, поскольку она устарела и больше практически не применяется. У неё были недостатки – она умела делить диапазоны IP адресов только на слишком громоздкие куски сети и поэтому пространства IP адресов использовались неэффективно. Применительно к сегодняшней модели адресации, выражения вроде «сеть класса A», «сеть класса B» и «сеть класса C» не несут особого смысла.
Бесклассовая адресация IP
В настоящее время применяется бесклассовая адресация IP.
Как мы помним, каждый IP адрес состоит из 32 бит. В бесклассовой IP адресации идентификатор сети необязательно кратен октету (то есть 8 битам, 16 битам или 24 битам) как в случае с классовой схемой. Например, первые 13 бит могут представлять идентификатор сети, а оставшиеся 19 бит – идентификатор хостов.
Предположим, нам дан IP адрес 123.45.56.89 для которого известно, что первые 13 бит являются идентификатором сети. Наша задача – найти адрес сети.
Находим количество бит, оставшееся для идентификатора хостов:
Для поиска адреса сети (и для многих других операций связанных с вычислением IP адресов и диапазонов) удобнее использовать бинарную запись IP адреса, когда он разделён на 8-битные блоки.

или онлайн IP калькулятором преобразуем 123.45.56.89 в бинарную форму. Получаем, что IP 123.45.56.89 в бинарной форме это 01111011.00101101.00111000.01011001.
Поскольку мы уже выяснили, что 19 бит остаются для идентификации хостов, то мы просто заменяем последние 19 цифр нулями и получаем: 01111011.00101000.00000000.00000000 (тринадцать бит идентификатор сети + девятнадцать 0 бит для идентификатора хостов).
Теперь конвертируем обратно в соответствующие десятичные значения (можно сделать здесь). В результате мы получаем адрес сети 123.40.0.0. То есть эту подсеть можно записать как 123.40.0.0/13. Причём, если идентификатор хостов заменить всеми единицами, то мы получим последний IP адрес данного диапазона. В данном случае это будет 01111011.00101111.11111111.11111111. Конвертируем эту запись в привычный вид и получаем 123.47.255.255. То есть для IP адреса 123.45.56.89 с маской сети 13, блок можно записать как 123.40.0.0/13 или в виде диапазона как 123.40.0.0-123.47.255.255
Чтобы понимать, что такое маска сети в нотации СЕТЬ/МАСКА, нужно представить себе IP адрес в виде двоичного числа длиной 32 символа. Так вот, МАСКА — это количество первых чисел, которые не могут меняться для обозначения хостов. Например, при длине маски 15, выделенные полужирным биты не могут меняться для обозначения хостов 01111011.00101101.00111000.01011001.
Следовательно, чем длиннее маска, тем меньший размер блока IP. При максимальной маске /32, в подсети всего один IP адрес. При длине маски /24 в подсети будет 256 адресов. При маске /22 будет 1024 адресов.
Специальные диапазоны IP адресов
Имеются диапазоны, которые выполняют специальную функцию.
| Блок адресов | Диапазон адресов | Количество адресов | Сфера | Описание |
|---|---|---|---|---|
| 0.0.0.0/8 | 0.0.0.0–0.255.255.255 | 16777216 | Программное обеспечение | Текущая сеть (действительно только в качестве адреса источника). |
| 10.0.0.0/8 | 10.0.0.0–10.255.255.255 | 16777216 | Частная сеть | Используется для локальных (частых) сетей. |
| 100.64.0.0/10 | 100.64.0.0–100.127.255.255 | 4194304 | Частная сеть | Совместное адресное пространство для связи между поставщиком услуг и его абонентами при использовании NAT операторского уровня. |
| 127.0.0.0/8 | 127.0.0.0–127.255.255.255 | 16777216 | Сам хост | Используется для петлевых (loopback) адресов к локальному хосту. |
| 169.254.0.0/16 | 169.254.0.0–169.254.255.255 | 65536 | Подсеть | Используется для локальных адресов каналов между двумя хостами в одной ссылке, если не указан другой IP-адрес, такой как обычно получаемый с сервера DHCP. |
| 172.16.0.0/12 | 172.16.0.0–172.31.255.255 | 1048576 | Частная сеть | Используется для локальных (частых) сетей. |
| 192.0.0.0/24 | 192.0.0.0–192.0.0.255 | 256 | Частная сеть | Назначения протокола IETF. |
| 192.0.2.0/24 | 192.0.2.0–192.0.2.255 | 256 | Документация | Назначен как TEST-NET-1, документация и примеры. |
| 192.88.99.0/24 | 192.88.99.0–192.88.99.255 | 256 | Интернет | Зарезервированный. Ранее использовался для ретрансляции IPv6-IPv4 (включая блок адресов IPv6 2002::/16). |
| 192.168.0.0/16 | 192.168.0.0–192.168.255.255 | 65536 | Частная сеть | Используется для локальных (частых) сетей. |
| 198.18.0.0/15 | 198.18.0.0–198.19.255.255 | 131072 | Частная сеть | Используется для тестирования производительности межсетевого взаимодействия между двумя отдельными подсетями. |
| 198.51.100.0/24 | 198.51.100.0–198.51.100.255 | 256 | Документация | Назначен как TEST-NET-2, документация и примеры. |
| 203.0.113.0/24 | 203.0.113.0–203.0.113.255 | 256 | Документация | Назначен как TEST-NET-3, документация и примеры. |
| 224.0.0.0/4 | 224.0.0.0–239.255.255.255 | 268435456 | Интернет | Используется для многоадресной рассылки IP. (Бывшая сеть класса D). |
| 240.0.0.0/4 | 240.0.0.0–255.255.255.254 | 268435455 | Интернет | Зарезервировано для будущего использования. (Бывшая сеть класса E). |
| 255.255.255.255/32 | 255.255.255.255 | 1 | Подсеть | Зарезервировано для адреса назначения с «ограниченной трансляцией». |
IP калькуляторы
Как можно увидеть из примеров выше, для выполнения различных операций с IP адресами, например, с вычислением количество адресов в подсети, либо в конвертации различных способов написания диапазонов, нужно выполнять вычисления и преобразования из одной системы счисления в другую. Для упрощения можно использовать специально для этого предназначенные программы, они называются IP калькуляторы и рассмотрены в данной статье.
Также многие IP калькуляторы с расширенными функциями представлены онлайн:
Различные способы записи IP адресов
Кроме уже рассмотренного двоичного способа записи IP адресов, который может применяться, например, для вычисления идентификатора сети или последнего IP диапазона. Также различное написание IP адресов может использоваться для обхода фильтров (или правильного написания фильтров IP).
В качестве примера возьмём IP адрес 157.245.118.66, его можно открыть в веб-браузере по ссылке http://157.245.118.66 (хотя там и будет сообщение об ошибке SSL сертификата).
Этот же самый адрес можно записать в виде десятичного числа http://2650109506 и http://3111491919 (ссылки также работает).
Чтобы перевести в Long IP адрес a.b.c.d нужно выполнить следующие вычисления:
a * 255 3 + b * 255 2 + c * 255 1 + d * 255 0
Также можно конвертировать в шестнадцатеричное число (перед числом нужно поставить 0x): http://0x9DF57642
Октеты можно записывать в виде шестнадцатеричных чисел: http://0x9D.0xF5.0x76.0x42, а также в виде восьмеричных чисел (чтобы было понятно, что это восьмеричное число, перед ними стоят нолики): http://0235.0365.0166.0102
Можно смешивать в одном IP адресе сразу несколько вариантов написания: http://157.0365.0×76.0×42
При написании IP адреса можно пропускать нули:

Может ли IP адрес с нулём или 255 на конце быть действительным?
Как мы уже знаем, первый адрес в подсети (обычно он имеет 0 на конце) является идентификатором сети, а последний IP адрес (обычно он имеет 255 на конце) является широковещательным. Соответственно, эти IP адреса не могут быть назначены какому-либо хосту. Означает ли это, что любые IP адреса с нулём или 255 в последнем октете не существуют?
Нет, это неправильное предположение.
Посмотрите на следующий пример:

Аналогично и с IP адресом, имеющим в последнем октете 255:

Не удивляйтесь, это тоже действительные IP адреса и на адресах такого вида также работают сервера. Самый первый IP адрес, например в нашем случае это 138.201.0.0, является идентификатором сети и не может использоваться в качестве IP адреса хостов, но адреса 138.201.1.0, 138.201.2.0 и т. д. являются самыми обычными IP. Если бы диапазон был 138.201.2.0/24 (то есть 138.201.2.0-138.201.2.255), то самый первый IP являлся бы идентификатором сети и не мог бы использоваться для назначению хосту.
С помощью whois можно узнать, что IP адрес 138.201.1.0 входит в диапазон 138.201.0.0/16 (138.201.0.0-138.201.255.255):
В этом диапазоне действительно хостам не могут быть назначены IP адреса 138.201.0.0 (идентификатор сети) и 138.201.255.255 (широковещательный адрес), но адреса вроде 138.201.1.0 и 138.201.13.255 могут быть назначены хостам.
Одноадресная, широковещательная и многоадресная рассылка (Unicast, Broadcast и Multicast)
Unicast (Одноадресный адрес)
Одноадресная рассылка отличается от многоадресной (Multicast) и широковещательной (Broadcast) передачи, которые являются передачами «один ко многим».
Обычно используются методы одноадресной доставки по Интернет-протоколу, такими транспортными протоколами как протокол управления передачей (TCP) и протокол пользовательских дейтаграмм (UDP).
Broadcast (Широковещательный адрес)
Напротив, многоадресный (Multicast) адрес используется для адресации определённой группы устройств, а одноадресный (Unicast) адрес используется для адресации одного устройства.
Для связи сетевого уровня широковещательный адрес может быть конкретным IP-адресом. На уровне канала передачи данных в сетях Ethernet это конкретный MAC-адрес.
В сетях Интернет-протокола версии 4 (IPv4) широковещательные адреса являются специальными значениями в части IP-адреса, идентифицирующей хост. Значение «все единицы» было установлено как стандартный широковещательный адрес для сетей, поддерживающих широковещательную рассылку.
Как показано в приведённом ниже примере, для расчёта широковещательного адреса для передачи пакета во всю подсеть IPv4 с использованием пространства частных IP-адресов 172.16.0.0/12, которое имеет маску подсети 255.240.0.0, широковещательный адрес рассчитывается как 172.16.0.0 с побитовым ИЛИ с 0.15.255.255 = 172.31.255.255.
Пример вычисления широковещательного адреса
Для IP-адреса 255.255.255.255 существует специальное определение. Это широковещательный адрес нулевой сети или 0.0.0.0, который в стандартах Интернет-протокола означает эту сеть, то есть локальную сеть. Передача по этому адресу ограничена по определению, поскольку он никогда не пересылается маршрутизаторами, соединяющими локальную сеть с другими сетями.
Интернет-протокол версии 6 (IPv6) не реализует этот метод широковещательной передачи и, следовательно, не определяет широковещательные адреса. Вместо этого IPv6 использует многоадресную адресацию для многоадресной группы всех хостов. Однако протоколы IPv6 не определены для использования адреса всех хостов; вместо этого они отправляют и получают по определенным адресам многоадресной рассылки локального канала. Это приводит к более высокой эффективности, поскольку сетевые узлы могут фильтровать трафик на основе адреса многоадресной рассылки и не должны обрабатывать все широковещательные рассылки или многоадресные рассылки для всех узлов.
Multicast (Многоадресный адрес)
Мультивещание, многоадресное вещание (англ. multicast — групповая передача) — форма широковещания, при которой адресом назначения сетевого пакета является мультикастная группа (один ко многим). Существует мультивещание на канальном, сетевом и прикладном уровнях. Мультивещание не следует путать с технологией передачи на физическом уровне точка-многоточка.
В IPv4 для мультивещания зарезервирована подсеть 224.0.0.0/4, то есть это диапазон с 224.0.0.0 по 239.255.255.255.
Диапазон с 224.0.0.0 по 224.0.0.255 является локальной подсетью и является немаршрутизируемым. Все остальные диапазоны являются маршрутизируемыми. Но глобально маршрутизация разрешена только для подсетей 233.0.0.0/8 и 234.0.0.0/8. Но не все провайдеры поддерживают мультикаст-связность.
В Windows просмотреть arp таблицу можно командой
В Windows просмотреть членство в мультикастных группах можно командой:
В Linux просмотреть членство в мультикастных группах можно командой:



