diff --git a/Data/IP/Range.hs b/Data/IP/Range.hs
--- a/Data/IP/Range.hs
+++ b/Data/IP/Range.hs
@@ -11,11 +11,12 @@
 
 {-|
   A unified data for 'AddrRange' 'IPv4' and 'AddrRange' 'IPv6'.
+  To create this, use 'read' \"192.0.2.0/24\" :: 'IPRange'.
 -}
 
 data IPRange = IPv4Range { ipv4range :: AddrRange IPv4 }
              | IPv6Range { ipv6range :: AddrRange IPv6 }
-             deriving (Eq,Show)
+             deriving (Eq)
 
 ----------------------------------------------------------------
 --
@@ -28,7 +29,7 @@
   are essentially same information but contained for pre
   calculation.
 
-  To create this, use 'makeAddrRange' or 'read' \"192.0.2.0/24\" :: 'AddrRange' 'IPv4'
+  To create this, use 'makeAddrRange' or 'read' \"192.0.2.0/24\" :: 'AddrRange' 'IPv4'.
 -}
 data AddrRange a = AddrRange {
         -- |The 'addr' function returns an address from 'AddrRange'.
@@ -47,10 +48,25 @@
 instance Show a => Show (AddrRange a) where
     show x = show (addr x) ++ "/" ++ show (mlen x)
 
+instance Show IPRange where
+    show (IPv4Range ip) = show ip
+    show (IPv6Range ip) = show ip
+
 ----------------------------------------------------------------
 --
 -- Read
 --
+
+instance Read IPRange where
+  readsPrec _ = parseIPRange
+  
+parseIPRange :: String -> [(IPRange,String)]
+parseIPRange cs = 
+  case runParser ip4range cs of
+       (Just ip,rest) -> [(IPv4Range ip,rest)]
+       (Nothing,_) -> case runParser ip6range cs of
+                           (Just ip,rest) -> [(IPv6Range ip,rest)]
+                           (Nothing,_) -> error $ "parseIPRange" ++ cs
 
 instance Read (AddrRange IPv4) where
     readsPrec _ = parseIPv4Range
diff --git a/iproute.cabal b/iproute.cabal
--- a/iproute.cabal
+++ b/iproute.cabal
@@ -1,5 +1,5 @@
 Name:                   iproute
-Version:                1.1.0
+Version:                1.2.0
 Author:                 Kazu Yamamoto <kazu@iij.ad.jp>
 Maintainer:             Kazu Yamamoto <kazu@iij.ad.jp>
 License:                BSD3
@@ -31,4 +31,3 @@
 Source-Repository head
   Type:                 git
   Location:             git://github.com/kazu-yamamoto/iproute.git
-
