net-snmp podporuje protokoly rozšíření agentů smux i agentx, což umožňuje sub-agentům žít v různých procesech. Mají také výukový program pro psaní subagentů AgentX v C.
Často přehlíženým řešením je Agent++ API, které mi přijde docela pěkné a je pod licencí Apache. Pokud jsem pochopil, můžete tohoto agenta upravit tak, aby odpovídal vašim vlastním MIB.
To znamená, že dělat subagenta není tak špatná volba. Spustíte standardní neopravený snmpd (z net-snmp). Poté se k němu připojíte se svým subagentem, který přidá pouze ta OID, která chcete přidat. Sada net-snmp pro kódování sub-agentů AgentX (jak se protokol nazývá) není smrtelně jednoduchá na použití, ale ani příliš obtížná. K dispozici je také modul Perl pro vývoj sub-agentů:https://metacpan.org/pod/NetSNMP::agent
Tradičním způsobem, jak toho dosáhnout v linuxu, je použití balíčku net-snmp. Ujistěte se, že jste nejprve napsali MIB. Vše je založeno na MIB a změny MIB obvykle vedou k mnoha změnám v kódu. Kódování pro net-snmp není obtížné a existuje spousta dokumentace, která vám pomůže začít, např.:http://www.net-snmp.org/wiki/index.php/Tutorials#Coding_Tutorials