Как найти MAC-адрес коммутатора, к которому я подключен?

17

На сервере Linux я пытаюсь найти MAC-адреса, о которых знает мой сервер. В частности, MAC-адрес порта коммутатора, к которому я подключен.

Это возможно?

Обновление: ответы ниже помогли мне. Мой коммутатор является управляемым коммутатором, однако, поскольку IP-адреса на моих хост-компьютерах были установлены на статический, коммутатор по какой-то причине не принимал MAC-адреса. Я изменил хосты на DCHP, что позволило моему коммутатору правильно подобрать MAC-адреса на подключенных портах после отправки запросов DHCP. Это позволило мне использовать таблицу MAC-адресов коммутаторов, чтобы выяснить, какие хосты были подключены к каким портам, и я вернул хосты статическим IP-адресам.

Damainman
источник
7
Почему порт коммутатора имеет MAC-адрес? Это не конечная точка связи - это ни источник, ни пункт назначения любого трафика Ethernet.
Дэвид Шварц
1
Некоторые управляемые коммутаторы имеют MAC-адрес для каждого порта или VLAN. Команда Cisco в ответе spuder покажет это.
Пол Гир
1
Дамианман, очень маловероятно, что DHCP против статических IP-адресов является причиной того, что ваш коммутатор не видит клиентские MAC-адреса. Фактически, если ваш коммутатор не видит MAC на уровне 2, он вообще не работает, потому что именно так и работает коммутатор. Проверка IP-адреса управления коммутатором с клиентского ПК (если они находятся в одной VLAN) - это все, что нужно коммутатору для просмотра MAC-адреса ПК в таблице ARP.
Пол Гир
1
@PaulGear Спасибо за дополнительный вклад. У моей хост-машины было 3 интерфейса с каждым в другой подсети, чем у моих коммутаторов, управляемых IP. Не совсем уверен, почему мой коммутатор не собирал mac-адреса, пока я не установил их на DHCP. Если я придумаю точный ответ, я отредактирую вышеизложенное.
Damainman

Ответы:

15

Если вам повезет, вы работаете умный выключатель , и это будет на самом деле иметь МАС - адрес.

В этом случае вы, вероятно, можете использовать LLDP. Установите lldpdна Linux, затем запустите:

michael:~$ lldpctl 
-------------------------------------------------------------------------------
LLDP neighbors:
-------------------------------------------------------------------------------
Interface:    eth0, via: LLDP, RID: 1, Time: 5 days, 22:33:31
  Chassis:     
    ChassisID:    mac 28:a6:8e:03:57:9b
    SysName:      core-pri
    SysDescr:     Netgear Gigabit Smart Switch
    MgmtIP:       10.0.0.38
    Capability:   Bridge, on
  Port:        
    PortID:       local g22
    PortDescr:    Not received
-------------------------------------------------------------------------------
MikeyB
источник
2
И снова, если вам повезет, коммутатор на самом деле будет работать с lldp.
Багамат
1
К счастью, lldpdпакет также поддерживает CDP и несколько других. W00t!
MikeyB
8

У коммутаторов вообще нет MAC-адресов; они работают на уровне ниже их (хотя они знают, каковы MAC-адреса подключенных к ним устройств).

Игнасио Васкес-Абрамс
источник
4
Все управляемые коммутаторы имеют MAC-адреса, иногда по одному на VLAN или по одному на порт; может быть хорошей идеей уточнить, что вы имеете в виду неуправляемые коммутаторы.
Пол Гир
7

Это зависит от того, к какому типу коммутатора вы подключены.

У немого коммутатора (обычно называемого неуправляемым коммутатором, который фактически является сетевым мостом) не будет MAC-адреса
. Управляемый коммутатор (иногда называемый интеллектуальным коммутатором) будет иметь MAC-адрес

Если коммутатор является управляемым коммутатором, и вы знаете его IP-адрес, выполните следующую команду на своем терминале. Затем просто сопоставьте IP-адрес с MAC-адресом.

arp -a

Если вы имеете дело с управляемым коммутатором с консольным портом, подключитесь с помощью консольного кабеля и введите следующую команду (при условии, что это коммутатор Cisco):

show mac address-table

http://www.techexams.net/forums/ccna-ccent/45578-mac-address-switch.html https://learningnetwork.cisco.com/thread/9625

spuder
источник
4
Пара проблем: немые коммутаторы очень редко называют сетевыми мостами (хотя это то, что они делают); Я бы предложил просто назвать их неуправляемыми коммутаторами. Команда arp будет работать только в том случае, если 1. ее IP-адрес управления находится в той же VLAN, и 2. ПК недавно связался с ней.
Пол Гир
Хорошо, я изменил свой ответ, чтобы сделать различие между управляемым и неуправляемым более четким. И вы правы насчет команды arp.
spuder