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

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

IP-адрес хоста 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 к маршрутизатору)

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

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

Спасибо

1 ответ1

0

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

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, в котором маршрутизатор должен был бы сделать ARP, who-has широковещательную рассылку на интерфейсе B, после получения пакета для хоста в сети B.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .