diff --git a/transporthandler.cpp b/transporthandler.cpp
index 056c3f5..0f9f8a3 100644
--- a/transporthandler.cpp
+++ b/transporthandler.cpp
@@ -992,8 +992,12 @@
                 return responseReqDataLenInvalid();
             }
             copyInto(netmask, bytes);
-            channelCall<reconfigureIfAddr4>(channel, std::nullopt,
-                                            netmaskToPrefix(netmask));
+            uint8_t prefix = netmaskToPrefix(netmask);
+            if (prefix < MIN_IPV4_PREFIX_LENGTH)
+            {
+                return responseInvalidFieldRequest();
+            }
+            channelCall<reconfigureIfAddr4>(channel, std::nullopt, prefix);
             return responseSuccess();
         }
         case LanParam::Gateway1:
@@ -1109,6 +1113,11 @@
             copyInto(ip, ipbytes);
             if (enabled)
             {
+                if (prefix < MIN_IPV6_PREFIX_LENGTH ||
+                    prefix > MAX_IPV6_PREFIX_LENGTH)
+                {
+                    return responseParmOutOfRange();
+                }
                 try
                 {
                     channelCall<reconfigureIfAddr6>(channel, set, ip, prefix);
diff --git a/transporthandler.hpp b/transporthandler.hpp
index 6c58dc5..c2940b4 100644
--- a/transporthandler.hpp
+++ b/transporthandler.hpp
@@ -158,6 +158,12 @@
 constexpr uint8_t MAX_IPV6_STATIC_ADDRESSES = 15;
 constexpr uint8_t MAX_IPV6_DYNAMIC_ADDRESSES = 15;
 
+// Prefix length limits of phosphor-networkd
+constexpr uint8_t MIN_IPV4_PREFIX_LENGTH = 1;
+constexpr uint8_t MAX_IPV4_PREFIX_LENGTH = 32;
+constexpr uint8_t MIN_IPV6_PREFIX_LENGTH = 1;
+constexpr uint8_t MAX_IPV6_PREFIX_LENGTH = 128;
+
 /** @brief The dbus parameters for the interface corresponding to a channel
  *         This helps reduce the number of mapper lookups we need for each
  *         query and simplifies finding the VLAN interface if needed.
