diff --git a/transporthandler.cpp b/transporthandler.cpp
index e112668..a3b3c35 100644
--- a/transporthandler.cpp
+++ b/transporthandler.cpp
@@ -1401,6 +1401,10 @@
         }
         case LanParam::IP:
         {
+            if (channelCall<getDHCPProperty>(channel))
+            {
+                return responseCommandNotAvailable();
+            }
             in_addr ip;
             std::array<uint8_t, sizeof(ip)> bytes;
             if (req.unpack(bytes) != 0 || !req.fullyUnpacked())
@@ -1460,6 +1464,10 @@
         }
         case LanParam::SubnetMask:
         {
+            if (channelCall<getDHCPProperty>(channel))
+            {
+                return responseCommandNotAvailable();
+            }
             in_addr netmask;
             std::array<uint8_t, sizeof(netmask)> bytes;
             if (req.unpack(bytes) != 0 || !req.fullyUnpacked())
@@ -1473,6 +1481,10 @@
         }
         case LanParam::Gateway1:
         {
+            if (channelCall<getDHCPProperty>(channel))
+            {
+                return responseCommandNotAvailable();
+            }
             in_addr gateway;
             std::array<uint8_t, sizeof(gateway)> bytes;
             if (req.unpack(bytes) != 0 || !req.fullyUnpacked())
