diff --git a/user_channel/channel_mgmt.cpp b/user_channel/channel_mgmt.cpp
index 41b477d..5797a19 100644
--- a/user_channel/channel_mgmt.cpp
+++ b/user_channel/channel_mgmt.cpp
@@ -59,6 +59,8 @@
 static constexpr const char* dBusPropertiesInterface =
     "org.freedesktop.DBus.Properties";
 static constexpr const char* propertiesChangedSignal = "PropertiesChanged";
+static constexpr const char* interfaceAddedSignal = "InterfacesAdded";
+static constexpr const char* interfaceRemovedSignal = "InterfacesRemoved";
 
 // STRING DEFINES: Should sync with key's in JSON
 static constexpr const char* nameString = "name";
@@ -95,6 +97,12 @@
 std::unique_ptr<sdbusplus::bus::match_t> chPropertiesSignal
     __attribute__((init_priority(101)));
 
+std::unique_ptr<sdbusplus::bus::match_t> chInterfaceAddedSignal
+    __attribute__((init_priority(101)));
+
+std::unique_ptr<sdbusplus::bus::match_t> chInterfaceRemovedSignal
+    __attribute__((init_priority(101)));
+
 // String mappings use in JSON config file
 static std::unordered_map<std::string, EChannelMediumType> mediumTypeMap = {
     {"reserved", EChannelMediumType::reserved},
@@ -289,6 +297,8 @@
     if (signalHndlrObjectState)
     {
         chPropertiesSignal.reset();
+        chInterfaceAddedSignal.reset();
+        chInterfaceRemovedSignal.reset();
         sigHndlrLock.unlock();
     }
 }
@@ -347,6 +357,22 @@
                 processChAccessPropChange(path, props);
             });
         signalHndlrObjectState = true;
+
+        chInterfaceAddedSignal = std::make_unique<sdbusplus::bus::match_t>(
+            bus,
+            sdbusplus::bus::match::rules::type::signal() +
+                sdbusplus::bus::match::rules::member(interfaceAddedSignal) +
+                sdbusplus::bus::match::rules::argNpath(
+                    0, std::string(networkIntfObjectBasePath) + "/"),
+            [&](sdbusplus::message::message& msg) { loadChannelConfig(); });
+
+        chInterfaceRemovedSignal = std::make_unique<sdbusplus::bus::match_t>(
+            bus,
+            sdbusplus::bus::match::rules::type::signal() +
+                sdbusplus::bus::match::rules::member(interfaceRemovedSignal) +
+                sdbusplus::bus::match::rules::argNpath(
+                    0, std::string(networkIntfObjectBasePath) + "/"),
+            [&](sdbusplus::message::message& msg) { loadChannelConfig(); });
     }
 }
 
