diff --git a/src/ethernet_interface.cpp b/src/ethernet_interface.cpp
index 9350ff7..b1ada82 100644
--- a/src/ethernet_interface.cpp
+++ b/src/ethernet_interface.cpp
@@ -1081,6 +1081,10 @@
     // We need to forcibly delete the interface as systemd does not
     deleteInterface(intf);
 
+    if (eth.ifIdx > 0)
+    {
+        eth.manager.interfacesByIdx.erase(eth.ifIdx);
+    }
     eth.manager.interfaces.erase(intf);
 }
 
diff --git a/src/network_manager.cpp b/src/network_manager.cpp
index c79c395..f69cd74 100644
--- a/src/network_manager.cpp
+++ b/src/network_manager.cpp
@@ -61,6 +61,7 @@
 {
     // clear all the interfaces first
     interfaces.clear();
+    interfacesByIdx.clear();
     for (auto& interface : system::getInterfaces())
     {
         config::Parser config(
@@ -71,7 +72,9 @@
         intf->createStaticNeighborObjects();
         intf->loadNameServers(config);
         intf->loadNTPServers(config);
-        this->interfaces.emplace(std::move(*interface.name), std::move(intf));
+        auto ptr = intf.get();
+        interfaces.emplace(std::move(*interface.name), std::move(intf));
+        interfacesByIdx.emplace(interface.idx, ptr);
     }
 }
 
diff --git a/src/network_manager.hpp b/src/network_manager.hpp
index ffac8ba..0f37134 100644
--- a/src/network_manager.hpp
+++ b/src/network_manager.hpp
@@ -127,6 +127,7 @@
     /** @brief Persistent map of EthernetInterface dbus objects and their names
      */
     string_umap<std::unique_ptr<EthernetInterface>> interfaces;
+    std::unordered_map<unsigned, EthernetInterface*> interfacesByIdx;
 
     /** @brief Get the routing table owned by the manager
      *
