У меня есть Dell 5424, к которому напрямую подключено около 20 машин. Я провел ping-сканирование своей сети (и получил ответы от всех 20), затем перешел к интерфейсу командной строки коммутатора и сделал show arp
. К моему удивлению, я вижу только две записи arp: одну для моего маршрутизатора и одну для машины, к которой я подключился по SSH для выполнения этой работы.
Что, черт возьми, здесь происходит? Дело не в том, что есть еще один переключатель, эти машины напрямую подключены к переключателю. Ошибочно ли я ожидал появления всех этих записей arp на моем коммутаторе?
Если я использую ping (machine)
из CLI MAC-адрес этой машины отображается на порту, который, как я ожидал, в таблице arp. Таймаут arp установлен на 3600, что мне кажется немного маленьким, но это значение по умолчанию для этого переключателя. Время между моим пингом и моим show arp
было намного ниже, чем это.
Если коммутатор не выполняет отслеживание ARP, ему не нужно заботиться об устройствах, которые напрямую не взаимодействуют с IP-адрес, которым он владеет.
Если бы это был маршрутизатор для подсети, то можно было бы разумно ожидать, что он будет иметь запись ARP для большинства узлов в сети (по крайней мере, тех, которые активно взаимодействуют вне подсети); так как это звучит не так, все, что ему нужно сделать, это отслеживать, какой MAC-адрес находится за каким портом, и отправлять каждый кадр на порт, который содержит этот MAC-адрес. Таблица MAC-адресов (преобразование MAC-адресов в порты) отделена от таблицы ARP (преобразование IP-адресов в MAC-адреса).
Как заявили Шейн и Аарон, таблица ARP - это таблица сопоставления IP-адресов и MAC-адресов, и она будет заполнена только записями для хостов, которые обменивались данными с коммутатором, а не для хостов, обменивающихся данными ЧЕРЕЗ коммутатор. Вам нужна таблица MAC-адресов, которая представляет собой таблицу сопоставления MAC-адресов и портов, которую коммутатор использует для пересылки кадров на правильный порт / хост.
Вероятно, вы хотите показывать MAC-адрес вместо show arp - arp - это отношение L3 (IP) к L2 (MAC) -адресам, и коммутатор обычно не заботится об IP-адресах (применяются некоторые предостережения, управление и т. Д.)
PowerConnect 3448:
SW version 1.0.1.13 ( date 20-Feb-2006 time 09:52:44 )
Boot version 1.0.0.12 ( date 04-Apr-2005 time 15:46:33 )
HW version 00.00.01
Это сработало для меня:
show bridge address-table vlan 1
Если вас особенно интересуют MAC-адреса, соответствующие IP-адресам в вашей сети, вы хотите ваш компьютер arp, а не коммутатора. Если это так, запустите arp -a
после проверки пинга. Как упоминалось в других ответах, коммутатор не заботится об IP-адресах хостов, которые общаются только через него.
Если у вас есть Linux-хост, ознакомьтесь с arp-scan
утилита.