Путаница из-за EUI-64 и заголовка кадра Ethernet - PullRequest
0 голосов
/ 31 декабря 2018

Сетевой заголовок кадра определяется как:

struct ethernet_header {
  uint8_t dest_address[6];
  uint8_t source_address[6];
  uint16_t length_or_ethertype;
};

Насколько я понимаю, 6-октетный формат MAC-адреса теперь формально известен как EUI-48.Я также читал, что существует другой формат, известный как EUI-64, который описывает 8-октетный MAC-адрес.

Но я очень озадачен назначением EUI-64.На первый взгляд, очевидная причина EUI-64 заключается в том, чтобы справиться с исчерпанием адреса, когда у нас на Земле более 2 ^ 48 уникальных устройств.Тем не менее, вся доступная информация, которую я могу найти Googling о EUI-64, говорит только об этом в отношении IPv6.Таким образом, EUI-64 предоставляет способ сопоставления 48-битного MAC-адреса с адресом IPv6.

Но, кроме IPv6, имеет ли EUI-64 какое-либо другое назначение?Был ли EUI-64 изобретен исключительно для решения проблемы, связанной с IPv6, или он также был изобретен для борьбы с возможным исчерпанием 48-битных MAC-адресов?

Я предполагал, что EUI-64 в первую очередь предназначен для решения проблемы возможного исчерпания 48-битных MAC-адресов, то есть будет создано много новых аппаратных устройств с 64-битными MAC-адресами (или расширенными уникальными идентификаторами)используйте формально правильный термин.) Но если это так, как любое существующее сетевое оборудование, такое как маршрутизаторы и коммутаторы, сможет определить разницу между пакетом с 48-битным адресом источника и назначения и пакетом с64-битный адрес источника и назначения?

Поскольку первые два поля заголовка Ethernet являются 2 48-битными адресами источника / назначения, мы не можем просто заменить эти поля 64-битными источником / адресатомадресов, потому что любое программное обеспечение, проверяющее пакет, не будет знать, как определить разницу, так как нет адресов типа или типа, предшествующих адресам.(Таким образом, например, для заголовка IP удобно использовать поле 4-битной версии в качестве первых 4-битов заголовка, поэтому мы легко можем различить IPv4 и IPv6).

Итак, мой вопрос(s):

  1. Предназначен ли EUI-64 для решения проблемы исчерпания 48-битного MAC-адреса или он предназначен только для сопоставления MAC-адресов с IPv6-адресами?

  2. Если EUI-64 предназначен для решения возможного исчерпания 48-битного адреса, как сетевое программное обеспечение может различать пакеты Ethernet, содержащие 48-битные и 64-битные MAC-адреса?

1 Ответ

0 голосов
/ 01 января 2019

Поскольку EUI-48 выделен в 24-битных блоках OUI, адресное пространство заканчивается.Тем не менее, он используется и будет использоваться для очень популярных сетей Ethernet и WiFi.

EUI-64 является расширенным набором EUI-48 и предназначен для «новых» приложений.В настоящее время он используется для Firewire, ZigBee и, в форме EUI-48, для IPv6.

...