diff --git a/src/ethernet_interface.cpp b/src/ethernet_interface.cpp
index 1a2944e..7a6f4ea 100644
--- a/src/ethernet_interface.cpp
+++ b/src/ethernet_interface.cpp
@@ -7,9 +7,11 @@
 #include "system_queries.hpp"
 #include "util.hpp"
 
+#include <fcntl.h>
 #include <linux/rtnetlink.h>
 #include <net/if.h>
 #include <net/if_arp.h>
+#include <sys/stat.h>
 
 #include <phosphor-logging/elog-errors.hpp>
 #include <phosphor-logging/lg2.hpp>
@@ -799,6 +801,8 @@
         stdplus::fromStr<stdplus::EtherAddr>(MacAddressIntf::macAddress());
     if (newMAC != oldMAC)
     {
+        auto path = config::pathForIntfConf(manager.get().getConfDir(),
+                                            interface);
         // Update everything that depends on the MAC value
         for (const auto& [_, intf] : manager.get().interfaces)
         {
@@ -810,9 +814,10 @@
         MacAddressIntf::macAddress(validMAC);
 
         writeConfigurationFile();
-        manager.get().addReloadPreHook([interface]() {
+        manager.get().addReloadPreHook([interface, path]() {
             // The MAC and LLADDRs will only update if the NIC is already down
             system::setNICUp(interface, false);
+            utimensat(AT_FDCWD, path.c_str(), NULL, 0);
         });
         manager.get().reloadConfigs();
     }
