diff --git a/dns/bind/Makefile b/dns/bind/Makefile
index 08fc3e7af..025638dbf 100644
--- a/dns/bind/Makefile
+++ b/dns/bind/Makefile
@@ -1,5 +1,5 @@
PLUGIN_NAME= bind
-PLUGIN_VERSION= 1.18
+PLUGIN_VERSION= 1.19
PLUGIN_COMMENT= BIND domain name service
PLUGIN_DEPENDS= bind916
PLUGIN_MAINTAINER= m.muenz@gmail.com
diff --git a/dns/bind/pkg-descr b/dns/bind/pkg-descr
index 5e7e6e27a..b92f8177f 100644
--- a/dns/bind/pkg-descr
+++ b/dns/bind/pkg-descr
@@ -8,6 +8,10 @@ necessary for asking and answering name service questions.
Plugin Changelog
================
+1.19
+
+* Add support for "Query Source [IP|IPv6]" options.
+
1.18
* Allow specifying multiple masters for slave zones
diff --git a/dns/bind/src/opnsense/mvc/app/controllers/OPNsense/Bind/forms/general.xml b/dns/bind/src/opnsense/mvc/app/controllers/OPNsense/Bind/forms/general.xml
index 05ea9fb72..da2938c35 100644
--- a/dns/bind/src/opnsense/mvc/app/controllers/OPNsense/Bind/forms/general.xml
+++ b/dns/bind/src/opnsense/mvc/app/controllers/OPNsense/Bind/forms/general.xml
@@ -33,6 +33,20 @@
textSet the port the service should listen to.
+
+ general.querysource
+
+ text
+ true
+ Specify the IPv4 address used as a source for outbound queries.
+
+
+ general.querysourcev6
+
+ text
+ true
+ Specify the IPv6 address used as a source for outbound queries.
+ general.transfersource
@@ -45,7 +59,7 @@
texttrue
- This determines which local address is bound to IPv6 TCP connections used to fetch zones transferred inbound by the server.
+ Specify the IPv6 address used as a source for zone transfers.general.forwarders
diff --git a/dns/bind/src/opnsense/mvc/app/models/OPNsense/Bind/General.xml b/dns/bind/src/opnsense/mvc/app/models/OPNsense/Bind/General.xml
index 455f87d3d..5d67e7931 100644
--- a/dns/bind/src/opnsense/mvc/app/models/OPNsense/Bind/General.xml
+++ b/dns/bind/src/opnsense/mvc/app/models/OPNsense/Bind/General.xml
@@ -27,6 +27,16 @@
YY
+
+ N
+ ipv4
+ N
+
+
+ N
+ ipv6
+ N
+ Nipv4
diff --git a/dns/bind/src/opnsense/service/templates/OPNsense/Bind/named.conf b/dns/bind/src/opnsense/service/templates/OPNsense/Bind/named.conf
index 7f8d5a708..376efe90f 100644
--- a/dns/bind/src/opnsense/service/templates/OPNsense/Bind/named.conf
+++ b/dns/bind/src/opnsense/service/templates/OPNsense/Bind/named.conf
@@ -22,6 +22,14 @@ options {
listen-on-v6 port {{ OPNsense.bind.general.port }} { {{ OPNsense.bind.general.listenv6.replace(',', '; ') }}; };
{% endif -%}
+{% if helpers.exists('OPNsense.bind.general.querysource') and OPNsense.bind.general.querysource != '' %}
+ query-source {{ OPNsense.bind.general.querysource }};
+{% endif -%}
+
+{% if helpers.exists('OPNsense.bind.general.querysourcev6') and OPNsense.bind.general.querysourcev6 != '' %}
+ query-source-v6 {{ OPNsense.bind.general.querysourcev6 }};
+{% endif -%}
+
{% if helpers.exists('OPNsense.bind.general.transfersource') and OPNsense.bind.general.transfersource != '' %}
transfer-source {{ OPNsense.bind.general.transfersource }};
{% endif -%}