diff --git a/net-mgmt/net-snmp/Makefile b/net-mgmt/net-snmp/Makefile index 7ff3a6ced..3a96ab597 100644 --- a/net-mgmt/net-snmp/Makefile +++ b/net-mgmt/net-snmp/Makefile @@ -1,5 +1,5 @@ PLUGIN_NAME= net-snmp -PLUGIN_VERSION= 0.1 +PLUGIN_VERSION= 0.2 PLUGIN_COMMENT= Net-SNMP is a daemon for the SNMP protocol PLUGIN_DEPENDS= net-snmp PLUGIN_MAINTAINER= m.muenz@gmail.com diff --git a/net-mgmt/net-snmp/src/opnsense/mvc/app/controllers/OPNsense/Netsnmp/forms/general.xml b/net-mgmt/net-snmp/src/opnsense/mvc/app/controllers/OPNsense/Netsnmp/forms/general.xml index fa72b365b..b50f93bfa 100644 --- a/net-mgmt/net-snmp/src/opnsense/mvc/app/controllers/OPNsense/Netsnmp/forms/general.xml +++ b/net-mgmt/net-snmp/src/opnsense/mvc/app/controllers/OPNsense/Netsnmp/forms/general.xml @@ -23,4 +23,12 @@ text Set the contact address to use. + + general.listen + + + select_multiple + true + Set the IP addresses the service should listen to. + diff --git a/net-mgmt/net-snmp/src/opnsense/mvc/app/models/OPNsense/Netsnmp/General.xml b/net-mgmt/net-snmp/src/opnsense/mvc/app/models/OPNsense/Netsnmp/General.xml index fef29b945..20a1e85b7 100644 --- a/net-mgmt/net-snmp/src/opnsense/mvc/app/models/OPNsense/Netsnmp/General.xml +++ b/net-mgmt/net-snmp/src/opnsense/mvc/app/models/OPNsense/Netsnmp/General.xml @@ -19,5 +19,9 @@ N + + , + N + diff --git a/net-mgmt/net-snmp/src/opnsense/service/templates/OPNsense/Netsnmp/snmpd.conf b/net-mgmt/net-snmp/src/opnsense/service/templates/OPNsense/Netsnmp/snmpd.conf index d9b18e14d..c5cd1b23a 100644 --- a/net-mgmt/net-snmp/src/opnsense/service/templates/OPNsense/Netsnmp/snmpd.conf +++ b/net-mgmt/net-snmp/src/opnsense/service/templates/OPNsense/Netsnmp/snmpd.conf @@ -1,8 +1,17 @@ {% if helpers.exists('OPNsense.netsnmp.general.enabled') and OPNsense.netsnmp.general.enabled == '1' %} -{% from 'OPNsense/Macros/interface.macro' import physical_interface %} - +{% if helpers.exists('OPNsense.netsnmp.general.listen') and OPNsense.netsnmp.general.listen != '' %} +{% for network in OPNsense.netsnmp.general.listen.split(',') %} +{% if ':' not in network %} +agentAddress udp:{{ network }}:161 +{% else %} +agentAddress udp6:[{{ network }}]:161 +{% endif %} +{% endfor %} +{% else %} agentAddress udp:161,udp6:[::1]:161 +{% endif %} + {% if helpers.exists('OPNsense.netsnmp.general.community') and OPNsense.netsnmp.general.community != '' %} rocommunity {{ OPNsense.netsnmp.general.community }}