python ipy模块安装与使用方法

发布时间:2020-05-21编辑:脚本学堂
python ipy模块的用法,ipy模块的安装方法,一个自动识别IP地址、子网、方向解析、IP类型等信息的脚本。

IPy模块用于完成高效的IP规划工作。

1,python ipy模块安装
 

复制代码 代码示例:
#yum -y install python python-devel gcc gcc-c++
#wget http://www.mylinuxer.com/down/IPy-0.82a.tar.gz
#tar zxvf IPy-0.82a.tar.gz
#cd python-ipy-IPy-0.82a
#python setup.py install
#python
>>>from IPy import IP

2、ipy模块用法
 

>>> ip = IP(‘192.168.1.0/24′)
>>> ip.net() #取IP地址
>>>ip.netmask() #取值子网掩码
>>>ip.iptype() #查询为公网IP还是私网IP,公网为:PUBLIC,私网为:PRIVATE
>>>print(‘%s’ % ip.net())  #用print()打印出取值,”%s”意思为匹配”%”后面的字符串

一个自动识别IP地址、子网、方向解析、IP类型等信息的脚本
 

复制代码 代码示例:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from IPy import IP   ###加载模块
ip_s = raw_input(‘请输入IP地址或者网段地址: ‘)###输入一个IP地址或者网段
ips = IP(ip_s)   #定义元素
if len(ips) > 1:  #如果len出来的数字大于1,那么就是一个网段
print(‘网络地址: %s’ % ips.net())
print(‘子网掩码: %s’ % ips.netmask())
print(‘网络广播地址: %s’ % ips.reverseNames() [0])
print(‘网络子网数: %s’ % len(ips))
else:   ###否则就是一个地址
print(‘IP反向解析: %s’ % ips.reverseNames() [0])
print(‘十六进制地址: %s’ % ips.strHex())
print(‘二进制地址: %s’ % ips.strBin())
print(‘地址类型: %s’ % ips.iptype())

运行效果:
 

[root@mylinuxer python]# 192.168.1.0/24
-bash: 192.168.1.0/24: No such file or directory
[root@mylinuxer python]# python python.py

请输入IP地址或者网段地址: 192.168.1.0/24
网络地址: 192.168.1.0
子网掩码: 255.255.255.0
网络广播地址: 1.168.192.in-addr.arpa.
网络子网数: 256

[root@mylinuxer python]# python python.py
请输入IP地址或者网段地址: 192.168.1.1
IP反向解析: 1.1.168.192.in-addr.arpa.
十六进制地址: 0xc0a80101
二进制地址: 11000000101010000000000100000001
地址类型: PRIVATE

[root@mylinuxer python]# python python.py
请输入IP地址或者网段地址: 116.213.249.211
IP反向解析: 211.249.213.116.in-addr.arpa.
十六进制地址: 0x74d5f9d3
二进制地址: 01110100110101011111100111010011
地址类型: PUBLIC