Skip to main content

IP Subnet package

Project description

Jamaddr27 Python Package

This package Created by Jamison Emilio and packaged by Todd Albiston

Installation Python2.7.12 and above

pip install jamaddr27 

for python3.6 see jamaddr https://github.com/talbiston/jamaddr

Description:

Python Package adds functions to convert IP address or subnet masks to bits and bits back to IP address.

from jamaddr27 import JamAddr
ipbits = JamAddr.ip_to_bits("192.168.0.23")
ipbits

returns = '11000000101010000000000000010111'
from jamaddr27 import JamAddr
bitsip = JamAddr.bits_to_ip("11000000101010000000000000010111")
bitsip

returns = '192.168.0.23'

Of course you could also enter a subnet mask to convert to bits then do the same with its corresponding IP, then work out what the network ID or Broadcast IPs would be or use your imagination on what other use cases could be.

from jamaddr27 import JamAddr

def network_id(ip_cidr):

    ip, cidr = ip_cidr.split('/')
    ip_bits = JamAddr.ip_to_bits(ip)[:int(cidr)] + '0' * (32 - int(cidr))
    return '{}/{}'.format(JamAddr.bits_to_ip(ip_bits), cidr)

networkID = network_id("192.168.0.23/28")
print(networkID)

returns = 192.168.0.16/28

This example above is already included as a function in this package so you could just do the following, but you get the point.

from jamaddr27 import JamAddr

networkID = JamAddr.network_id("192.168.0.23/28")
print(networkID)

returns = 192.168.0.16/28

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jamaddr27-0.5.tar.gz (2.5 kB view hashes)

Uploaded Source

Built Distribution

jamaddr27-0.5-py2-none-any.whl (3.0 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page