Uživatelská příručka sjednocených modulárních automatizačních nástrojů YumaWorks YumaPro yp-snmp YANG
Předmluva
Právní prohlášení
- Copyright 2009 – 2012, Andy Bierman, všechna práva vyhrazena.
- Copyright 2012 – 2022, YumaWorks, Inc., Všechna práva vyhrazena.
Další zdroje
Tento dokument předpokládá, že jste úspěšně nastavili software, jak je popsáno v tištěném dokumentu: YumaPro Installation Guide
Další dokumentace obsahuje:
- Rychlý průvodce YumaPro
- YumaPro uživatelská příručka
- Příručka YumaPro netconfd-pro
- Manuál YumaPro yangcli-pro
- YumaPro yangdiff-pro manuál
- YumaPro yangdump-pro manuál
- YumaPro Developer manuál
- Rychlý průvodce rozhraním YumaPro API
- Průvodce ypgnmi YumaPro
- YumaPro ypclient-pro manuál
- Průvodce API systému YumaPro yp
- Průvodce API YumaPro yp-show
- Rychlý průvodce YumaPro Yocto Linux
Chcete-li získat další podporu, můžete kontaktovat oddělení technické podpory YumaWorks: podpora@yumaworks.com
WEB Weby
- YumaWorks
- https://www.yumaworks.com
- Nabízí podporu, školení a poradenství pro YumaPro.
- Netconf Central
- http://www.netconfcentral.org/
- Bezplatné informace o NETCONF a YANG, tutoriály, on-line validace modulu YANG a databáze dokumentace
- Yang Central
- http://www.yang-central.org
- Bezplatné informace a návody na YANG, bezplatné nástroje YANG ke stažení
- Wiki stránka pracovní skupiny NETCONF
- http://trac.tools.ietf.org/wg/netconf/trac/wiki
- Bezplatné informace o aktivitách standardizace NETCONF a implementacích NETCONF
- Stavová stránka NETCONF WG
- http://tools.ietf.org/wg/netconf/
- Stav IETF internetového konceptu pro dokumenty NETCONF
- Domovská stránka libsmi
- http://www.ibr.cs.tu-bs.de/projects/libsmi/
- Bezplatné nástroje, jako je smidump, pro převod SMIv2 na YANG
Seznamy adresátů
- Pracovní skupina NETCONF
- https://mailarchive.ietf.org/arch/browse/netconf/
- Technické problémy související s protokolem NETCONF jsou diskutovány na konferenci NETCONF WG. Viz pokyny na https://www.ietf.org/mailman/listinfo/netconf pro připojení do seznamu adresátů.
- Pracovní skupina NETMOD
- https://datatracker.ietf.org/wg/netmod/documents/
- Technické problémy související s jazykem YANG a datovými typy YANG jsou diskutovány na konferenci NETMOD WG. Viz pokyny na WEB stránku pro připojení k seznamu adresátů.
Konvence použité v tomto dokumentu
V tomto dokumentu se používají následující konvence formátování:
Konvence dokumentace
Konvence |
Popis |
– foo | Parametr CLI foo |
XML parametr foo | |
foo | příkaz nebo parametr yangcli-pro |
$FOO | Proměnná prostředí FOO |
$$foo | yangcli-pro globální proměnná foo |
nějaký text | Example příkaz nebo PDU |
nějaký text | Prostý text |
|
Užitečné nebo rozšířené informace |
|
Varovné informace upozorňující na možné neočekávané vedlejší účinky |
Uživatelská příručka yp-snmp
Architektonické komponenty
Zavedení
yp-snmp umožňuje připojení protokolu SNMP (Simple Network Management Protocol) k dalším rozhraním netconfd-pro Northbound. Dělá to propojením s knihovnou Net-SNMP projektu Open Source. Tato uživatelská příručka popisuje, jak se používá funkce SNMP, jak převést moduly MIB na moduly YANG, instrumentovat je, nainstalovat je na server netconfd-pro a poté k nim přistupovat pomocí klientských nástrojů (agentů) SNMP.
Vlastnosti
The yp-snmp klient má následující vlastnosti:
- Zpracování paketů SNMP v rámci serveru netconfd-pro integrací zpracování paketů libnetsnmp v rámci serveru netconfd-pro (knihovna agentů).
- Zpracování požadavku SNMP GET
- Zpracování požadavku SNMP GETNEXT
- Zpracování požadavku SNMP GETBULK
- Asynchronní oznámení – zachycuje a informuje
- Podpora pro SNMPv3
- SNMP server netconfd-pro plně podporuje pouze moduly YANG, které byly převedeny z MIB pomocí nástroje smidump
SNMP SET není podporováno.
Budování podpory SNMP
Aby bylo možné propojit Net-SNMP s netconfd-pro, hlavička Net-SNMP files musí být nainstalován v systému, ve kterém stavíte server. Aby bylo možné spustit server netconfd-pro s podporou SNMP, musí být k dispozici snmpd i snmptrapd. Pro testování podpory SNMP by bylo užitečné mít nainstalované nástroje klienta (agenta), které poskytuje Net-SNMP, jako je snmpget, snmpwalk, snmpbulkget atd.
Následující pokyny nainstalují Net-SNMP a jeho klientské nástroje. POZNÁMKA: Existuje mnoho parametrů pro vytváření NetSNMP, toto je pouze jeden z nich. Další možnosti viz http://www.net-snmp.org/
Nejprve si stáhněte verzi Net-SNMP, kterou chcete používat. Následující instrukce používají net-snmp-5.7.3 jako příkladample. Tím se nainstalují binární soubory a hlavička .h fileje potřeba:
Když máte nainstalovaný Net-SNMP, můžete sestavit server. Použijte příznak WITH_SNMP=1 k sestavení netconfd-pro s podporou SNMP ze zdrojového kódu:
Chcete-li otestovat funkce klienta SNMP, GET, WALK atd., byl IF-MIB zahrnut a vytvořen jako serverová instrumentační knihovna (SIL) a budete muset sestavit a nainstalovat IF-MIB SIL. Z adresáře netconf:
Chcete-li spustit server netconfd-pro, měli byste jej spustit s parametry níže, abyste mohli vidět ladicí zprávy jako exampsoubory běží a také se vyhnete problémům se stávajícími konfiguracemi. Příkaz load-module načte dříve popsaný IF-MIB SIL:
POZNÁMKA: server musí být spuštěn na kořenové úrovni, protože používá omezené porty jako součást standardu SNMP.
snmpget example
K běhu snmpget proti načtenému IF-MIB SIL:
snmpwalk example
K běhu houpačka proti načtenému IF-MIB SIL:
snmpbulkget example
K běhu snmpbulkget proti načtenému IF-MIB SIL:
Pasti a informuje
POZNÁMKA: server aktuálně podporuje pouze depeše SNMP verze 2.
Chcete-li demonstrovat depeše SNMP, ujistěte se, že v souboru existuje následující řádek snmpd.conf file:
Ke sběru a zobrazení pastí lze použít následující aplikaci. Snmptrapd je aplikace SNMP, která přijímá a protokoluje zprávy SNMP TRAP a INFORM.
Chcete-li otestovat, zda je nastavení správné a zda příjem oznámení funguje, simulujte odeslání SNMP trapu z druhé relace terminálu pomocí následujícího příkazu, který odešle oznámení linkDown:
V okně terminálu serveru trap byste měli vidět:
Pokud to funguje, můžete testovat pomocí netconfd-pro.
Zabezpečení SNMP a SNMP v3
Tato část stručně popisuje bezpečnostní aspekty pro požadavky SNMP, konkrétně o ověřování a autorizaci. Mechanismus ověřování je zabudován do Net-SNMP
- Autentizace v SNMP verze 1 a 2c je zajištěna heslem (řetězcem komunity) zasílaným jako prostý text mezi manažerem a agentem.
- SNMP v3 definuje řadu funkcí souvisejících se zabezpečením. Počáteční specifikace definovaly USM a VACM, které byly později následovány modelem zabezpečení přenosu, který poskytoval podporu pro SNMPv3 přes SSH a SNMPv3 přes TLS a DTLS.
Netconfd-pro implementuje NACM (NETCONF Access Control Model) pro správu a řízení přístupu k YANG objektům podporovaným zařízením. Protože NACM již autorizaci poskytuje, musí být VACM při zpracování požadavků SNMP v3 zakázán. Více informací o konfiguraci a správě autentizace Net-SNMP je k dispozici on-line jako součást dokumentace Net-SNMP.
Konfigurace zabezpečení files
Net-SNMP využívá 2 konfigurace files kontrolovat jeho provoz a poskytované informace o řízení.
- /var/net-snmp/snmpd.conf – Tohle file obsahuje specifickou konfiguraci SNMP v3 související s povolenými uživatelskými jmény a hesly.
- /usr/local/share/snmp/snmpd.conf – Tohle file obsahuje obecné konfigurační informace včetně komunitních řetězců souvisejících s SNMP v1 a v2c, které provádějí základní ověřování. Pokud není nalezen v cestě zadané dříve, konfigurace file lze nalézt v /etc/yumapro/snmpd.conf.
Přidávání uživatele SNMP v3
Přidání nového uživatele SNMP v3 lze provést pomocí skriptů dostupných jako součást Net-SNMP, jak je uvedeno níže. Níže uvedený příkaz přidá uživatele „admin“ s ověřováním a ochranou soukromí. Autentizace využívá SHA a heslo pro autentizaci je „password1“. Podobně pro ochranu soukromí se používá DES a související heslo pro ochranu soukromí je „password2“.
Poznámka: Před spuštěním výše uvedeného příkazu musí být server netconfd-pro zastaven. Jakmile je výše uvedený příkaz spuštěn, lze znovu spustit netconfd-pro, který využije tuto aktualizovanou konfiguraci file.
Přidání uživatele SNMP v1/v2c
Jak již bylo zmíněno dříve, SNMP v1 a v2c využívají k ověřování komunitní řetězce. Povolené řetězce komunity spolu s přístupovými oprávněními se konfigurují v souboru snmpd.conf file. Tokeny, které řídí tyto parametry, jsou „rocommunity“ pro přístup pouze pro čtení a „rwcommunity“ pro přístup pro čtení a zápis.
Netconfd-pro se zapojuje do Net-SNMP
Server netconfd-pro vždy naslouchá na portu 161 a 162 pro požadavky agenta SNMP, když je server spuštěn s — with-snmp=true. Během bootování netconfd-pro vytvoří Trap Sinks a aktivuje netconfd-pro SNMP server. To zahrnuje:
- Konfigurace SNMP file rozebrat
- Registrace obslužné rutiny pro příchozí SNMP pakety. Toto je zpětné volání registrované pro příchozí pakety
- Registrace adresového bodu síťové služby (NSAP) v knihovně net snmp a nastavení relace agenta pro daný přenos. V tomto kroku netconfd-pro propojí knihovnu net-snmp a zaregistruje všechna potřebná zpětná volání a handlery, které budou použity pro zpracování paketů, vytvoření PDU a výstup odpovědí.
Poté server začne kontrolovat, zda existují nějaké zprávy SNMP ke zpracování. Kontroluje všechny pakety ze sítě. Pokud existují nějaké pakety ke zpracování, server zavolá rozhraní net-snmp API, aby je zpracoval.
Pro požadavky SNMP, např. snmpget na uzlu get2, server provede následující:
- Analyzujte příchozí paket (OID; typ požadavku, get, getnext atd.)
- Vyřešte typ interního požadavku SNMP, požadavek na indexovaném uzlu, zapnuto
- skalární bez jakýchkoli indexů atd., na základě typu požadavku server upraví rozlišení cílového objektu
- Poté se server buď pokusí najít nejlepší další OID a zopakuje stejné kroky, nebo přistoupí ke skutečnému načtení hodnoty
- Aby server získal hodnotu get2, zavolá zpětná volání get2 počínaje tabulkou cílového uzlu – cílový uzel bude vždy list.
Na základě výsledků zpětného volání server vytvoří nový PDU, který se má vrátit, nastaví návratovou hodnotu (hodnoty) pro požadovaný seznam Varbind v tomto PDU a odešle tento paket zpět agentovi.
U config true a virtuálních uzlů jsou všechny kroky stejné, kromě toho, že server nevolá zpětná volání get2, nejprve vyhledá požadovanou tabulku v databázi během zpracování cesty analýzy RESTCONF a poté je z této tabulky načtena nejlepší hodnota.
Yp-snmp – cesty zpráv NETCONF a SNMP
Diagram cest zpráv
Když jsou převedené moduly MIB načteny do serveru netconfd-pro, protokoly Northbound, jako je NETCONF, přistupují k datovým úložištím YANG obvyklým způsobem, tj. prostřednictvím cesty zprávy zbarvené červeně ve výše uvedeném diagramu. Jakákoli upozornění jsou řešena obvyklým způsobem.
Zprávy SNMP jsou zpracovávány procesem Net-SNMP a serverem netconfd pro se SIL, který poskytuje instrumentaci, tj. cesta zprávy, která je na obrázku výše vybarvena žlutě. Server generuje všechny potřebné depeše SNMP.
Vytvoření MIB Instrumentation
Chcete-li převést modul MIB na modul YANG a přidat kód SIL (Server Instrumentation Library), měli byste dodržet následující kroky. BývalýampNíže uvedený text používá IF-MIB. BývalýampVerze IF-MIB SIL je dodávána s YumaPro SDK.
- Převeďte vybraný modul MIB na modul YANG pomocí nástroje smidump z: https://www.ibr.cs.tu-bs.de/projects/libsmi/download.html?lang=de
- Převod byste měli ověřit pomocí yangdump-pro. Pokud chcete dodat další parametry yangdump-pro pro vaše prostředí, podívejte se do uživatelské příručky yumapro yangdump-manual.pdf nebo manuálových stránek.
- Zkopírujte jang filedo vaší pracovní složky.
- Spuštěním make_sil_dir_pro vygenerujte zdrojový kód instrumentace.
- Podle potřeby upravte kód přístrojového vybavení. Uvidíte tag které říkají „vložte kód xxx“. Proces převodu MIB na YANG vytváří smi:oid „xyz“ tags v modulu YANG pro listovou instrumentaci. Pouze listy se smi:oidem tag bude vidět z klienta SNMP. Viz následující část „Mapování SNMP na YANG“
- Jakmile skončíte s kódem přístrojového vybavení, zkompilujte kód pomocí.
- nainstalujte kód pomocí.
POZNÁMKA: „DEBUG=1“ je volitelný a používá se k povolení protokolování ladění.
Tím se nainstaluje vygenerovaná knihovna do systémové cesty pro načtení netconfd-pro.
Mapování SNMP na YANG
Pouze objekty YANG, které mají smi:oid „xyz“ tags bude viditelný pro netconfd-pro SNMP engine. Všechny ostatní objekty budou ignorovány a server oznámí, že žádný takový objekt neexistuje, nebo v případě snmpgetnext přeskočí na další objekt.
Datový model YANG nelze plně využít, pokud potřebuje reprezentovat MIB modul. Po konverzi MIB na YANG bude mít modul YANG několik omezení a některé běžné funkce a vlastnosti YANG budou serverem netconfd-pro buď ignorovány, nebo dokonce neplatné. Následující seznam ilustruje omezení:
- Seznam nebo kontejner nemusí mít číslo OID (smi:oid „xyz“ tags), protože nemusí mít analogii v modulech MIB;
- Obecná architektura pro modul YANG musí být vždy /container/list/leaf nebo /container/leaf v případě skalárních objektů. Neměly by existovat vnořené struktury, vnořená architektura. Přestože je server netcond-pro schopen zvládnout komplexní vnořenou architekturu, stále se nedoporučuje;
- Volba, příkazy případu a jejich koncové uzly jsou ignorovány a pro SNMP server netconfd-pro budou neviditelné;
- Pokud má objekt prohlášení „zastaralé“ nebo „stav“ není aktuální, např.: „zastaralý“, bude objekt ignorován;
- Leafref, augment, použití atd. mohou být přítomny v převedeném modulu YANG, ale musí se s nimi zacházet opatrně.
POZNÁMKA:
SNMP server netconfd-pro plně podporuje pouze moduly YANG, které byly převedeny z MIB pomocí nástroje smidump. I když je možné vytvořit stávající modul tak, aby byl kompatibilní se SNMP serverem, může to stát hodně úsilí a nemusí to být ani možné, protože bude nutné upravit datový model. Nedoporučuje se ručně převádět modul YANG na SNMP kompatibilní a problémy se serverem netconfd-pro související s tímto modulem nebudou podporovány.
Dokumenty / zdroje
![]() |
YumaWorks YumaPro yp-snmp Sjednocené modulární automatizační nástroje založené na YANG [pdfUživatelská příručka YumaPro yp-snmp, sjednocené modulární automatizační nástroje založené na YANG, sjednocené modulární automatizační nástroje založené na YANG, sjednocené modulární automatizační nástroje, modulární automatizační nástroje |