Пинг между хостами IPv6, подключенными к маршрутизатору

Пинг между хостами IPv6, подключенными к маршрутизатору

Я пытаюсь понять, как работает команда ping в такой ситуации:

Адрес IPv6 хоста A: 2001:A::A (MAC-адрес AA-BB-CC-00-11-22)

Адрес Ipv6 хоста B: 2001:B::B (MAC-адрес 22-44-66-00-EE-DD)

Эти два хоста подключены к маршрутизатору, у которого есть по одному интерфейсу для каждого отдельного префикса, например, хост A подключен к интерфейсу маршрутизатора 2001:A::1 (MAC 77-88-99-00-DD-22), а хост B подключен к интерфейсу маршрутизатора 2001:B::1 (MAC 11-66-AA-00-33-88).

Предположим, что кэши на всех устройствах пусты, включая маршрутизатор. Каковы должны быть последствия команды ping из A в B? ping 2001:B::B

1) хост A запрашивает маршрутизатор для своего шлюза по умолчанию (A нужен MAC)

2) объявление маршрутизатора от маршрутизатора к хосту A

3) эхо-запрос icmp от A к маршрутизатору (от MAC-адреса A к MAC-адресу маршрутизатора)

4) Должен ли маршрутизатор выполнять обнаружение соседей, чтобы найти MAC-адрес B или нет?

Все остальное является следствием пункта 4.

Спасибо

решение1

Насколько я понимаю, шаги 1 и 2 не являются функцией запроса ICMP, а просто связаны с подключением к сети IPv6. Это отличается от IPv4 тем, что NIC может оставаться тихим и просто слушать сетевой трафик при определенных обстоятельствах, пока либо его хост не получит что-то для передачи, либо в ответ на широковещательную передачу канального уровня.

RA из шага 2 номинально назначает себя шлюзом по умолчанию.

Поэтому, когда хост A отправляет эхо-запрос ICMPv6 хосту, не находящемуся в локальной сети, он будет передавать его по одноадресной рассылке на IPv6-адрес маршрутизатора, в данном случае 2001:A::1. MAC-адрес интерфейса маршрутизатора уже был объявлен на этапе обнаружения соседей, поэтому никаких дополнительных ARP-запросов создавать не нужно: хост A будет иметь предварительно сопоставленный 2001:A::A (MAC-адрес AA-BB-CC-00-11-22).

Маршрутизатор получит пакет от хоста A для хоста B. Маршрутизатор знает, что хост B напрямую подключен к интерфейсу 2001:B::1, а также MAC-адрес хоста B, поэтому он будет передавать одноадресный запрос ICMPv6 на хост B.

MAC-адрес хоста B уже был бы определен независимо от запроса ICMPv6, когда хост B был впервые подключен к маршрутизатору. Это отличается от IPv4, в котором маршрутизатор должен был бы выполнить широковещательную who-hasпередачу ARP на интерфейсе B при получении пакета для хоста в сети B.

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