1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
|
============
Introduction
============
A Python library for representing and manipulating network addresses.
Provides support for:
Layer 3 addresses
- IPv4 and IPv6 addresses, subnets, masks, prefixes
- iterating, slicing, sorting, summarizing and classifying IP networks
- dealing with various ranges formats (CIDR, arbitrary ranges and globs, nmap)
- set based operations (unions, intersections etc) over IP addresses and subnets
- parsing a large variety of different formats and notations
- looking up IANA IP block information
- generating DNS reverse lookups
- supernetting and subnetting
Layer 2 addresses
- representation and manipulation MAC addresses and EUI-64 identifiers
- looking up IEEE organisational information (OUI, IAB)
- generating derived IPv6 addresses
Changes
-------
For details on the latest updates and changes, see :doc:`changes`
License
-------
This software is released under the liberal BSD license.
See the :doc:`license` and :doc:`copyright` for full text.
Dependencies
------------
- Python 2.5.x through 3.5.x
- IPython (for netaddr interactive shell)
Installation
------------
See :doc:`installation` for details.
Documentation
-------------
This library has comprehensive docstrings and a full set of project
documentation (including tutorials):
- http://pythonhosted.org/netaddr/
- http://readthedocs.org/docs/netaddr/en/latest/
Tests
-----
netaddr requires py.test (http://pytest.org/).
To run the test suite, clone the repository and run:
python setup.py test
If any of the tests fail, *please* help the project's user base by filing
bug reports on the netaddr issue tracker:
- http://github.com/drkjam/netaddr/issues
Finally...
----------
Share and enjoy!
|