Найдите компьютер в сетевой топологии

Я задаю себе этот вопрос уже несколько дней и не могу найти четкого ответа.

Представьте себе сеть с несколькими комнатами, каждая комната со своим коммутатором (уровня 2). Затем они подключаются по топологии «звезда» к другому коммутатору, который затем подключается к маршрутизатору. Все клиенты получают IP-адреса из одного диапазона, все клиенты находятся в одной подсети и в одной VLAN.

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

Целью будет иметь возможность рисовать автоматизированные карты распределения клиентов в сети, но, как я уже сказал, без участия коммутатора (например, доступ к его API или что-то в этом роде).

С уважением ко мне


person Christian    schedule 29.01.2015    source источник


Ответы (2)


Боюсь, вы правы: в общем, в «нормальной» сети (что означает: в сети только со стандартными коммутаторами и маршрутизаторами) сделать это невозможно.

Только если бы коммутаторы были управляемыми, вы могли бы написать скрипт, который опрашивает arp-таблицы коммутаторов, но, конечно, это не работает с неуправляемыми коммутаторами.

person Yurik    schedule 16.06.2015

Я понял, что нет никакого способа сделать это. Проблема в том, что обычный сетевой коммутатор, работающий на уровне 2 модели OSI, не «видим» для таких инструментов, как traceroute и тому подобное.

Если вы хотите выполнить трассировку, скажем: google.com, ваше приложение трассировки отправляет пакет с TTL, равным 1, на шлюз по умолчанию. Затем ваш шлюз по умолчанию уменьшает TTL и отбрасывает пакет, поскольку он достиг TTL, равного 0. Из-за этого он отвечает вашему компьютеру, и ваш компьютер может записывать, откуда он получил первый ответ. Затем он снова отправляет пакет на google.com, но на этот раз с TTL, равным 2, и процесс начинается с самого начала.

Теперь вы не можете делать с коммутаторами то, что вы можете делать с маршрутизаторами, потому что (обычный уровень 2) коммутаторы не знают об IP...

Cisco предлагает утилиту traceroute уровня 2, но она ограничена экосистемой cisco и работает только с оборудованием cisco.

Итак, я боюсь, что ответ таков, что это вообще невозможно.

person Christian    schedule 17.03.2015