На коммутаторе Cisco Catalyst мне нужно найти, к какому порту подключено конечное устройство.
У меня есть IP-адрес/имя хоста.
Как быстро найти порт?
Ответ зависит от того, является ли коммутатор коммутатором уровня 2 или уровня 3. То есть, коммутатор только коммутирует и передает трафик на другое устройство для маршрутизации, или он сам принимает решения о маршрутизации через SVI (коммутируемые виртуальные интерфейсы).
На коммутаторе уровня 3 порт можно найти с помощью нескольких простых команд на устройстве. Однако на коммутаторе уровня 2 для поиска порта необходимо войти как в коммутатор, так и в устройство, выполняющее маршрутизацию.
В любом случае команды одинаковы, просто выполняются на двух разных устройствах для коммутатора уровня 2.
Войдите в коммутатор и выполните следующую команду (где ipaddress - это ip-адрес узла, который вы пытаетесь найти:
show ip arp *ipaddress*
Результат должен выглядеть примерно так, как показано ниже, и дать вам mac-адрес устройства (я выделил mac-адрес жирным шрифтом).
LYKINS-1861#show ip arp 172.20.1.100
Протокол Адрес Возраст (мин) Аппаратное обеспечение Адрес Тип интерфейса
Интернет 172.20.1.100 0 **28cf.da1d.1b05** ARPA Vlan10
Теперь выполните одну из следующих команд (где mac-адрес - это аппаратный адрес из предыдущего шага). В зависимости от платформы Cisco, иногда команда может быть указана в любом виде.
show mac address-table address *mac-address*
show mac-address-table address *mac-address*
Вывод должен выглядеть примерно так, как показано ниже, искомый порт должен быть указан как Destination Port:
LYKINS-1861#show mac-address-table address 28cf.da1d.1b05
Адрес назначения Адрес Тип VLAN Порт назначения
------------------- ------------ ---- --------------------
28cf.da1d.1b05 Динамический 10 **FastEthernet0/1/1**
Выясните, какое устройство выполняет маршрутизацию для этого коммутатора (возможно, вам придется обратиться к сетевой документации). Иногда это "Router on a Stick", когда сети VLAN уровня 2 транслируются на маршрутизатор для решений уровня 3.
Войдите в устройство маршрутизации и выполните следующую команду (где ipaddress - это ip-адрес узла, который вы пытаетесь найти:
show ip arp *ipaddress*
Вывод должен выглядеть примерно так, как показано ниже, и дать вам mac-адрес устройства (он выделен жирным шрифтом).
LYKINS-1861#show ip arp 172.20.1.100
Протокол Адрес Возраст (мин) Аппаратное обеспечение Адрес Тип интерфейса
Интернет 172.20.1.100 0 **28cf.da1d.1b05** ARPA Vlan10
Теперь войдите в коммутатор второго уровня.
На этом устройстве выполните одну из следующих команд (где mac-адрес - это аппаратный адрес из предыдущего шага). В зависимости от платформы Cisco, иногда команда указывается в любом виде.
show mac address-table address *mac-address*
show mac-address-table address *mac-address*
Вывод должен выглядеть примерно так, как показано ниже, искомый порт должен быть указан как Destination Port:
LYKINS-1861#show mac-address-table address 28cf.da1d.1b05
Адрес назначения Адрес Тип VLAN Порт назначения
------------------- ------------ ---- --------------------
28cf.da1d.1b05 Динамический 10 **FastEthernet0/1/1**
Во-первых, вам нужно узнать MAC-адрес, поэтому войдите в машину в той же VLAN и посмотрите на ее таблицу соседей - Windows: netsh int ipv4 show neigh
, Linux: ip nei
Cisco: show ip arp x.x.x.x
. Как только вы получите это...
Если это задание обнаружения на коммутаторе второго уровня, сделайте show mac address-table | i 0011.2233.4455
- заменив байты mac-адреса соответствующим образом.
Если же это маршрутизатор, используйте show ip arp | i 0011.2233.4455
- снова заменяя MAC соответствующим образом. Очевидно, что когда вы получали MAC, если оказалось, что он напрямую подключен к этому маршрутизатору, вы уже закончили.
Однако в долгосрочной перспективе я от души рекомендую вам настроить LLDP (если не получится, то CDP) для ваших хостов, чтобы вы могли идентифицировать их с любой стороны. lldpd - это превосходный LLDP демон для Linux, который также поддерживает CDP, EDP, SONMP и FDP. Если в настоящее время вы можете связаться с хостом и он работает под управлением linux/BSD, я'бы рекомендовал пропустить все вышеперечисленное и просто включить LLDP.
Независимо от того, выполняет ли ваш коммутатор пересылку кадров (уровень 2) или маршрутизацию пакетов (уровень 3), следующие действия должны работать, если коммутатор имеет IP-адрес управления в той же подсети, что и узел, который вы хотите найти:
show ip arp
) и соответствующий ему интерфейс.show mac-address table address [the address]
.Быстро?
терминальный монитор
; нажмите ввод.00: 00: 47:% LINK-3-UPDOWN: интерфейс GigabitEthernet2 / 0/1, изменено состояние на down
Обратите внимание, что если вы подключаетесь к коммутатору из конечной точки, которую вы отключаете, вы не получите сообщение syslog, поскольку у вас будет отключенное подключение.
Если вы выполните команду «Показать адрес-таблицу mac» x, вы также увидите, что этот MAC изучается на магистральном порту. Если это так (и если вы подключены к другому устройству Cisco), используйте «show cdp nei» и войдите в это устройство и выполните те же действия, что и выше. Продолжайте делать это, пока не увидите, что MAC-адрес изучается на не-ствольном порту.
Включить отслеживание IP-устройства на коммутаторе. ИСПОЛЬЗУЙТЕ следующие команды
ip устройство слежения задержка ip-зонда отслеживания устройства 30
Вторая команда предотвращает появление повторяющейся ошибки ip на ПК. Для этого есть ошибка Cisco, но я не могу вспомнить идентификатор.
Хотелось бы, чтобы более старый код 12.4 или код 15 включал вышеизложенное.
Вы хотите найти:
Я создал несколько сценариев питона, чтобы помочь с этим и документировать устройства, подключенные к краевым коммутаторам.
Конкретные репозитории: pingSVI - принимает выходные данные «sh run | i ^ interface | ^ _ip address», анализирует подсети и проверяет все хосты. Заполняет таблицу arp коммутатора для устройств, которые истекли.
ARP-Sort - создает базу данных IP-Mac-адресов json из основного коммутатора
MAC2Manuf - берет выходные данные «show mac add int» и использует базу данных json для создания списка IP-MAC-Port-Manufacture вне краевого переключателя.