diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,10 @@
 The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
 and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
 
+## 0.9.15
+### Changed
+- Update to support new `NetworkAddress` data structure from `haskoin-core`.
+
 ## 0.9.14
 ### Removed
 - No longer support storing peers in db as performance tradeoff doesn't justify it.
diff --git a/haskoin-node.cabal b/haskoin-node.cabal
--- a/haskoin-node.cabal
+++ b/haskoin-node.cabal
@@ -4,17 +4,17 @@
 --
 -- see: https://github.com/sol/hpack
 --
--- hash: f6f4cc1aa459333150ae2851ff4d584f487003e3ab00e26860d2a37cd896e044
+-- hash: 481a6b7e96adbb2518564c3c57025c502cfec831e0b7c0d9c4e6dc75507b8b7d
 
 name:           haskoin-node
-version:        0.9.14
+version:        0.9.15
 synopsis:       Haskoin Node P2P library for Bitcoin and Bitcoin Cash
 description:    Bitcoin and Bitcoin Cash peer-to-peer protocol library featuring headers-first synchronisation.
 category:       Bitcoin, Finance, Network
 homepage:       http://github.com/haskoin/haskoin#readme
 bug-reports:    http://github.com/haskoin/haskoin/issues
 author:         Jean-Pierre Rupp
-maintainer:     xenog@protonmail.com
+maintainer:     jprupp@protonmail.ch
 license:        PublicDomain
 license-file:   UNLICENSE
 build-type:     Simple
diff --git a/src/Network/Haskoin/Node/Manager.hs b/src/Network/Haskoin/Node/Manager.hs
--- a/src/Network/Haskoin/Node/Manager.hs
+++ b/src/Network/Haskoin/Node/Manager.hs
@@ -27,12 +27,8 @@
 import           Control.Monad.Reader
 import           Control.Monad.Trans.Maybe
 import           Data.Bits
-import qualified Data.ByteString             as B
-import           Data.Default
 import           Data.List
 import           Data.Maybe
-import           Data.Serialize              (Get, Put, Serialize)
-import           Data.Serialize              as S
 import           Data.Set                    (Set)
 import qualified Data.Set                    as Set
 import           Data.String.Conversions
@@ -48,7 +44,6 @@
 import           System.Random
 import           UnliftIO
 import           UnliftIO.Concurrent
-import           UnliftIO.Resource           as U
 
 -- | Monad used by most functions in this module.
 type MonadManager m = (MonadLoggerIO m, MonadReader ManagerReader m)
@@ -195,7 +190,7 @@
         "Received " <> cs (show n) <> " addresses from peer " <> s
     mgrConfDiscover <$> asks myConfig >>= \case
         True -> do
-            let sas = map (naAddress . snd) nas
+            let sas = map (hostToSockAddr . naAddress . snd) nas
             forM_ sas newPeer
         False ->
             $(logDebugS)
@@ -380,7 +375,7 @@
             nonce <- liftIO randomIO
             bb <- getBestBlock
             now <- round <$> liftIO getPOSIXTime
-            let rmt = NetworkAddress (srv net) sa
+            let rmt = NetworkAddress (srv net) (sockToHostAddress sa)
                 ver = buildVersion net nonce bb ad rmt now
             (inbox, p) <- newMailbox
             let pc pub =
diff --git a/test/Haskoin/NodeSpec.hs b/test/Haskoin/NodeSpec.hs
--- a/test/Haskoin/NodeSpec.hs
+++ b/test/Haskoin/NodeSpec.hs
@@ -134,7 +134,7 @@
                     , nodeConfDB = db
                     , nodeConfPeers = []
                     , nodeConfDiscover = True
-                    , nodeConfNetAddr = NetworkAddress 0 (SockAddrInet 0 0)
+                    , nodeConfNetAddr = NetworkAddress 0 (sockToHostAddress (SockAddrInet 0 0))
                     , nodeConfNet = net
                     , nodeConfEvents = (`sendSTM` node_inbox)
                     , nodeConfTimeout = 10
