diff --git a/src/Database/Persist/Net/PostgreSQL.hs b/src/Database/Persist/Net/PostgreSQL.hs
--- a/src/Database/Persist/Net/PostgreSQL.hs
+++ b/src/Database/Persist/Net/PostgreSQL.hs
@@ -2,11 +2,11 @@
 --   from the @ip@ package. These instances only work for
 --   PostgresSQL. The following PostgreSQL column types are
 --   used for each data types:
---   
+--
 --   * 'IPv4': @inet@
 --   * 'Mac': @macaddr@
---   
-module Database.Persist.Net.PostgreSQL 
+--
+module Database.Persist.Net.PostgreSQL
   () where
 
 import Database.Persist
@@ -15,8 +15,7 @@
 
 import Data.Text (Text)
 import Data.Monoid
-import Net.IPv4 (IPv4)
-import Net.Mac (Mac)
+import Net.Types (IPv4,Mac)
 import qualified Data.Text as Text
 import qualified Net.IPv4.Text as IPv4Text
 import qualified Net.IPv4.ByteString.Char8 as IPv4ByteString
diff --git a/src/Database/Persist/Net/Simple.hs b/src/Database/Persist/Net/Simple.hs
--- a/src/Database/Persist/Net/Simple.hs
+++ b/src/Database/Persist/Net/Simple.hs
@@ -2,12 +2,12 @@
 
 -- | This module provides orphan instances for the typeclasses
 --   'PersistField' and 'PersistFieldSql'. The instances provided
---   are for the data types 'IPv4' and 'Mac' from the @ip@ package. 
---   These instances will choose the 
+--   are for the data types 'IPv4' and 'Mac' from the @ip@ package.
+--   These instances will choose the
 --   standard text type for the database column. If you are
---   using PostgreSQL, you may want to consider importing 
+--   using PostgreSQL, you may want to consider importing
 --   the @Database.Persist.Net.PostgreSQL@ module instead.
-module Database.Persist.Net.Simple 
+module Database.Persist.Net.Simple
   () where
 
 import Database.Persist
@@ -16,8 +16,7 @@
 
 import Data.Text (Text)
 import Data.Monoid
-import Net.IPv4 (IPv4)
-import Net.Mac (Mac)
+import Net.Types (IPv4, Mac)
 import qualified Data.Text as Text
 import qualified Net.IPv4.Text as IPv4Text
 import qualified Net.Mac.Text as MacText
diff --git a/src/Web/HttpApiData/Net.hs b/src/Web/HttpApiData/Net.hs
--- a/src/Web/HttpApiData/Net.hs
+++ b/src/Web/HttpApiData/Net.hs
@@ -6,8 +6,7 @@
 import Web.HttpApiData (ToHttpApiData(..),FromHttpApiData(..))
 import Data.Text (Text)
 import Data.Monoid
-import Net.IPv4 (IPv4)
-import Net.Mac (Mac)
+import Net.Types (IPv4,Mac)
 import qualified Data.Text as Text
 import qualified Net.IPv4.Text as IPv4Text
 import qualified Net.IPv4.ByteString.Char8 as IPv4ByteString
diff --git a/src/Web/PathPieces/Net.hs b/src/Web/PathPieces/Net.hs
--- a/src/Web/PathPieces/Net.hs
+++ b/src/Web/PathPieces/Net.hs
@@ -6,8 +6,7 @@
 import Web.PathPieces (PathPiece(..))
 import Data.Text (Text)
 import Data.Monoid
-import Net.IPv4 (IPv4)
-import Net.Mac (Mac)
+import Net.Types (IPv4,Mac)
 import qualified Net.IPv4.Text as IPv4Text
 import qualified Net.Mac.Text as MacText
 
diff --git a/src/Yesod/Form/Net.hs b/src/Yesod/Form/Net.hs
--- a/src/Yesod/Form/Net.hs
+++ b/src/Yesod/Form/Net.hs
@@ -1,6 +1,6 @@
  {-# LANGUAGE FlexibleContexts #-}
  {-# LANGUAGE OverloadedStrings #-}
-module Yesod.Form.Net 
+module Yesod.Form.Net
   ( ipv4Field
   , macField
   , NetFormMessage(..)
@@ -10,8 +10,7 @@
 import Yesod.Core
 import Yesod.Form.Fields
 import Yesod.Form.Types
-import Net.IPv4 (IPv4)
-import Net.Mac (Mac)
+import Net.Types (IPv4, Mac)
 import Data.Text (Text)
 import qualified Net.IPv4 as IPv4
 import qualified Net.IPv4.Text as IPv4Text
@@ -24,25 +23,25 @@
 
 englishNetFormMessage :: NetFormMessage -> Text
 englishNetFormMessage x = case x of
-  MsgInvalidIPv4 -> "Please enter an IPv4 address in dot decimal notation." 
+  MsgInvalidIPv4 -> "Please enter an IPv4 address in dot decimal notation."
   MsgInvalidMac -> "Please enter a valid MAC address."
 
 ipv4Field :: ( Monad m
-             , RenderMessage (HandlerSite m) NetFormMessage 
-             , RenderMessage (HandlerSite m) FormMessage 
+             , RenderMessage (HandlerSite m) NetFormMessage
+             , RenderMessage (HandlerSite m) FormMessage
              ) => Field m IPv4
 ipv4Field = mapField IPv4Text.encode from textField
-  where 
+  where
   from t = case IPv4Text.decode t of
     Nothing -> Left (SomeMessage MsgInvalidIPv4)
     Just ipv4 -> Right ipv4
 
 macField :: ( Monad m
-            , RenderMessage (HandlerSite m) NetFormMessage 
-            , RenderMessage (HandlerSite m) FormMessage 
+            , RenderMessage (HandlerSite m) NetFormMessage
+            , RenderMessage (HandlerSite m) FormMessage
             ) => Field m Mac
 macField = mapField MacText.encode from textField
-  where 
+  where
   from t = case MacText.decode t of
     Nothing -> Left (SomeMessage MsgInvalidMac)
     Just mac -> Right mac
@@ -50,9 +49,9 @@
 mapField :: Monad m => (a -> b) -> (b -> Either (SomeMessage (HandlerSite m)) a) -> Field m b -> Field m a
 mapField fwd bck (Field parse view enctype) = Field
   (\ts fis -> do
-     eres <- parse ts fis 
+     eres <- parse ts fis
      return $ eres >>= (\mb -> case mb of
-       Just b  -> Just <$> bck b 
+       Just b  -> Just <$> bck b
        Nothing -> Right Nothing)
   )
   (\a b c d e -> view a b c (fmap fwd d) e)
diff --git a/yesod-ip.cabal b/yesod-ip.cabal
--- a/yesod-ip.cabal
+++ b/yesod-ip.cabal
@@ -1,5 +1,5 @@
 name:                yesod-ip
-version:             0.4.1
+version:             0.5.0
 synopsis:            Code for using the ip package with yesod
 description:         Please see README.md
 homepage:            https://github.com/andrewthad/yesod-ip#readme
@@ -21,7 +21,7 @@
     Database.Persist.Net.PostgreSQL
     Web.PathPieces.Net
     Web.HttpApiData.Net
-  build-depends:       
+  build-depends:
       base >= 4.7 && < 5
     , text
     , yesod-core
@@ -29,7 +29,7 @@
     , persistent
     , path-pieces
     , http-api-data
-    , ip   >= 0.6.0 && < 0.7.0
+    , ip >= 0.8.1 && < 0.9
   default-language:    Haskell2010
 
 source-repository head
