Два хоста с разными подсетями на уровне 2 переключаются - почему это работает?

Я только готовлюсь к тесту в колледже на предмет взаимодействия. В настоящее время я пытаюсь разобраться с подсетями и обнаружил, что два устройства, подключенные к коммутатору 2-го уровня, могут общаться друг с другом, хотя у них разные подсети!

Устройство A: маска подсети 192.168.0.1: 255.255.255.0

Устройство B: маска подсети 192.168.1.1: 255.255.255.0

Вопрос в том, почему я могу пинговать с устройства A на B и наоборот? Там нет роутера, только два устройства и коммутатор.

Насколько я понимаю, они не должны видеть друг друга. ОС не должна даже отправлять запрос ARP, когда неизвестный IP находится в другой подсети.

Может ли это быть проблемой кеширования?

2 ответа

Многие коммутаторы Cisco Layer 2 способны пропинговать подключенные системы.

Возможно, на вашем компьютере есть запись маршрута, которая отправляет пакет, который не соответствует никакой другой конкретной записи маршрута на ваш маршрутизатор. Это также называется шлюзом по умолчанию. Обычно компьютеры в одной и той же подсети подключаются напрямую и в большинстве случаев не проходят через шлюз.

Чтобы объяснить это более четко, если вы работаете на компьютере с Linux, запустите route -n,

Destination     Gateway         Genmask
14.0.1.0        0.0.0.0         255.255.255.0
0.0.0.0         172.16.80.1     0.0.0.0      

Первая запись имеет пункт назначения в диапазоне от 14.0.1.0 до 14.0.1.255. Шлюз для этого матча - 0.0.0.0. Из таблицы следует, что эти системы связаны напрямую. С другой стороны, запись 0.0.0.0 в поле назначения будет сопоставлена, когда пакет не совпадет ни с одной из других записей. Шлюзом для этого является адрес маршрутизатора (в моем случае это 172.16.80.1). Все пакеты, которые не имеют IP-адресов в указанном выше диапазоне, отправляются на маршрутизатор для дальнейшей маршрутизации. Как только маршрутизатор получает пакет, он принимает дальнейшее решение на основе информации о маршрутизации, которой он обладает.

В вашем случае маршрутизатор знает, что другая подсеть подключена к нему и, следовательно, передал ваш пакет в эту подсеть.

Присмотритесь к ARP. ARP будет адресован маршрутизатору в случае пинга в другую подсеть. С другой стороны, если пинг в сети, ARP будет непосредственно к месту назначения. Это обычный случай. Конечно, все зависит от таблиц маршрутизации в вашей системе. Вы всегда можете заставить все пакеты проходить через шлюз или нет пакетов для прохождения через шлюз.

Другие вопросы по тегам