diff --git a/src/types.cpp b/src/types.cpp
index 0d642e5..12a4363 100644
--- a/src/types.cpp
+++ b/src/types.cpp
@@ -96,6 +96,17 @@
 
 } // namespace phosphor::network::detail
 
+std::size_t std::hash<in_addr>::operator()(in_addr addr) const noexcept
+{
+    return std::hash<decltype(addr.s_addr)>{}(addr.s_addr);
+}
+
+std::size_t std::hash<in6_addr>::operator()(in6_addr addr) const noexcept
+{
+    return phosphor::network::hash_multi(addr.s6_addr32[0], addr.s6_addr32[1],
+                                         addr.s6_addr32[2], addr.s6_addr32[3]);
+}
+
 std::string std::to_string(ether_addr value)
 {
     return string(phosphor::network::detail::AddrBufMaker<ether_addr>{}(value));
diff --git a/src/types.hpp b/src/types.hpp
index 53619ea..342c8cc 100644
--- a/src/types.hpp
+++ b/src/types.hpp
@@ -156,6 +156,18 @@
     }
 };
 
+template <>
+struct std::hash<in_addr>
+{
+    std::size_t operator()(in_addr addr) const noexcept;
+};
+
+template <>
+struct std::hash<in6_addr>
+{
+    std::size_t operator()(in6_addr addr) const noexcept;
+};
+
 namespace fmt
 {
 template <>
