Можно ли сопоставить внутренний IP-адрес с портом коммутатора?

Я пытаюсь найти компьютер с определенным IP-адресом во внутренней сети. Я определил имя компьютера из DNS, но в этом случае оно мне не помогает.

Просто интересно, могу ли я как-то привязать IP к порту коммутатора и отследить его оттуда? Если так, то как?

6 ответов

Решение

Учитывая IP-адрес, вы должны быть в состоянии найти MAC-адрес соответствующего хоста.

arp -a

И в Windows, и в Linux вы увидите arp-кеш этого хоста, сопоставляя IP-адреса с MAC-адресами. (Обратите внимание, что это нужно будет выполнить на машине, которая находится в той же IP-подсети, что и машина, которую вы пытаетесь найти).

Когда у вас есть MAC-адрес, войдите в систему на коммутаторе, к которому вы подозреваете мошеннический хост, и найдите этот адрес в таблице MAC-адресов. (Таблица MAC-адресов также называется таблицей мостов или таблицей CAM).

Например, на коммутаторах на базе Cisco IOS следующая команда:

show mac-address-table address <MAC address>

Покажет вам порт, на котором последний MAC-адрес был последний раз. Если полученный в результате порт является ссылкой на другой коммутатор, войдите в систему на этом коммутаторе и повторите команду. Повторяйте до тех пор, пока не получите порт хоста, и у вас должен быть виновник.

Обратите внимание, что этот подход будет работать только при наличии управляемого коммутатора, который позволяет запрашивать его таблицу MAC-адресов. В противном случае это будет случай ручного устранения; найдите каждый порт, который, как вы знаете , не является мошенническим, пока у вас не останется один порт, на который вы не сможете рассчитывать. Удачи.

Как уже упоминалось, нет прямого способа определить, какой IP подключен к определенному порту коммутатора. Причина в том, что коммутатор Ethernet работает на уровне L2 модели OSI и обычно не проверяет уровни более высокого уровня (уровень 3 -> IP-адрес). (Есть некоторые исключения в более новом оборудовании)

Одно важное замечание: чтобы использовать трюк ping / ARP, вам нужно использовать устройство в той же VLAN или подсети, что и устройство, которое вы ищете. В противном случае вы увидите только MAC-адрес шлюза по умолчанию в таблице ARP.

Вот процедура, которую я рекомендую, если это возможно.

Источник и назначение в одной VLAN

  1. Введите команду ping для устройства, которое вы пытаетесь найти.
  2. Как только он вернется успешно, посмотрите в таблице ARP, чтобы найти MAC-адрес указанного устройства.
  3. Войдите на сам коммутатор и просмотрите таблицу MAC-адресов для адреса, найденного в шаге 2. (Таблицу MAC-адресов также можно назвать таблицей CAM). Таблица MAC-адресов отображает MAC-адреса для переключения портов.

Источник и назначение в разных VLAN

  1. С основного маршрутизатора или предполагаемого шлюза по умолчанию выполните команду ping. Очевидно, это работает лучше всего, если вся маршрутизация выполняется на одном устройстве.
  2. Если имеется несколько интерфейсов L3, вам может потребоваться "пройти" по сети, идущей от интерфейса L3 к интерфейсу L3, выполняя проверку ping / ARP, пока не найдете тот, который служит шлюзом по умолчанию для устройства, которое вы ищете.
  3. Как только вы найдете его, вы можете войти в коммутатор и найти таблицу MAC-адресов, чтобы найти порт.

Проверьте кэш ARP на вашем коммутаторе (-ах), чтобы найти MAC и порт коммутатора, связанный с этим IP-адресом устройства. Эти статьи должны помочь вам:

Вы не указали, какие операционные системы вам доступны в сети, но большинство из них имеют команду arp. Вы можете использовать команду arp, чтобы узнать, какой MAC-адрес у хоста с заданным именем хоста (при условии, что вы находитесь в той же сети, что и хост).

Затем вы должны проверить в ARP-кешах ваших коммутаторов, чтобы найти, на каком порту находится этот MAC-адрес.

Если коммутатор поддерживает snmp, вы можете получить информацию о таблицах mac удаленно, для которой необходимо сопоставить физический порт и MAC-адрес, подключенный к порту.

Между физическими интерфейсами и IP-адресами нет сопоставления 1:1. Один порт на коммутаторе может обрабатывать трафик для многих машин (если другой коммутатор подключен последовательно), а один порт коммутатора может пересылать трафик для более чем одного IP-адреса (если машина является многодомной).

Если у вас достаточно продвинутый коммутатор, вы можете посмотреть на экранах управления коммутатора, чтобы увидеть, перечисляет ли он MAC-адреса, которые он слышал на конкретном порту.

В качестве альтернативы, если предположить, что компьютер, который вы хотите найти, не слишком далеко (логически), вы можете попробовать отправить на него большой объем трафика, скажем, ping -f, что должно позволить вам отслеживать порт, на котором находится машина, по индикаторам активности.

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