diff -r eaae4008327d Lib/ipaddress.py --- a/Lib/ipaddress.py Tue Feb 04 09:49:14 2014 +0100 +++ b/Lib/ipaddress.py Tue Feb 04 13:00:59 2014 +0000 @@ -598,12 +598,14 @@ broadcast = int(self.broadcast_address) if n >= 0: if network + n > broadcast: - raise IndexError + raise IndexError('%d out of range 0..%d for %s' + % (n, self.num_addresses - 1, self)) return self._address_class(network + n) else: n += 1 if broadcast + n < network: - raise IndexError + raise IndexError('%d out of range -%d..-1 for %s' + % (n - 1, self.num_addresses, self)) return self._address_class(broadcast + n) def __lt__(self, other):