Узлы в однокоммутируемой сети Ethernet, управляемой dnsmasq, взаимодействуют напрямую или через маршрутизатор?

Узлы в однокоммутируемой сети Ethernet, управляемой dnsmasq, взаимодействуют напрямую или через маршрутизатор?

Существуют разные варианты ответа на этот вопрос, но я не могу быть уверен, что был задан вопрос о моей конкретной ситуации.

Я настраиваю простую сеть Ethernet, которая выглядит следующим образом:

введите описание изображения здесь

На узле 0 ("rpi1") я запускаю dnsmasq как DNS- и DHCP-сервер. Вот его часть /etc/dnsmasq.conf(без деталей MAC-адреса):

# Assign static IPs to cluster members
# Format = MAC:hostname:IP
dhcp-host=ZZ:YY:XX:WW:VV:UU,rpi1,10.0.0.1 # Node 0
dhcp-host=ZZ:YY:XX:WW:VV:UU,rpi2,10.0.0.2 # Node 1
dhcp-host=ZZ:YY:XX:WW:VV:UU,rpi3,10.0.0.3 # Node 2
dhcp-host=ZZ:YY:XX:WW:VV:UU,rpi4,10.0.0.4 # Node 3

Оба аспекта DNS и DHCP работают. Каждому узлу назначается его предполагаемый 10.0.0.XIP-адрес, и я могу разрешить любой домен на любом узле, запустив, например, dig rpi4(-> ... 10.0.0.4). И, например, если я внутри rpi2, то я могу попасть в rpi3 с помощью ssh rpi3, и я могу, например ping rpi4, или ping 10.0.0.4и получить 0% потери пакетов.

Однако мне не ясно, осуществляется ли связь между узлами напрямую через коммутатор или через rpi1 (который управляет dnsmasq и предоставляет услуги маршрутизатора).

Если узлы взаимодействуют напрямую, то я предполагаю, что они должны знать MAC-адреса друг друга, чтобы посылать кадры, которые идут друг другу напрямую через коммутатор. Если это так, то мои вопросы вкратце таковы:

  1. В какой момент узел узнает MAC-адреса других узлов?
  2. И как я могу проверить MAC-адрес, например, rpi3 на rpi2, чтобы убедиться, что они узнали друг о друге?

Заранее спасибо!

решение1

В какой момент узел узнает MAC-адреса других узлов?

Сначала они запросят IP-адреса других узлов у DNS-сервера. После этого они отправят запрос 'arp' всем узлам, и узел, имеющий IP-адрес, ответит на этот запрос 'arp' своим MAC-адресом.

И как я могу проверить MAC-адрес, например, rpi3 на rpi2, чтобы убедиться, что они узнали друг о друге?

«arp -a» обычно выдает вам таблицу ARP, и вы можете проверить записи, чтобы увидеть, узнали ли они MAC-адреса друг друга.

Связанный контент