Python 3: create a list of possible ip addresses from a CIDR notation
Question: I have been handed the task of creating a function in python (3.1) that will
take a CIDR notation and return the list of possible ip addresses. I have
looked around python.org and found this:
<http://docs.python.org/dev/py3k/library/ipaddr.html>

but i haven't seen anything that will fill this need... I would be very
grateful for any assistance anyone cares to kick my way. thanks in advance.
:-)


Answer: If you aren't married to using the built-in module, there is a project called
[netaddr](http://code.google.com/p/netaddr/) that is the best module I have
used for working with IP networks.

Have a look at the [IP
Tutorial](http://code.google.com/p/netaddr/wiki/IPTutorial) which illustrates
how easy it is working with networks and discerning their IPs. Simple example:

    
    
    >>> from netaddr import IPNetwork
    >>> for ip in IPNetwork('192.0.2.0/23'):
    ...    print '%s' % ip
    ...
    192.0.2.0
    192.0.2.1
    192.0.2.2
    192.0.2.3
    ...
    192.0.3.252
    192.0.3.253
    192.0.3.254
    192.0.3.255
    

