Skip to main content

IP Tools

Project description

I have written my own python ip/subnet tool. It's for python2/3. Use theese methods to conver ip mask formats and to check if ip/subnet belong to other subnet. I made it partly for fun and to learn, so perhaps these are not the best, but they get the job done. Checking if ip belongs to subnet is actually about 20-30% faster, than with tools from netaddr module.

Instalation:

pip install iptoolsjj

Methods:

  • is_in_subnet : check if ip belongs to subnet
  • verify : check if ip or ip/netmask are valid
  • get_subnet_ip : get subnet ip for some ip/mask
  • mask255_to_dec : convert ip mask format
  • dec_to_mask255 : convert ip mask format

Import: (I use *, not worrying about namespace because its small script ):

from iptoolsjj import iptoolsjj

Examples:

Check if 192.168.10.10 is inside 192.168.10.0/22:

if iptoolsjj.is_in_subnet('192.168.10.10', '192.168.10.0/22'):
		print ('yes')

Verify if ip or ip with mask is in good format:

print(iptoolsjj.verify('192.168.1.22'))
print(iptoolsjj.verify('192.168.1.22/25','ip/mask'))
print(iptoolsjj.verify('192.168.1.22/255.255.255.128','ip/mask255'))

Get subnet ip for given ip address:

print(iptoolsjj.get_subnet_ip('191.123.1.36/27'))

Convert mask '255.255.255.240' to '28':

print(iptoolsjj.mask255_to_dec('255.255.255.240'))

Convert mask '28' to '['255', '255', '255', '240']' (normally it's list format):

print(iptoolsjj.dec_to_mask255(28))

or

print('.'.join(iptoolsjj.dec_to_mask255(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

iptoolsjj-1.2.3.tar.gz (3.8 kB view hashes)

Uploaded Source

Built Distribution

iptoolsjj-1.2.3-py3-none-any.whl (5.5 kB view hashes)

Uploaded Python 3

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