diff --git a/net/wireguard/src/opnsense/mvc/app/controllers/OPNsense/Wireguard/forms/dialogEditWireguardClient.xml b/net/wireguard/src/opnsense/mvc/app/controllers/OPNsense/Wireguard/forms/dialogEditWireguardClient.xml
index dce665239..fcb68de33 100644
--- a/net/wireguard/src/opnsense/mvc/app/controllers/OPNsense/Wireguard/forms/dialogEditWireguardClient.xml
+++ b/net/wireguard/src/opnsense/mvc/app/controllers/OPNsense/Wireguard/forms/dialogEditWireguardClient.xml
@@ -43,4 +43,10 @@
text
Set port the endpoint listens to.
+
+ client.keepalive
+
+ text
+ Set persistent keepalive interval.
+
diff --git a/net/wireguard/src/opnsense/mvc/app/models/OPNsense/Wireguard/Client.xml b/net/wireguard/src/opnsense/mvc/app/models/OPNsense/Wireguard/Client.xml
index 9b841a113..1ae8c87e6 100644
--- a/net/wireguard/src/opnsense/mvc/app/models/OPNsense/Wireguard/Client.xml
+++ b/net/wireguard/src/opnsense/mvc/app/models/OPNsense/Wireguard/Client.xml
@@ -35,6 +35,12 @@
N
+
+ 1
+ 86400
+ Please specify a value between 1 and 86400.
+ N
+
diff --git a/net/wireguard/src/opnsense/service/templates/OPNsense/Wireguard/wireguard-server.conf b/net/wireguard/src/opnsense/service/templates/OPNsense/Wireguard/wireguard-server.conf
index c32a8585d..80bb05167 100644
--- a/net/wireguard/src/opnsense/service/templates/OPNsense/Wireguard/wireguard-server.conf
+++ b/net/wireguard/src/opnsense/service/templates/OPNsense/Wireguard/wireguard-server.conf
@@ -27,6 +27,9 @@ AllowedIPs = {{ peerlist2_data.tunneladdress }}
{% if peerlist2_data.serveraddress|default('') != '' %}
Endpoint = {{ peerlist2_data.serveraddress }}:{{ peerlist2_data.serverport }}
{% endif %}
+{% if peerlist2_data.keepalive|default('') != '' %}
+PersistentKeepalive = {{ peerlist2_data.keepalive }}
+{% endif %}
{% endif %}
{% endfor %}
{% endif %}