Какая польза от MAC-адреса в ARP-пакете ответа/запроса, когда мы можем извлечь его из заголовка Ethernet

Я запутался, зачем нам нужны mac-адреса в пакете ARP, когда мы можем извлечь его из заголовка Ethernet. Просто оставьте IP-адреса и другие поля такими, какие они есть, и удалите MAC-адрес. Мы можем извлечь их из Ethernet. AM Я что-то упускаю в своем мышлении.

Спасибо.


person Invictus    schedule 14.02.2012    source источник
comment
Это просто потому, что протокол описывает сообщения вида Хост с MAC X имеет сетевой адрес Y, а не сообщения типа Мой собственный сетевой адрес — Y. Ответ потенциально может исходить от третьей стороны. Кроме того, ARP не предназначен специально для Ethernet; скорее, есть один ARP для каждого поддерживаемого уровня канала многоадресной рассылки.   -  person Kerrek SB    schedule 14.02.2012
comment
Что вы подразумеваете под третьей стороной???.. Приведите мне несколько примеров. ОЧЕНЬ интересно узнать.   -  person Invictus    schedule 14.02.2012
comment
@KerrekSB, на самом деле, ARP был специально разработан для Ethernet. На самом деле, RFC называется Протокол разрешения адресов Ethernet. Другие протоколы LAN также адаптировали ARP, поскольку большинство из них имеют 48-битные MAC-адреса, такие как Ethernet, но он явно был разработан для Ethernet.   -  person Ron Maupin    schedule 29.01.2016


Ответы (2)


зачем нам нужны mac-адреса в пакете ARP, когда мы можем извлечь его из заголовка Ethernet

Отсутствие MAC-адресов в теле пакета ARP приведет (как минимум) к следующему:

  1. ARP не будет работать через мост L2: мост должен перенаправить входящий запрос ARP, установив MAC-адрес собственный исходящий интерфейс в поле источника заголовка протокола L2. Ответы (если они не переданы в эфир) будут направляться самому мосту и не пересылаться. (см. здесь таблицу, показывающую и сравнение полей L2 и L3 сообщений ARP.)

  2. Любая реализация ARP будет зависеть от базового протокола MAC: коду, принимающему сообщения ARP, потребуется информация о где искать исходный MAC-адрес на уровне MAC, и эта информация должна быть доступна для ARP. код.

person Konstantin Shemyak    schedule 28.01.2016

Запрос ARP отправляется с широковещательным MAC-адресом получателя и MAC-адресом отправителя в качестве исходного MAC-адреса. Это связано с тем, что отправитель не знает MAC-адреса получателя и запрашивает его. Широковещательный MAC-адрес назначения гарантирует, что каждый хост в локальной сети получит запрос.

Ответ ARP имеет исходный адрес отправителя в качестве адреса получателя, поэтому ответ направляется только исходному отправителю и не беспокоит все узлы в локальной сети.

person Ron Maupin    schedule 28.01.2016