diff --git a/airoha/base-files/etc/hotplug.d/proto/10-vxlan b/airoha/base-files/etc/hotplug.d/proto/10-vxlan
new file mode 100755
index 0000000000000000000000000000000000000000..23bc38bdb8749c202aa2357d638ade3b978ff975
--- /dev/null
+++ b/airoha/base-files/etc/hotplug.d/proto/10-vxlan
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+[ "$PROTOCOL" = "vxlan" -o "$PROTOCOL" = "vxlan6" ] || exit 0
+[ "$ACTION" = "pre-setup" ] || exit 0
+
+if [ -e /proc/tc3162/hwnat_npu_vxlan_offload_shortcut ]; then
+	echo 1 > /proc/tc3162/hwnat_npu_vxlan_offload_shortcut
+fi
+
+if [ -e /proc/tc3162/hwnat_npu_offload_proto ]; then
+	echo 1 > /proc/tc3162/hwnat_npu_offload_proto
+fi
+
+/userfs/bin/ppemgr vxlan_hash enable