Néhány éve küzdök egy hálózat monitorozós (+ sok egyebet is csináló) programmal ( ha valakit érdekel https://github.com/csikfer/lanview2 ).
Rendbe raktam benne a switch-ek VLAN konfigurációját lekérdező modult. És beletettem néhány ellenőrzést, mert jó pár switch-nél tapasztaltam (főleg a HPE 19xx sorozatok), hogy totál hülyeségeket is be lehet rajtuk állítani, ha az ember nem figyel. Eredmény a 76-ból 15-öt megfúj-olt. Kezdtem is keresni a hibát a programban, ennyi hiba nem lehet, de nem a program hibás (ill. nem igazán hibás), csak nem kezeli azokat a "sajátosságokat" amiket az SNMP válaszokba sikerült belecsempészni.
1. feature: HPE 1920 sorozat. A dot1qVlanStaticEgressPorts, dot1qVlanForbiddenEgressPorts és dot1qVlanStaticUntaggedPorts -által visszaadott bitmap-ekből kihagynak portokat. Nem állítom, hogy nincs abban logika (persze nem sok), hogy kihagyják azokat a portokat, ahol nincs értelmezve a VLAN, de így csúsznak az indexek, és infó az meg nincs erről (ha mégis, elárulhatná valaki, hogy hol), és így már nettó baromság (szerintem). Tehát kell a programba is egy olyan feature, amivel megadhatóak az elbaszott bitmap indexek.
2. feature: A ProCurve switch-ekben elvileg nem lehet olyat beállítani, hogy nincs untagged VLAN egy portra. Elvileg, de azért van ilyen. Az egyik porton nem volt untagged VLAN, de azért a PVID az 1 volt, amúgy ez a VLAN a portra forbidden volt. Itt már nem sok logikát látok a válaszban, de végül is érdektelen mennyi logikát látok benne, kezelni kell valahogy. A program ellenőrzi, hogy az untagged VLAN azonos-e a PVID-vel, ha nem, akkor fújól. Ezt le kell tudni tiltani, mert azért van ilyen. És mivel redundáns infó, meg mit tudom én más típus mit kavar, eleve letiltható lett a PVID lekérdezése, az egész switch-re vagy figyelembe vétele portonként. (Azt hiszem beleteszem a feature-k közé az untagged bitmap-ek figyelmen kívül hagyásának a lehetőségét is, mert mi van, ha a bitmap rossz, és a PVID-k a jók.)
3. feature: HPE V1910 sorozatnál a trunk portok hiányoznak a bitmap-ekből, illetve minden érték 0. Amúgy bazi hosszú bitmap-ek jönnek, de adat csak az első néhány byte-ban van, a többi nulla. A VLAN kiosztás a tag portok alapján kideríthető, de azért csessék meg!
4. feature: Ha be van állítva autentikáció a portokra (802.1x), akkor számomra értelmezhetetlen az SNMP által visszaadott VLAN kiosztás. Eddig ilyen nálam csak ProCurve switch-eken van, ott a CLI menüjében sem igazán értelmezhető a VLAN kiosztás, ill. azt felülírják az autentikációs beállítások, aminek persze az egész menüben semmi jele. Az autentikációs port beállítások spec. a programból is kimaradtak, ezzel majd kezdeni kéne valamit.
Csak ennyi, nekem nem tűnik úgy, hogy véresen komolyan veszik ezt az SNMP-t. Van, a strigula behúzható, tessék neki örülni. Arra azért kíváncsi vagyok, más gyártók is ennyire lazák-e? (Van egy sejtésem, hogy igen.)
Persze ez most fele akkora szívás sem volt, mint amikor az LLDP lekérdezéseket akartam rendbe rakni. Mindenki más infót küld, mindent máshogy értelmez, nem is igazán sikerült normálisan rendbe tenni.