
У меня есть соединение на двух интерфейсах. Я хочу проверить избыточность коммутатора, получив имя хоста (или IP) коммутатора, к которому подключен данный интерфейс.
В настоящее время я проверяю это с помощью следующей команды (MAC указан для проверки, а не просто в качестве примера):
tcpdump -vv -s0 -i ethX ether host 01:00:0c:cc:cc:cc
Есть ли другие решения для мониторинга?
Приветствие
решение1
Используют ли коммутаторы какой-либо протокол обнаружения (LLDP, CDP и т. д.)? Если да, то вы можете использовать этот протокол для опроса сети, поиска соседей и т. д.
решение2
Вы можете путать коммутатор с маршрутизатором. Тем не менее, некоторые коммутаторы достаточно умны и транслируют по крайней мере некоторую информацию. Вы не сможете надежно получить имя хоста, но вы все равно можете получить "что-то". Например, если ваши коммутаторы используют протокол связующего дерева, вы можете использовать tcpdump, а затем подтвердить, что "идентификатор моста" на обоих портах содержит разные MAC-адреса.
решение3
Если у вас есть доступ к коммутаторам через CLI, разве вы не можете просто запросить у коммутаторов список портов/таблиц MAC-адресов?
например на Cisco -show mac-address | i 01:00:0c:cc:cc:cc
Если вы просто хотите увидеть статус вашего связанного соединения, выполните:
cat /proc/net/bonding/bond0
Должен быть выведен:
Ethernet Channel Bonding Driver: v3.4.0-1 (October 7, 2008)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2 (0)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0
802.3ad info
LACP rate: slow
Active Aggregator Info:
Aggregator ID: 2
Number of ports: 2
Actor Key: 17
Partner Key: 17476
Partner Mac Address: 00:1f:28:04:69:c0
Slave Interface: eth0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 2
Permanent HW addr: 00:26:55:31:db:32
Aggregator ID: 2
Slave Interface: eth1
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 2
Permanent HW addr: 00:26:55:31:db:34
Aggregator ID: 2