Если вы все еще плохо разбираетесь в сетевых технологиях, это может быть немного ошеломляющим, когда вы впервые начнете узнавать о различных типах задействованных адресов и о том, как они работают вместе. Сегодняшний пост с вопросами и ответами SuperUser призван развеять путаницу для любопытного читателя.
Сегодняшняя сессия вопросов и ответов проходит благодаря SuperUser - подразделению Stack Exchange, группы веб-сайтов вопросов и ответов, управляемой сообществом.
Изображение любезно предоставлено Википедия .
Вопрос
Читатель SuperUser user2449761 хочет узнать больше о необходимости в адресах Ethernet / MAC:
Не понимаю, зачем нужны адреса Ethernet / MAC. Конечно, все компьютеры можно было бы просто подключить к единой сети и использовать IP-адреса для связи?
Например, в Ethernet есть такой механизм:
- Компьютер с IP-адресом 192.168.1.1 (X.1) хочет отправить пакет на адрес 192.168.1.2 (X.2).
- X.1 использует ARP для получения MAC-адреса X.2.
- Для этого X.1 необходимо отправить пакет на все компьютеры в сети, и только один ответит.
- X.1 получает MAC-адрес и отправляет пакет.
Проще было бы сделать это за один шаг:
- X.1 отправляет пакет всем компьютерам в сети, и только X.2 обрабатывает его, остальные игнорируют.
Другой мой вопрос: зачем нужны IP-адреса, если все устройства имеют уникальные MAC-адреса?
Зачем нужны адреса Ethernet / MAC?
Ответ
У участника SuperUser Пола есть для нас ответ:
В разные сетевые уровни есть ли возможность их замены для разных технологий. Два уровня, о которых вы здесь говорите, - это уровни 2 и 3. Уровень 2 в этом сценарии - это Ethernet, из которого возникают MAC-адреса, а уровень 3 - это IP.
Ethernet работает только на локальном уровне между сетевыми устройствами, подключенными к широковещательной сети «канал передачи данных», тогда как IP является маршрутизируемым протоколом и может нацеливаться на устройства в удаленных сетях.
Требования к каждому из этих слоев разные. Ethernet определяет семейство технологий, которые позволяют отправлять и получать пакеты между сетевыми устройствами, тогда как IP определяет протокол, который позволяет пакетам данных проходить через несколько сетей.
Ни один из них не зависит от другого, что придает сетям гибкость. Например, вы можете выбрать подключение к своему Интернет-сервису с помощью IP-адреса через Ethernet, но во внутренней сети вы можете выбрать использование IP-адреса на бумаге (когда кто-то записывает содержимое каждого пакета и физически передает его на другую машину и введите его). Ясно, что это не будет особенно быстро, но это все равно будет IP, если человек, носящий с собой бумажки, соблюдает правила IP-маршрутизации.
В реальном мире существуют разные протоколы передачи данных, которые вы уже используете (хотя их схемы адресации одинаковы): 802.3 - Ethernet и 802.11 - Wi-Fi.
IP не волнует, что такое нижележащий уровень. Точно так же IP может быть заменен на разные протоколы сетевого уровня (при условии, что это происходит для всех участников), например Асинхронный режим передачи (ATM) .
Хотя нет ничего, напрямую препятствующего созданию протокола, охватывающего уровни 2 и 3, он был бы менее гибким, менее привлекательным и поэтому маловероятным.
Обязательно прочитайте остальную часть оживленной дискуссии по ссылке ниже!
Есть что добавить к объяснению? Отключить звук в комментариях. Хотите узнать больше ответов от других технически подкованных пользователей Stack Exchange? Ознакомьтесь с полной веткой обсуждения здесь .