NetDoc.pl — monitoring i utrzymanie sieci. Piszemy o sprzęcie, który sami uruchamiamy i mierzymy.

Sieć UniFi

Dwa źródła o jednym switchu,
i żadne nie wystarcza

Kontroler wie, ile prądu bierze każdy port. Nie wie, jak nazywa się urządzenie po drugiej stronie kabla. SNMP na tym samym switchu wie odwrotnie. Mapę połączeń zbudujesz dopiero z obu.

Pola z nazwą sąsiada nie ma — nie jest puste, po prostu go nie ma

Kontroler UniFi oddaje w jednym zapytaniu tabelę sąsiadów z protokołu LLDP. Dostajesz z niej adres sprzętowy urządzenia po drugiej stronie i etykietę jego portu. Nazwy nie dostajesz w żadnej postaci.

To ważniejsze rozróżnienie, niż wygląda. Puste pole daje nadzieję, że kiedyś się wypełni — a wtedy warto po nie sięgać co jakiś czas. Pola, którego nie ma, nie wypełni nic.

Sprawdziliśmy to na wszystkich wpisach naraz, 7 września 2026. Dziewięciu sąsiadów na dwóch switchach, dwa warianty zestawu pól:

Ile wpisówJakie pola ma wpis o sąsiedzie
5chassis_id, is_wired, local_port_idx, local_port_name, port_id
4to samo plus chassis_id_subtype

W żadnym wariancie nie ma pola z nazwą. Dziewięć wpisów, zero nazw, zero pól na nazwę.

Dlaczego pytamy o zestaw pól, a nie o wartość. Kod, który czyta wpis.get("system_name", ""), dostanie pusty napis niezależnie od tego, czy pole jest puste, czy nie istnieje. Oba przypadki wyglądają tak samo — a znaczą co innego. Pytanie o klucze zamiast o wartość rozstrzyga to w jednym przebiegu.

Ten sam switch, druga droga — i nazwy są

Switch zna nazwę sąsiada. Po prostu nie oddaje jej przez API kontrolera. Oddaje ją przez SNMP, w gałęzi LLDP-MIB (1.0.8802.1.1.2).

Na switchu 24-portowym ta gałąź ma 798 identyfikatorów. Zestawienie obu źródeł po adresie sprzętowym, pomiar 6 września 2026:

PortAdres sprzętowy sąsiadaNazwa — tylko SNMPPobór PoE — tylko API
2d0:21:f9:85:54:85Brama-GW0,00 W
42c:33:11:80:7c:f8AP2C33-1180-7CF811,80 W
500:90:e8:62:bf:edNP5210A_96830,00 W
148c:94:1f:fc:15:44AP8C94-1FFC-15449,70 W
1810:b3:d6:73:b3:5aAP10B3-D673-B35A13,80 W

Sąsiadów w API: 5. Nazw w API: 0. Nazw odnalezionych w SNMP: 5.

Nazwy własne naszych obiektów zastępujemy w tekście neutralnymi — tu Brama-GW. Liczby, adresy sprzętowe i numery portów są oryginalne, prosto z pomiaru.

W drugą stronę działa to tak samo źle

Gałąź POWER-ETHERNET-MIB (1.3.6.1.2.1.105) na tym switchu nie istnieje — agent odpowiada, że takiego obiektu nie ma. Poboru mocy po SNMP nie odczytasz. API podaje go port po porcie.

Kto czyta tylko API, nie ma nazw. Kto czyta tylko SNMP, nie ma poboru mocy. Mapa połączeń z nazwami i obciążeniem portów wymaga zestawienia obu źródeł po adresie sprzętowym. To jedyny klucz, który występuje w obu.

Pobór PoE to wartość chwilowa i tak trzeba ją podawać

Ten sam port, trzy pomiary w odstępie dni. Nic się w sieci nie zmieniło.

Port24 sierpnia6 września7 września
410,80 W11,80 W10,80 W
1813,40 W13,80 W13,30 W

Różnica sięga watu. Punkt dostępowy bierze tyle, ile w danej chwili potrzebuje — liczba klientów i ruch zmieniają pobór w czasie rzeczywistym.

Jeśli budujesz na tym alarm, nie stawiaj progu na pojedynczym odczycie. Odczyt niższy o wat nie znaczy, że port słabnie. Znaczy, że akurat mniej się dzieje.

Jak zestawić oba źródła

Kluczem jest adres sprzętowy sąsiada. Występuje w obu źródłach i w obu identyfikuje to samo urządzenie.

  1. Z API weź tabelę sąsiadów każdego switcha. Dostajesz adres sprzętowy urządzenia po drugiej stronie i numer portu lokalnego.
  2. Z API weź tabelę portów tego samego switcha i dopasuj po numerze portu. Stamtąd bierze się pobór mocy.
  3. Z SNMP weź gałąź LLDP i zbuduj odwzorowanie adres sprzętowy → nazwa.
  4. Złącz jedno z drugim po adresie sprzętowym.

Po czym poznasz, że wyszło: każdy wiersz ma komplet — port, adres, nazwę i pobór. Wiersz bez nazwy znaczy, że sąsiad nie rozgłasza jej przez LLDP, a nie że zestawienie się nie udało. Warto te dwa przypadki rozdzielić w kodzie, bo mylą się przy pierwszej awarii.

Przed pomiarem sprawdź, czy SNMP w ogóle jest włączony. W kontrolerze to osobne ustawienie i domyślnie bywa wyłączone. Wyłączony agent nie odpowiada — a milczenie wygląda wtedy tak samo jak brak gałęzi w urządzeniu.

Czego nie zmierzyliśmy

Ta lista jest częścią materiału. Wyznacza granicę tego, co wolno twierdzić.

  • Innych modeli switchy. Zdanie o braku gałęzi z poborem mocy dotyczy tego modelu i tego wydania oprogramowania. Na innym switchu ta gałąź może istnieć.
  • SNMP w wersji 3. Mierzyliśmy przy wersji 2c. Wersja 3 jest w tym kontrolerze osobnym przełącznikiem i była wyłączona.
  • Czy nazwa w SNMP bierze się z konfiguracji sąsiada, czy z adopcji. Widzimy nazwę, nie wiemy, kto ją tam wpisał. Przy sprzęcie obcego producenta może jej nie być wcale.
  • Zachowania przy kilku witrynach. Nasza instalacja ma jedną.

Skąd brać dane o topologii i czym się logować, opisujemy w osobnym artykule o topologii oraz w tekście o czytaniu całej floty jednym zapytaniem.