diff --git a/redfish-core/lib/ethernet.hpp b/redfish-core/lib/ethernet.hpp
index 53e21c5..31693e1 100644
--- a/redfish-core/lib/ethernet.hpp
+++ b/redfish-core/lib/ethernet.hpp
@@ -2416,6 +2416,12 @@
                             return;
                         }
 
+                        if (ipv4StaticAddresses)
+                        {
+                            handleIPv4StaticPatch(ifaceId, *ipv4StaticAddresses,
+                                                  ethData, ipv4Data, asyncResp);
+                        }
+
                         handleDHCPPatch(ifaceId, ethData, v4dhcpParms,
                                         v6dhcpParms, asyncResp);
 
@@ -2441,12 +2447,6 @@
                                                   asyncResp);
                         }
 
-                        if (ipv4StaticAddresses)
-                        {
-                            handleIPv4StaticPatch(ifaceId, *ipv4StaticAddresses,
-                                                  ethData, ipv4Data, asyncResp);
-                        }
-
                         if (staticNameServers)
                         {
                             handleStaticNameServersPatch(
