Как получить ARP-таблицу коммутатора через интерфейс командной строки?

Как получить ARP-таблицу коммутатора через интерфейс командной строки?

Я мог видеть информацию о подключенном устройстве на пользовательском интерфейсе сетевого коммутатора. Возможно ли запросить у коммутатора его таблицу ARP с помощью командной строки или PowerShell?

Следующие подробности были добавлены после написания третьего комментария и первых двух ответов.

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

В этот момент я попытался отправить PING-запрос на широковещательный IP-адрес сети, чтобы эксплуатироватьарпкоманду Windows, но ни один из хостов мне не ответил. То есть таблица ARP нашего компьютера не была обновлена ​​новыми записями. Вероятно, современные системы на базе Linux и Windows не поддерживают свойство широковещания компьютерных сетей из-за обоснованных соображений безопасности.

Вот почему я подумал о том, чтобы извлечь ARP-таблицу коммутатора из хоста через командную оболочку хоста.

решение1

Запрос информации с сетевого устройства требует, чтобы устройство изначально имело интерфейс управления. Это означает, что неуправляемое устройство вообще не может быть запрошено.

Существует 3 интерфейса управления: командная строка, графический интерфейс и SNMP. Если устройство имеет последовательный интерфейс, можно подключить компьютер напрямую к нему для доступа к CLI. На удаленных устройствах доступ к CLI осуществляется с помощью SSH или telnet; последний вариант настоятельно не рекомендуется из соображений безопасности. Графические интерфейсы основаны на браузере.

Какие интерфейсы доступны для устройства, указано (или, по крайней мере, должно быть указано) в спецификациях устройства. Маршрутизаторы Soho обычно имеют только GUI, но CLI может быть доступен для некоторых устройств. SNMP встречается крайне редко.

Сетевое устройство — это просто компьютер, предназначенный для выполнения очень специфических задач. Как и любые компьютеры, они имеют операционные системы, разработанные производителем. Cisco IOS, ArubaOS, ExtremeXOS, Juniper OS и т. д. отличаются так же, как и любые другие компьютерные ОС. Cisco IOS не распознает команды ArubaOS.

SNMPэто протокол, который каждое приложение сетевого управления использует для управления устройствами. Существует 3 более или менее несовместимых версии - например, коммутатор, имеющий только интерфейс SNMPv1, вообще не может быть опрошен с помощью SNMPv2c.

Для управления устройствами SNMP используетИдентификаторы объектов(OID). Они имеют стандартизированную структуру, начинающуюся со строки 1.3.6.1.4.1. Это читается так:

1     iso - ISO is the name of the group that launched the OID standard 
.3   org - Organization specified next to this figure 
.6   dod - The US Department of Defense 
.1   internet - Determines that communication will be through the internet 
.4 private - States that the device is manufactured by a private company 
.1 enterprise - States that the manufacturer is an enterprise

Следующий элемент в строке — это номер частного предприятия (PEN), который идентифицирует производителя. Этоназначено IANA. Например, для устройств Cisco строка начинается с 1.3.6.1.4.1.9, для устройств HP — с 1.3.6.1.4.1.11, для устройств Intel 1.3.6.1.4.1.343и т. д.

Существует несколько реализаций SNMP для командной строки.Net-SNMPиOpenSNMPявляются практически отраслевыми стандартами. Их использование имеет несколько препятствий, выходящих за рамки версии протокола:

  • Как реализовать SNMP в устройстве, полностью зависит от производителя. Объект, присутствующий в ACME GreatSwitch 2000, может не быть реализован в ACME GS 1000; объект, присутствующий в ACME GS 2000, работающем под управлением ACMEOS 42, может быть недоступен в ACMEOS 41 или 43.
  • Хотя есть некоторые онлайн-репозитории, такие какИнформация об OIDи OiDView, они не надежны. Обновляя их доступными OID иMIB-ыполностью на усмотрение производителя. Актуальная информация доступна только от производителей

... назовем только два.

По вышеупомянутым причинам просто невозможно иметь простую команду в духе query switch arp table. Кто-то создалКомандлет SNMP для PowerShell. Однако, как и любая другая реализация SNMP командной строки,требует знания доступных OID и того, как их использовать.

Связанный контент