diff --git a/Makefile.am b/Makefile.am
index 6035365..2125952 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -16,6 +16,7 @@
 
 phosphor_network_manager_SOURCES = \
 		ethernet_interface.cpp \
+		ipaddress.cpp \
 		network_manager.cpp \
 		network_manager_main.cpp \
 		xyz/openbmc_project/Network/VLAN/Create/server.cpp
diff --git a/ethernet_interface.cpp b/ethernet_interface.cpp
index 3fcb489..f4adf28 100644
--- a/ethernet_interface.cpp
+++ b/ethernet_interface.cpp
@@ -137,5 +137,11 @@
     }
     return macAddress;
 }
+
+void EthernetInterface::deleteObject(const std::string& ipaddress)
+{
+     //NOTE:- will be implemented in next commit.
+}
+
 }//namespace network
 }//namespace phosphor
diff --git a/ethernet_interface.hpp b/ethernet_interface.hpp
index 4c75f29..71a3003 100644
--- a/ethernet_interface.hpp
+++ b/ethernet_interface.hpp
@@ -54,6 +54,10 @@
                           const std::string& objPath,
                           bool dhcpEnabled);
 
+        /** @brief delete the dbus object of the given ipaddress.
+         */
+
+        void deleteObject(const std::string& ipaddress);
 
 
     private:
diff --git a/ipaddress.cpp b/ipaddress.cpp
new file mode 100644
index 0000000..3241102
--- /dev/null
+++ b/ipaddress.cpp
@@ -0,0 +1,38 @@
+#include "ipaddress.hpp"
+#include "ethernet_interface.hpp"
+
+#include <phosphor-logging/log.hpp>
+
+namespace phosphor
+{
+namespace network
+{
+
+using namespace phosphor::logging;
+
+IPAddress::IPAddress(sdbusplus::bus::bus& bus,
+          const char* objPath,
+          EthernetInterface& parent,
+          IP::Protocol type,
+          const std::string& ipaddress,
+          uint8_t prefixLength,
+          const std::string& gateway):
+          IPIfaces(bus, objPath, true),
+          parent(parent)
+{
+   this->address(ipaddress);
+   this->prefixLength(prefixLength);
+   this->gateway(gateway);
+   this->type(type);
+   // Emit deferred signal.
+   emit_object_added();
+}
+
+
+void IPAddress::delete_()
+{
+    parent.deleteObject(address());
+}
+
+}//namespace network
+}//namespace phosphor
