diff --git a/net/vnstat/Makefile b/net/vnstat/Makefile
index 0993d08e6..d2d40d163 100644
--- a/net/vnstat/Makefile
+++ b/net/vnstat/Makefile
@@ -1,8 +1,7 @@
PLUGIN_NAME= vnstat
-PLUGIN_VERSION= 0.1
+PLUGIN_VERSION= 1.0
PLUGIN_COMMENT= vnStat is a console-based network traffic monitor
PLUGIN_DEPENDS= vnstat
PLUGIN_MAINTAINER= m.muenz@gmail.com
-PLUGIN_DEVEL= yes
.include "../../Mk/plugins.mk"
diff --git a/net/vnstat/src/opnsense/mvc/app/controllers/OPNsense/Vnstat/forms/general.xml b/net/vnstat/src/opnsense/mvc/app/controllers/OPNsense/Vnstat/forms/general.xml
index 6fe12c58e..cd1f8ded8 100644
--- a/net/vnstat/src/opnsense/mvc/app/controllers/OPNsense/Vnstat/forms/general.xml
+++ b/net/vnstat/src/opnsense/mvc/app/controllers/OPNsense/Vnstat/forms/general.xml
@@ -8,7 +8,7 @@
general.interface
- dropdown
+ select_multiple
Set the interface to listen on.
diff --git a/net/vnstat/src/opnsense/mvc/app/models/OPNsense/Vnstat/General.xml b/net/vnstat/src/opnsense/mvc/app/models/OPNsense/Vnstat/General.xml
index 43ad8cdc8..fa94d7dc0 100644
--- a/net/vnstat/src/opnsense/mvc/app/models/OPNsense/Vnstat/General.xml
+++ b/net/vnstat/src/opnsense/mvc/app/models/OPNsense/Vnstat/General.xml
@@ -9,6 +9,7 @@
N
+ Y
diff --git a/net/vnstat/src/opnsense/service/templates/OPNsense/Vnstat/vnstat b/net/vnstat/src/opnsense/service/templates/OPNsense/Vnstat/vnstat
index d81a43261..c04a95f78 100644
--- a/net/vnstat/src/opnsense/service/templates/OPNsense/Vnstat/vnstat
+++ b/net/vnstat/src/opnsense/service/templates/OPNsense/Vnstat/vnstat
@@ -1,6 +1,14 @@
{% if helpers.exists('OPNsense.vnstat.general.enabled') and OPNsense.vnstat.general.enabled == '1' %}
+{% from 'OPNsense/Macros/interface.macro' import physical_interface %}
vnstat_var_script="/usr/local/opnsense/scripts/OPNsense/Vnstat/setup.sh"
vnstat_enable="YES"
+{% if helpers.exists('OPNsense.vnstat.general.interface') and OPNsense.vnstat.general.interface != '' %}
+{% set interfaces = [] %}
+{% for interface in OPNsense.vnstat.general.interface.split(',') %}
+{% do interfaces.append(physical_interface(interface)) %}
+{% endfor %}
+vnstat_additional_ifaces="{{ interfaces|join(' ') }}"
+{% endif %}
{% else %}
vnstat_enable="NO"
{% endif %}
diff --git a/net/vnstat/src/opnsense/service/templates/OPNsense/Vnstat/vnstat.conf b/net/vnstat/src/opnsense/service/templates/OPNsense/Vnstat/vnstat.conf
index 1e7d33467..8745f976d 100644
--- a/net/vnstat/src/opnsense/service/templates/OPNsense/Vnstat/vnstat.conf
+++ b/net/vnstat/src/opnsense/service/templates/OPNsense/Vnstat/vnstat.conf
@@ -2,10 +2,14 @@
{% from 'OPNsense/Macros/interface.macro' import physical_interface %}
{% if helpers.exists('OPNsense.vnstat.general.interface') and OPNsense.vnstat.general.interface != '' %}
-# default interface
-Interface "{{ physical_interface(OPNsense.vnstat.general.interface) }}"
+{% set interfaces = [] %}
+{% for interface in OPNsense.vnstat.general.interface.split(',') %}
+{% do interfaces.append(physical_interface(interface)) %}
+{% endfor %}
+Interface {{ interfaces|join('+') }}
{% endif %}
+
# location of the database directory
DatabaseDir "/var/lib/vnstat"