Назад | Перейти на главную страницу

Подключение ARP в небольшой локальной сети cisco

Я чувствую себя таким хромым, когда сомневаюсь в этом, поэтому возникает вопрос: почему у меня нет связи?

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

Проблема в том, что когда я пытался пропинговать устройство в другой сети, например, с ПК1, на ПК0, происходит следующее событие

  1. PC1 broadcast arp, чтобы узнать MAC-шлюз R0
  2. R0 ответить arp на ПК1
  3. ПК1 отправляет пакет icmp R0
  4. R0 broadcast arp, чтобы узнать MAC PC0
  5. PC0 не отвечает, потому что «IP-адрес отправителя ARP-запроса находится в другой сети, чем принимающий порт».

Итак, я хочу знать, почему PC0 не отвечает? это базовый функционал ARP?

Очевидно, я настроил 2 статических маршрута (по одному на каждом маршрутизаторе) для маршрутизации пакетов в другую сеть на том же интерфейсе.

on R1 : ip route 192.168.1.0 255.255.255.0 FastEthernet0/0
on R0 : ip route 172.16.200.0 255.255.255.0 FastEthernet0/0

Большое спасибо за ответ!

========================= (РЕДАКТИРОВАТЬ) ОБНОВЛЕНИЕ / ОТВЕТ =================== =============

Прочитав RFC, я понимаю, почему это не работает. Ну, это просто, ARP не был разработан / разработан для ответа (ответа) на запрос, исходящий из другой сети. В этом случае я принудительно перенаправляю (через статический маршрут) в сеть, которой не принадлежит маршрутизатор. В какой-то документации говорится, что этот протокол находится между уровнем 2 и уровнем 3 (уровень 2.5 LOL), но на самом деле он никогда не через Layer3 отправляет информацию только о Layer3 в кадре. Поэтому, когда устройство получает запрос ARP из другой сети, он обрабатывает этот кадр (это его IP-адрес в кадре, который нужно преобразовать) и видит, что IP-адрес отправителя запроса ARP в другой сети автоматически отбрасывает этот кадр. Чтобы выполнить запрос arp в другой сети, нам нужно устройство Layer3 для работы в качестве прокси-сервера ARP, он просто ретранслирует запрос и ответ arp, очевидно, имеет соединение в каждой сети. Это странный дизайн и несколько глупо, но интересно узнать больше об ARP / LAN. Хочу поблагодарить людей, которые откликаются и пытаются помочь.

Если у вас есть маршрутизатор посередине, вы работаете с широковещательными доменами. Связь ARP / Layer-2 осуществляется явно между mac-адресами.

Что происходит в типичной ситуации:

ПК 1 (ip XXXX, mac XX: XX: XX: XX: XX: XX) хочет подключиться к ПК 2 (ip YYYY, mac YY: YY: YY: YY: YY: YY) ПК 1 замечает, что IP YYYY не "локально маршрутизируемый", поэтому он отправляет пакет на маршрутизатор (ip ZZZZ, mac ZZ: ZZ: ZZ: ZZ: ZZ: ZZ)

В этот момент пакет, покидающий ПК1, выглядит следующим образом: src ip = X.X.X.X src mac = XX: XX: XX: XX: XX: XX, dst ip = Y.Y.Y.Y, dst mac = ZZ: ZZ: ZZ: ZZ: ZZ: ZZ

коммутатор «переключает» пакет на маршрутизатор (поскольку он уже знает, к какому порту подключен ZZ: ZZ: ZZ: ZZ: ZZ: ZZ), маршрутизатор знает, что IP-адрес YYYY находится на другом интерфейсе, и направляет пакет на ПК2 соответственно.

в этот момент пакет, покидающий маршрутизатор, выглядит следующим образом: src ip = XXXX src mac = ZZ: ZZ: ZZ: ZZ: ZZ: ZZ, dst ip = YYYY, dst mac = YY: YY: YY: YY: YY: YY

PC2 принимает пакеты на свой MAC-адрес ... а также отмечает, что IP-адрес предназначен для него самого ... и затем делает все, что угодно с пакетом.

ПК1 ни разу не знал MAC-адрес. Нет прямого способа узнать MAC-адрес устройств, которые не находятся в одном широковещательном домене ... потому что «физический адрес» (или Mac) используется только для локального общения с локально подключенными устройствами.